PIMDAL: Mitigating the Memory Bottleneck in Data Analytics using a Real Processing-in-Memory System

📅 2025-04-02
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
Traditional CPU/GPU architectures face memory-bandwidth bottlenecks in database management system (DBMS) analytical operations—such as selection, aggregation, sorting, and joins—due to excessive data movement. This work presents the first systematic implementation and evaluation of a full suite of core analytical operators on real-world UPMEM Processing-in-Memory (PIM) hardware. To address PIM’s unique challenges—low computational density, explicit memory management, and limited inter-unit communication—we propose a holistic optimization framework comprising memory-aware algorithm design, fine-grained data layout optimization, and communication-coordinated execution. Leveraging low-level C/C++ development and hardware-level performance profiling, our optimized operators are integrated into end-to-end TPC-H queries. Across five representative queries, the average speedup reaches 3.9× over a high-end CPU, robustly demonstrating both the acceleration potential and engineering feasibility of data-centric architectures for real-world analytical workloads.

Technology Category

Application Category

📝 Abstract
Database Management Systems (DBMSs) are crucial for efficient data management and analytics, and are used in several different application domains. Due to the increasing volume of data a DBMS deals with, current processor-centric architectures (e.g., CPUs, GPUs) suffer from data movement bottlenecks when executing key DBMS operations (e.g., selection, aggregation, ordering, and join). This happens mostly due to the limited memory bandwidth between compute and memory resources. Data-centric architectures like Processing-in-Memory (PIM) are a promising alternative for applications bottlenecked by data, placing compute resources close to where data resides. Previous works have evaluated using PIM for data analytics. However, they either do not use real-world architectures or they consider only a subset of the operators used in analytical queries. This work aims to fully evaluate a data-centric approach to data analytics, by using the real-world UPMEM PIM system. To this end we first present the PIM Data Analytics Library (PIMDAL), which implements four major DB operators: selection, aggregation, ordering and join. Second, we use hardware performance metrics to understand which properties of a PIM system are important for a high-performance implementation. Third, we compare PIMDAL to reference implementations on high-end CPU and GPU systems. Fourth, we use PIMDAL to implement five TPC-H queries to gain insights into analytical queries. We analyze and show how to overcome the three main limitations of the UPMEM system when implementing DB operators: (I) low arithmetic performance, (II) explicit memory management and (III) limited communication between compute units. Our evaluation shows PIMDAL achieves 3.9x the performance of a high-end CPU, on average across the five TPC-H queries.
Problem

Research questions and friction points this paper is trying to address.

Addressing data movement bottlenecks in DBMS operations using PIM
Evaluating real-world UPMEM PIM system for full DB operator coverage
Overcoming UPMEM system limitations for high-performance data analytics
Innovation

Methods, ideas, or system contributions that make the work stand out.

Uses real-world UPMEM PIM system
Implements four major DB operators
Overcomes UPMEM system limitations
🔎 Similar Papers
No similar papers found.