arrow
Return

Darwin: A DRAM-Based Multi-Level Processing-in-Memory Architecture for Column-Oriented Database

delete2024-01-01
delete0
PRE
AI
D
Donghyuk Kim
J
Jaeyoung Kim
W
Wontak Han
J
Jongsoon Won
H
Haerang Choi
Y
Yongkee Kwon
J
Joo-Young Kim
DOI:10.1109/TETC.2024.3493132delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
We propose Darwin, a practical LRDIMM-based multi-level Processing-in-memory (PIM) architecture for data analytics, which exploits the internal bandwidth of DRAM using the bank-, bank group-, chip-, and rank-level parallelisms. Considering the properties of data analytics operators and DRAM's area constraints, Darwin maximizes the internal bandwidth by placing the PIM processing units, buffers, and control circuits across the hierarchy of DRAM. Darwin supports a novel PIM instruction architecture that concatenates instructions for multiple thread executions on bank group processing entities, addressing the command bottleneck by enabling separate control of up to 512 different in-memory processing units simultaneously. We build a cycle-accurate simulation framework to evaluate Darwin with various DRAM configurations, optimization schemes and workloads. Darwin achieves up to 14.7× speedup over the non-optimized version, leveraging many optimization schemes. Darwin architecture achieves 4.0 × −43.9× higher throughput and reduces energy consumption by 85.7% than the baseline CPU system (Intel Xeon Gold 6226 + 4 channels of DDR4-2933) for essential data analytics operators. Compared to the state-of-the-art PIM, Darwin achieves up to 7.5× and 7.1× in the basic query operators and TPC-H queries, respectively. Darwin in GDDR6 configuration requires only 5.6% area overhead, suggesting a promising PIM solution for the future main memory system.
Keywords:
DRAM
processing-in-memory
data analytics

Journal

IEEE Transactions on Emerging Topics in Computing cover
IEEE Transactions on Emerging Topics in Computing
IF:
5.4
Papers:
1.1K
Citations:
3.4K

Organization