Feature-Map Compression for Neural Network Training Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Training neural networks with a large number of layers experiences performance bottlenecks due to high memory access demands for storing and retrieving intermediate data, particularly when a significant portion of this data consists of zero values after passing through activation functions, leading to inefficient memory throughput.

Innovation Solution

Implementing a reduction engine that performs atomic operations for compressing or removing zeros from intermediate data during forward propagation and restoring them during backward propagation, along with transpose operations, without storing the intermediate results in main memory, using a neural network processor and DMA controller.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If intermediate data is stored in main memory during forward propagation for re-use during backward propagation, then the training process can be completed, but the memory throughput is significantly reduced due to high access demands and large volume of zero values

Engineering Contradiction:
Improvetraining process completionVSAvoidmemory throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts and removes zero values from intermediate feature map data before storing in main memory. By identifying and eliminating redundant zero elements, the system reduces the volume of data requiring memory access while preserving the essential non-zero information needed for backward propagation, thus improving memory throughput without compromising training completion

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of storing all intermediate data and filtering during retrieval, the patent inverts the approach by pre-processing and removing zeros before storage. This inversion of the traditional store-then-filter paradigm reduces the memory burden from the outset, allowing faster access during backward propagation

Inventive Principle:
Principle #13The other way round (Inversion)

2Reliability

If all intermediate data including zero values is transferred to and from main memory, then complete data is available for backward propagation, but the amount of data transferred is excessively large reducing training efficiency

Engineering Contradiction:
Improvedata completeness for backward propagationVSAvoidtraining efficiency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts zero values from intermediate feature maps before memory transfer, creating a compressed representation that contains only non-zero elements. This extraction process maintains the completeness of useful information while eliminating redundant data, thereby reducing transfer time and improving training efficiency without sacrificing the data needed for accurate backward propagation

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter of data representation by transforming full-precision feature maps into a sparse format that tracks only non-zero elements and their positions. This parameter change from dense to sparse representation dramatically reduces the volume of data transferred between memory and processor while preserving all computationally relevant information

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12511544B1Feature-map throughput during training process
Publication Date: 2025.12.30 AMAZON TECH INC
  • US12511544B1 patent drawing
  • US12511544B1 patent drawing
  • US12511544B1 patent drawing

AI summary

Systems and methods are provided to improve the memory throughput for storing and reading intermediate data computed by layers of a neural network during a training process. A compression operation can be performed by removing the zeros from the intermediate data and storing locations of the zeros before storing the intermediate data in the memory for a forward pass of the training process. The compressed data can be read from the memory for a backward pass of the training process and de-compressed by inserting zeros based on the stored locations. Additionally, a transpose operation can be performed before compression as a first atomic operation, or after de-compression as a second atomic operation.