Iterative DMA Writeout for Cacheline-Aligned Matrix Output

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large-scale machine learning model training faces efficiency challenges due to resource-intensive memory operations required for matrix-to-matrix multiplication, particularly in writing out results to global memory, which can be latency-bound when data is not aligned with cacheline sizes.

Innovation Solution

Implementing a DMA controller to iteratively load tensor data from global memory to shared memory in a cache-friendly manner, using interleaving and padding techniques to ensure data is contiguous within cachelines, thereby optimizing memory transfer performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Volume of stationary object

If data is stored at global memory for large-scale model training, then memory capacity is improved, but memory operation efficiency deteriorates

Engineering Contradiction:
Improvememory capacityVSAvoidmemory operation efficiency
Core Design Contradiction:
Volume of stationary objectVSProductivity

Solution Approach 1:

The patent segments the large-scale model training data into multiple smaller data chunks that can be processed in parallel across multiple processing units. Each processing unit handles a specific portion of the model parameters, enabling concurrent memory operations and improving overall memory efficiency while maintaining access to the full global memory capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical memory architecture that adds another dimension to the memory system by implementing cache memory between global memory and processing units. This multi-level memory structure allows the system to maintain large global memory capacity while providing fast access paths through cache memory for frequently accessed model parameters.

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

2Device complexity

If traditional memory operations are used for matrix multiplication, then implementation simplicity is maintained, but write performance deteriorates due to latency

Engineering Contradiction:
Improveimplementation simplicityVSAvoidwrite latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by pre-loading model parameters and activation data into cache memory before they are needed for matrix multiplication operations. This advance preparation reduces the latency of memory writes during the actual computation by ensuring data is already in fast-access memory when needed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements continuous data transfer pipelines that keep memory operations flowing without idle periods. By overlapping data loading, computation, and writing operations, the system maintains continuous useful action throughout the matrix multiplication process, eliminating latency gaps that would occur with traditional sequential operations.

Inventive Principle:
Principle #20Continuity of useful action

3Adaptability or versatility

If data is not aligned with cacheline sizes, then memory layout flexibility is maintained, but write performance deteriorates

Engineering Contradiction:
Improvememory layout flexibilityVSAvoidwrite performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent applies local quality by optimizing only the specific portions of data that are actively being processed for matrix multiplication. Rather than requiring entire datasets to be cacheline-aligned, the system maintains flexibility in overall memory layout while ensuring that the local data chunks being transferred between cache and global memory are properly aligned for optimal write performance.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20260079867A1Iterative direct memory access for cache-friendly write out
Publication Date: 2026.03.19 ATI TECHNOLOGIES ULC
  • US20260079867A1 patent drawing
  • US20260079867A1 patent drawing
  • US20260079867A1 patent drawing

AI summary

A DMA controller iteratively loads regions of tensor data from global memory to a shared memory of a processor to generate an output from matrix multiplication in a format in which rows of data are contiguous in memory. In a first iteration, the DMA controller loads a first region of data that includes a plurality of rows, each row separated by a tile stride from the preceding row, from the tile to a first contiguous region of the shared memory. In a second iteration, the DMA controller loads a second region of data that includes a plurality of rows, each row separated by a tile stride from the preceding row, from the tile to a second contiguous region of the shared memory. The second region of data is offset from the first region of data in global memory by a configurable offset.