Near-Memory Accelerator Offloads Pointer Chasing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Pointer chasing operations in modern programming languages lead to substantial bandwidth consumption and memory cache pollution due to frequent indirections, which slow down processors and increase cache misses, especially in workloads like garbage collection, big data, and graph analytics.
Innovation Solution
A near-memory accelerator offloads data traversal operations from the processing element by performing pointer chasing and fetching necessary data from memory, allowing the processing element to focus on computational tasks while reducing bandwidth usage and cache pollution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If pointer chasing operations are performed by the processing element, then data traversal can be completed, but bandwidth consumption increases and cache pollution occurs
Solution Approach 1:
The patent extracts the pointer chasing operations from the processing element and relocates them to a dedicated near-memory accelerator. This separation allows the processing element to focus on computational tasks while the accelerator handles memory traversal, thereby reducing bandwidth consumption and cache pollution caused by frequent pointer chasing operations.
Solution Approach 2:
The patent introduces a near-memory accelerator as an intermediary component between the processing element and the memory system. This mediator performs pointer chasing operations locally near the memory, reducing the need for high-bandwidth communication between the processing element and memory, thus lowering bandwidth consumption and cache pollution.
2Productivity
If pointer chasing operations are performed by the processing element, then data traversal can be completed, but system performance decreases due to cache misses
Solution Approach 1:
The patent extracts pointer chasing operations from the main processing element and assigns them to a specialized near-memory accelerator. This extraction reduces cache pollution and cache misses, thereby improving overall system processing speed while maintaining data traversal capability.
Solution Approach 2:
The patent replaces the general-purpose processing element's mechanical execution of pointer chasing with a specialized hardware accelerator optimized for memory proximity operations. This substitution reduces cache misses and improves processing speed by performing traversals closer to the memory without requiring full processor intervention.
3Ease of operation
If the processing element performs all operations including pointer chasing, then comprehensive control is maintained, but device complexity increases
Solution Approach 1:
The patent segments the system into two functional parts: the processing element that maintains control and issues commands, and the near-memory accelerator that executes pointer chasing operations. This segmentation reduces the processing element's workload and complexity while maintaining comprehensive control through command issuance and result reception.
Solution Approach 2:
The patent enables the near-memory accelerator to autonomously perform pointer chasing operations without requiring continuous intervention from the processing element. The accelerator services itself by independently executing traversal operations, reducing the processing element's complexity while maintaining control through initial command issuance.
Data Source
AI summary
Embodiments include a near-memory acceleration method for offloading data traversal operations from a processing element. The method is implemented at a near-memory accelerator configured to interact with each of the processing element and a memory used by the processing element. The accelerator performs the data traversal operations to chase pointers, in order to identify a pointer to data to be processed by the processing element. The data traversal operations are performed based on indications from the processing element. In addition, data needed to perform the data traversal operations are fetched by the near-memory accelerator, from the memory. The present invention is further directed to a near-memory accelerator and a computerized system comprising such an accelerator, as well as a computer program product.


