PIM-Based Join Processing for DIMM-Compatible Data Acceleration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems face data bottlenecks and excessive power consumption due to the separation of memory and processor, and existing techniques for accelerating relational operations using PIM hardware are not compatible with the actual architecture of PIM-enabled DIMMs, necessitating a new join algorithm optimized for PIM-enabled DIMMs.

Innovation Solution

A PIM-based computing device that utilizes a PIM module with a memory processor to perform global partitioning of data sets, implementing a rotate-and-stream (RnS) and unordered scatter-gather (USG) operations to optimize communication between dual in-line memory modules, and supports join operations like hash join, sort-merge join, and nest-loop join, maximizing throughput and compatibility with DIMM architecture.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is transferred between CPU and main memory using existing computing architecture, then data access is possible, but data bottleneck and excessive power consumption occur

Engineering Contradiction:
Improvedata access efficiencyVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent merges memory and processor operations by implementing PIM modules that perform join operations directly within the memory hierarchy. The PIM module combines storage functionality with computational capability, allowing data processing to occur where data resides, thereby eliminating the need for frequent data transfer between CPU and main memory and reducing associated power consumption.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces a new dimensional approach by adding computational layers within the memory hierarchy itself. Instead of the traditional single-dimension data transfer path between CPU and memory, the system adds intermediate computational stages at the PIM module level, creating a multi-dimensional processing architecture that reduces transfer distances and energy consumption.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If PIM hardware simulators and existing acceleration techniques are used, then join operation acceleration is achieved, but compatibility with actual PIM-enabled DIMM architecture is lost

Engineering Contradiction:
Improvejoin operation throughputVSAvoidarchitecture compatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent applies local quality by designing PIM module-specific join algorithms that are optimized for the actual DIMM architecture's local characteristics. The global partitioning strategy and inter-IDP communication protocols are tailored to match the specific memory bank organization, channel structure, and address mapping of PIM-enabled DIMMs, ensuring both high performance and architectural compatibility.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes key architectural parameters including data partitioning strategies, communication protocols between IDPs, and memory access patterns to align with the actual PIM-enabled DIMM specification. By adjusting these parameters to match the target architecture's capabilities and constraints, the system achieves both acceleration and compatibility simultaneously.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If global partitioning is performed by CPU, then data distribution is achieved, but communication efficiency between IDPs is suboptimal

Engineering Contradiction:
Improvedata distribution capabilityVSAvoidcommunication efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent introduces the PIM module as an intermediary that performs global partitioning operations locally within the memory subsystem. Instead of the CPU directly managing data distribution, the PIM module acts as an intermediate processor that handles partitioning and prepares data for efficient inter-IDP communication, reducing the communication overhead and improving overall system efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12386778B2PIM-based computing device for accelerating join operation
Publication Date: 2025.08.12 IND ACADEMIC COOP FOUND YONSEI UNIV
  • US12386778B2 patent drawing
  • US12386778B2 patent drawing
  • US12386778B2 patent drawing

AI summary

A processing-in-memory (PIM)-based computing device includes a main memory configured to store first and second data sets, a PIM module configured as an in-line memory module including a memory processor, a working memory, and a memory bank, the memory processor being connected to the working memory and performing a join operation on the first and second data sets loaded into the working memory, and a processor configured to form first and second channels with the main memory and the PIM module, import the first and second data sets through the first channel, and store the first and second data sets in the memory bank through the second channel.