Sparse Matrix Compression Using Dictionary Tags for Low Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional deep learning compression techniques face challenges in achieving full data throughput and optimized compression gains due to timing demands, data latency, and inefficient compression ratios, particularly in deep submicron silicon, where they often require two compression engines and introduce additional circuitry and power consumption, failing to effectively compress sparse data and meeting only 50% of speed targets.

Innovation Solution

A single compression engine utilizing a compressor dictionary with tags for zero, one, partial matches, and no matches is implemented, compressing data samples by storing tags and excluding identified values, providing optimized compression gains, lower latency, and reduced power consumption, applicable to both weights and activations in deep learning workloads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If conventional deep learning compression techniques are used, then data can be compressed to save routing bandwidth and storage capacity, but timing demands are not met and data latency increases

Engineering Contradiction:
Improvedata sizeVSAvoiddata latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The compression engine segments data processing into distinct phases: identifying frequently occurring values, assigning tags to these values, and replacing actual data with tags during compression. This segmentation allows the system to focus computational effort on the most compressible portions of the data while maintaining timing requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary analysis to identify frequently occurring values in the data stream before the actual compression operation. By pre-identifying these values and assigning them tags in advance, the compression engine can operate at full speed during the actual compression phase without timing violations.

Inventive Principle:
Principle #10Preliminary action

2Speed

If two compression engines are used to meet timing demands, then speed targets can be achieved, but device complexity and power consumption increase

Engineering Contradiction:
Improvecompression speedVSAvoidcompression engine count
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The compression engine is designed to be self-optimizing by automatically identifying frequently occurring values in the input data and adapting its compression strategy accordingly. This self-service capability allows a single engine to achieve the performance that previously required two engines, eliminating redundant hardware.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system dynamically changes compression parameters based on the characteristics of the input data. By adjusting which values are tagged and how compression is applied based on data patterns, a single engine can optimize its throughput to meet timing demands without requiring multiple engines.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If conventional compression techniques are used, then some compression is achieved, but compression gains are not optimized and sparse data is not effectively compressed

Engineering Contradiction:
Improvecompressed data sizeVSAvoidcompression gain
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The compression engine applies different compression strategies to different portions of the data based on local characteristics. Frequently occurring values are identified and tagged with compact representations, while other data is handled differently. This local quality approach optimizes compression ratios by tailoring the compression method to the actual data distribution.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system maintains continuous compression operation by processing data in a streamlined manner without interruption. The tag-based approach allows for continuous replacement of data values with compact tags, maintaining high compression throughput while achieving optimized compression ratios throughout the entire data stream.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS12039421B2Deep learning numeric data and sparse matrix compression
Publication Date: 2024.07.16 INTEL CORP
  • US12039421B2 patent drawing
  • US12039421B2 patent drawing
  • US12039421B2 patent drawing

AI summary

An apparatus to facilitate deep learning numeric data and sparse matrix compression is disclosed. The apparatus includes a processor comprising a compression engine to: receive a data packet comprising a plurality of cycles of data samples, and for each cycle of the data samples: pass the data samples of the cycle to a compressor dictionary; identify, from the compressor dictionary, tags for each of the data samples, wherein the compressor dictionary comprises at least a first tag for data having a value of zero and a second tag for data having a value of one; and compress the data samples into compressed cycle data by storing the tags as compressed data, wherein the data samples identified with the first tag are compressed using the first tag and the data samples identified with the second tag are compressed using the second tag at the same time as values of the data samples identified with the first tag or the second tag are excluded from the compressed cycle data.