Affiliation:
1. Yonsei University, Seoul, Republic of Korea
2. Seoul National University, Seoul, Republic of Korea
Abstract
Modern dual in-line memory modules (DIMMs) support processing-in-memory (PIM) by implementing in-DIMM processors (IDPs) located near memory banks. PIM can greatly accelerate in-memory join, whose performance is frequently bounded by main-memory accesses, by offloading the operations of join from host central processing units (CPUs) to the IDPs. As real PIM hardware has not been available until very recently, the prior PIM-assisted join algorithms have relied on PIM hardware simulators which assume fast shared memory between the IDPs and fast inter-IDP communication; however, on commodity PIM-enabled DIMMs, the IDPs do not share memory and demand the CPUs to mediate inter-IDP communication. Such discrepancies in the architectural characteristics make the prior studies incompatible with the DIMMs. Thus, to exploit the high potential of PIM on commodity PIM-enabled DIMMs, we need a new join algorithm designed and optimized for the DIMMs and their architectural characteristics.
In this paper, we design and analyze Processing-In-DIMM Join (PID-Join), a fast in-memory join algorithm which exploits UPMEM DIMMs, currently the only publicly-available PIM-enabled DIMMs. The DIMMs impose several key challenges on efficient acceleration of join including the shared-nothing nature and limited compute capabilities of the IDPs, the lack of hardware support for fast inter-IDP communication, and the slow IDP-wise data transfers between the IDPs and the main memory. PID-Join overcomes the challenges by prototyping and evaluating hash, sort-merge, and nested-loop algorithms optimized for the IDPs, enabling fast inter-IDP communication using host CPU cache streaming and vector instructions, and facilitating fast rank-wise data transfers between the IDPs and the main memory. Our evaluation using a real system equipped with eight UPMEM DIMMs and 1,024 IDPs shows that PID-Join greatly improves the performance of in-memory join over various CPU-based in-memory join algorithms.
Publisher
Association for Computing Machinery (ACM)
Reference69 articles.
1. Massively parallel sort-merge joins in main memory multi-core database systems
2. Marco Antonio Zanata Alves , Carlos Villavieja , Matthias Diener , Francis Birck Moreira , and Philippe Olivier Alexandre Navaux . 2015 . SiNUCA: A Validated Micro-Architecture Simulator . In Proc. 17th International Conference on High Performance Computing and Communications (HPCC). Marco Antonio Zanata Alves, Carlos Villavieja, Matthias Diener, Francis Birck Moreira, and Philippe Olivier Alexandre Navaux. 2015. SiNUCA: A Validated Micro-Architecture Simulator. In Proc. 17th International Conference on High Performance Computing and Communications (HPCC).
3. Austin Appleby. 2011. MurmurHash. https://sites.google.com/site/murmurhash/ Austin Appleby. 2011. MurmurHash. https://sites.google.com/site/murmurhash/
4. JEDEC Solid State Technology Association. 2012. DDR4 SDRAM STANDARD. https://xdevs.com/doc/Standards/DDR4/JESD79--4%20DDR4%20SDRAM.pdf JEDEC Solid State Technology Association. 2012. DDR4 SDRAM STANDARD. https://xdevs.com/doc/Standards/DDR4/JESD79--4%20DDR4%20SDRAM.pdf
5. Multi-core, main-memory joins
Cited by
10 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. UM-PIM: DRAM-based PIM with Uniform & Shared Memory Space;2024 ACM/IEEE 51st Annual International Symposium on Computer Architecture (ISCA);2024-06-29
2. PID-Comm: A Fast and Flexible Collective Communication Framework for Commodity Processing-in-DIMM Devices;2024 ACM/IEEE 51st Annual International Symposium on Computer Architecture (ISCA);2024-06-29
3. Data Flow Architectures for Data Processing on Modern Hardware;2024 IEEE 40th International Conference on Data Engineering (ICDE);2024-05-13
4. MPC-Wrapper: Fully Harnessing the Potential of Samsung Aquabolt-XL HBM2-PIM on FPGAs;2024 IEEE 32nd Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM);2024-05-05
5. SwiftRL: Towards Efficient Reinforcement Learning on Real Processing-In-Memory Systems;2024 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS);2024-05-05