Beyond ¡the ¡Wall: ¡
Near-‑Data ¡Processing ¡for ¡Databases
1 HARVARD ¡UNIVERSITY
Sam ¡Xi, ¡Ore ¡Babarinsa, ¡Manos ¡Athanassoulis, ¡Stratos Idreos
Beyond the Wall: Near-Data Processing for Databases Sam Xi , - - PowerPoint PPT Presentation
Beyond the Wall: Near-Data Processing for Databases Sam Xi , Ore Babarinsa, Manos Athanassoulis , Stratos Idreos HARVARD UNIVERSITY 1 Memory Wall Memory Wall HARVARD
1 HARVARD ¡UNIVERSITY
Sam ¡Xi, ¡Ore ¡Babarinsa, ¡Manos ¡Athanassoulis, ¡Stratos Idreos
3 HARVARD ¡UNIVERSITY
Row ¡store Column ¡store
tuple tuple
4 HARVARD ¡UNIVERSITY
5 HARVARD ¡UNIVERSITY
6 HARVARD ¡UNIVERSITY
HARVARD ¡UNIVERSITY 7
HARVARD ¡UNIVERSITY 8
We ¡are ¡not ¡the ¡first ¡to ¡visit ¡this ¡pyramid!
Intelligent ¡RAM DIVA Logic-‑in-‑memory Terasys RADram
9 HARVARD ¡UNIVERSITY
HARVARD ¡UNIVERSITY 10
DRAM Logic Leakage Switching ¡speed
Low Slow High Fast
Fabrication ¡processes ¡are ¡incompatible
provided ¡consistent ¡performance ¡scaling ¡for ¡years
Metric Scaling ¡factor
Area 1/κ2 Delay 1/κ Power 1 Moore’s ¡Law. Dennard ¡scaling.
11 HARVARD ¡UNIVERSITY
Not ¡the ¡case ¡anymore!
HARVARD ¡UNIVERSITY 12
Ibex
Our ¡approach
HARP Q100 Widx
Intro NDP ¡for ¡data ¡systems: ¡Past ¡and ¡present The ¡architecture ¡of ¡JAFAR Experimental ¡results Conclusion
HARVARD ¡UNIVERSITY 13
…
Host ¡server Database Query
Lots ¡of ¡data
Many ¡rows ¡fail ¡the ¡ query ¡predicate ¡and ¡ are ¡discarded.
Filter ¡data ¡before ¡ it ¡is ¡sent ¡to ¡CPU.
14 HARVARD ¡UNIVERSITY
DRAM
JAFAR
CPU CPU CPU CPU System ¡bus ¡+ ¡memory ¡controller DRAM
JAFAR
15 HARVARD ¡UNIVERSITY
Last ¡level ¡cache
Rank
Sense ¡Amps Sense ¡Amps
Bank ¡0 Bank ¡0 Bank ¡0
Sense ¡Amps Sense ¡Amps
Bank ¡0
Row ¡address ¡decoder
Column ¡address ¡decoder
Chip
16 HARVARD ¡UNIVERSITY
Sense ¡Amps Sense ¡Amps
Bank ¡0 Bank ¡0 Bank ¡0
Sense ¡Amps Sense ¡Amps
Bank ¡0
Row ¡address ¡decoder
Column ¡address ¡decoder
Rank Array ¡0 Array ¡1 Array ¡2 Array ¡3
Bank
Rank
17 HARVARD ¡UNIVERSITY
DRAM
JAFAR
CPU CPU CPU CPU System ¡bus ¡+ ¡memory ¡controller DRAM
JAFAR
18 HARVARD ¡UNIVERSITY
Last ¡level ¡cache
Sense ¡Amps Sense ¡Amps
Bank ¡0 Bank ¡0 Bank ¡0
Sense ¡Amps
Sense ¡Amps
Bank ¡0
JAFAR
IO ¡buffer
Memory ¡ access ¡ arbiter From ¡CPU RAS CAS
19 HARVARD ¡UNIVERSITY
Opcode Left Right Opcode
Comparison ¡is ¡true? page ¡offset ¡bitmask write ¡enable
From ¡IO ¡buffer Data ¡latch
ALU ALU
Page ¡offset ¡counter Output ¡buffer
20 HARVARD ¡UNIVERSITY
int errno = select_jafar( void* col_data, int range_low, int range_high, uint8_t*
size_t num_input_rows, size_t* num_output_rows); 21 HARVARD ¡UNIVERSITY
DRAM
JAFAR
DRAM
JAFAR
22 HARVARD ¡UNIVERSITY
CPU CPU CPU CPU System ¡bus ¡+ ¡memory ¡controller Last ¡level ¡cache
Fill ¡up ¡each ¡module ¡first
DRAM DRAM
JAFAR JAFAR
23 HARVARD ¡UNIVERSITY
CPU CPU CPU CPU System ¡bus ¡+ ¡memory ¡controller Last ¡level ¡cache
Interleave ¡data ¡across ¡modules
DRAM DRAM
JAFAR JAFAR
24 HARVARD ¡UNIVERSITY
CPU CPU CPU CPU System ¡bus ¡+ ¡memory ¡controller Last ¡level ¡cache
The ¡CPU ¡and ¡JAFAR ¡cannot ¡simultaneously ¡attempt ¡ to ¡access ¡memory. CPU ¡grants ¡JAFAR ¡ownership ¡to ¡a ¡DRAM ¡rank ¡for ¡a ¡ period ¡of ¡time. Possible ¡mechanism: ¡DRAM ¡mode ¡registers
25 HARVARD ¡UNIVERSITY
Simulation ¡framework
Out-‑of-‑order ¡CPU Classic ¡cache ¡model SimpleDRAM
26 HARVARD ¡UNIVERSITY
1M
In-‑house ¡column ¡store ¡ database 4 ¡million ¡rows ¡of ¡ unsorted ¡integers
Queries, ¡input ¡data, ¡and ¡database
select * from table where column < n ;
27 HARVARD ¡UNIVERSITY
28 HARVARD ¡UNIVERSITY
Scheduling ¡of ¡ownership ¡transfers ¡will ¡be ¡ important What ¡would ¡JAFAR’s ¡performance ¡look ¡like ¡ without a ¡scheduler?
29 HARVARD ¡UNIVERSITY
CPU
Idle ¡period JAFAR ¡can ¡execute Memory ¡requests Memory ¡requests
30 HARVARD ¡UNIVERSITY
31 HARVARD ¡UNIVERSITY
More ¡operators Aggregations Projections Sort Joins
32 HARVARD ¡UNIVERSITY
Data ¡types ¡and ¡layouts Row-‑stores ¡and ¡hybrids
Multiple ¡filters ¡per ¡row Efficient ¡projections
Variable ¡length ¡datatypes
Process ¡on ¡CPU?
33 HARVARD ¡UNIVERSITY
34 HARVARD ¡UNIVERSITY
HARVARD ¡UNIVERSITY 35
NDP ¡is ¡a ¡promising ¡solution ¡to ¡the ¡ memory ¡wall ¡for ¡data ¡systems. JAFAR ¡provides ¡up ¡to ¡9x ¡speedup ¡on ¡ simple ¡select ¡queries. JAFAR ¡is ¡built ¡on ¡an ¡extensible ¡ framework ¡for ¡accelerating ¡data ¡systems.
36 HARVARD ¡UNIVERSITY