Memory Shapes Multidimensional Allocation PIM Performance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current memory allocation methods are limited to one-dimensional physical organization, which degrades the performance of Processing-In-Memory (PIM) devices due to the inability to co-locate data elements in the same physical memory component, leading to suboptimal system performance.
Innovation Solution
Implementing a multidimensional, contiguous physical allocation of memory, referred to as 'memory shapes,' where users can define the dimensional structure and layout, allowing for co-location of data items within a single physical memory component, thereby enhancing data locality and reducing communication between memory banks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If one-dimensional physical memory allocation is used, then memory allocation simplicity is maintained, but data locality and PIM device performance deteriorate
Solution Approach 1:
The patent transitions from one-dimensional linear memory allocation to multidimensional memory allocation (2D, 3D, or higher dimensions). This allows data elements to be organized in rows, columns, or blocks across multiple memory banks, enabling co-location of related data in the same physical memory component while maintaining simplified allocation through the memory shape abstraction interface.
2Device complexity
If one-dimensional memory allocation is used, then memory access patterns remain simple, but data co-location capability is lost
Solution Approach 1:
The invention introduces multidimensional addressing capabilities that allow data to be organized in two or more dimensions (rows and columns). This enables related data to be placed in the same physical memory component (same row or column), achieving data co-location while the memory shape abstraction maintains simple access patterns through structured memory layouts.
Solution Approach 2:
The patent implements local quality by allowing different regions of memory to have different organizational structures. Memory shapes can be configured with specific dimensions and layouts tailored to the data access patterns of different applications or data types, optimizing data co-location for each specific use case while maintaining overall memory simplicity.
3Productivity
If multidimensional memory allocation is implemented, then data locality and system performance improve, but memory allocation complexity increases
Solution Approach 1:
The patent introduces a memory shape abstraction layer that provides a universal interface for multidimensional memory allocation. This abstraction layer handles the complexity of multidimensional addressing and allocation internally, presenting a simplified API to users. The same memory shape mechanism can serve different data types, access patterns, and performance requirements, making the complexity management reusable and manageable.
Data Source
AI summary
A user definition of a memory shape can be received and a multidimensional, contiguous, physical portion of a memory array can be allocated according to the memory shape. The user definition of the memory shape can include a quantity of contiguous columns of the memory array, a quantity of contiguous rows of the memory array, and a major dimension of the memory shape. The major dimension can correspond to a dimension by which to initially stride data stored in the memory shape.


