Network-Attached Memory Updates for Sparse Collective Iterations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Collective operations in parallel computing architectures with sparse data modifications incur inefficient data transfer due to the entire dataset being transferred in each iteration, despite only a portion of the data being modified, leading to compounded inefficiencies.
Innovation Solution
A method that allocates a memory region in a network-attached memory and offloads computation to a fabric-attached memory node, allowing updates to specific segments of the dataset using a new interface call, thereby reducing data transfer and communications in subsequent iterations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the entire dataset is transferred in each iteration of collective operations, then data consistency is maintained, but data transfer efficiency deteriorates when only sparse modifications occur
Solution Approach 1:
The patent segments the collective operation into two distinct phases: an initial full data transfer phase and subsequent incremental update phases. This segmentation allows the system to transfer only the modified portions of data in later iterations, rather than repeatedly transferring the entire dataset, thereby improving efficiency when changes are sparse.
Solution Approach 2:
The patent performs a preliminary full data transfer to establish a baseline state in the network-attached memory. This preliminary action enables subsequent operations to build upon the existing data structure, allowing incremental updates to be applied efficiently without requiring complete re-transfers.
2Reliability
If iterative collective operations are performed with sparse modifications, then computational accuracy is maintained, but communication overhead is compounded with each iteration
Solution Approach 1:
The patent extracts only the modified portions of data from the full dataset and transfers them separately in subsequent iterations. This extraction approach maintains computational accuracy by ensuring that updates are applied to the correct data elements while eliminating the communication overhead of transferring unchanged data portions.
Solution Approach 2:
The patent applies partial action by performing only the necessary update operations on modified data segments rather than executing complete data transfers. This partial approach maintains reliability by focusing computational resources on the specific elements that require updates, while avoiding the excessive communication overhead of full dataset transfers.
3Stability of the object's composition
If full dataset transfers are performed in each iteration, then data consistency is ensured, but communication bandwidth is wasted when only a portion of data is modified
Solution Approach 1:
The patent implements a dynamic communication strategy that adapts to the actual data modification patterns. In the first iteration, a full data transfer establishes consistency. In subsequent iterations, the system dynamically determines which data segments have been modified and transfers only those portions, thereby maintaining data consistency while reducing communication bandwidth consumption proportional to the actual changes.
Data Source
AI summary
A system receives a first request to perform a collective operation. The system stores a mapping of a first virtual address to a descriptor for a physical location of an allocated memory region. The system performs the collective operation, by writing data to a first segment of the memory region and accessing data from other segments of the memory region. The system receives a second request to perform an update operation, the second request indicating the first virtual address, one or more portions of a memory region segment to be updated, and corresponding data units to write to the portions. The system updates, based on the mapping, only the indicated portions by writing the corresponding data units. The system performs a subsequent iteration of the collective operation, based on the mapping, by bypassing writing any data to the memory region and only accessing data units from the memory region.


