SIMD Sparse Decompression with Variable-Density Block Metadata

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data processing systems face challenges in achieving fast memory access and real-time processing of data, particularly in applications like machine learning, where efficient decompression of compressed data is required for seamless on-the-fly operations.

Innovation Solution

A data processing system employing single instruction multiple data (SIMD) architecture, where parallel processors access and decompress compressed data blocks in parallel, utilizing metadata to determine the number of decompressed elements based on variable density, ensuring consistent output across data lanes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is compressed to reduce memory usage and improve storage efficiency, then storage efficiency is improved, but decompression speed and real-time processing capability deteriorate

Engineering Contradiction:
Improvestorage efficiencyVSAvoiddecompression speed
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent divides compressed data into multiple blocks, each with its own metadata indicating the number of decompressed elements. This segmentation allows parallel decompression of multiple blocks simultaneously using SIMD processors, improving decompression speed while maintaining storage efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent pre-calculates and stores metadata for each compressed data block that indicates the number of decompressed elements. This preliminary action eliminates the need for complex runtime analysis during decompression, enabling faster real-time processing while maintaining high compression ratios.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If SIMD processors are used to parallelize decompression operations, then processing speed is improved, but system complexity increases

Engineering Contradiction:
Improveprocessing speedVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent changes the data representation by adding metadata to each compressed block that specifies the number of decompressed elements. This parameter change enables SIMD processors to efficiently parallelize decompression operations without requiring complex control logic, as the metadata provides all necessary information for straightforward parallel processing.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If variable density compression is implemented to optimize data representation, then storage efficiency is improved, but decompression complexity increases

Engineering Contradiction:
Improvestorage efficiencyVSAvoiddecompression complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent extracts the critical information (number of decompressed elements) into separate metadata for each compressed block. This extraction simplifies the decompression process by providing explicit guidance on how many elements to decompress from each block, eliminating the need for complex runtime analysis of variable density compression schemes.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12438556B2Single instruction multiple data (SIMD) sparse decompression with variable density
Publication Date: 2025.10.07 QUALCOMM INC
  • US12438556B2 patent drawing
  • US12438556B2 patent drawing
  • US12438556B2 patent drawing

AI summary

An aspect of the disclosure relates to a data processing system, including: an input medium configured to include a first set of blocks of data including a first set of block of compressed data and a first set of metadata, respectively; an output medium configured to include a first set of blocks of decompressed data each having a predetermined number of decompressed elements; and a set of single instruction multiple data (SIMD) processors configured to: access the first set of blocks of data from the input medium, respectively; decompress the first set of blocks of compressed data to generate the first set of blocks of decompressed data based on the first set of metadata, respectively; and provide the first set of blocks of decompressed data to the output medium, respectively.