SIMD Numerical Data Compression for Memory and Transfer Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-performance computing systems face bottlenecks due to limited data transfer rates and memory resource challenges when handling vast amounts of numerical data, necessitating efficient compression methods that are computationally efficient to minimize resource demands.

Innovation Solution

The implementation of novel SIMD constructs and instructions for encoding and decoding numerical data, including determining a maximum exponent value, interleaving bits, selecting nibbles, and generating exponent tokens, to compress and decompress data efficiently using SIMD technology.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If compression of numerical data is implemented to reduce data transfer demands and storage capacity, then data transfer efficiency and memory utilization are improved, but additional computations are required which increase computational overhead

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidcomputational overhead
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent combines multiple compression operations (exponent determination, bit interleaving, nibble selection, packing) into a unified SIMD instruction pipeline that processes multiple data elements simultaneously. This merging of operations into parallel vector instructions reduces the total computational overhead compared to sequential scalar processing, thereby improving data transfer efficiency without proportionally increasing computational energy consumption

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent changes the computational parameters by using SIMD vector operations instead of scalar operations, processing multiple numerical data elements in parallel. This parameter change from sequential to parallel processing improves compression throughput and data transfer efficiency while the computational overhead increases only linearly with data volume rather than super-linearly

Inventive Principle:
Principle #35Parameter changes

2Speed

If SIMD instructions are used to accelerate compression and decompression operations, then processing speed is improved, but device complexity increases due to novel SIMD constructs and instructions

Engineering Contradiction:
Improvecompression processing speedVSAvoidSIMD instruction complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent segments the compression process into distinct SIMD operations: exponent determination, bit interleaving, nibble selection, and packing. Each segment is handled by a specialized SIMD instruction that operates on multiple data elements in parallel. This segmentation enables high processing speed through vectorization while managing device complexity by breaking down the overall complex task into manageable, optimized instruction segments

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates universal SIMD instructions that can handle multiple compression operations (exponent extraction, bit manipulation, data packing) within a single instruction framework. These multi-functional SIMD instructions accelerate various compression stages simultaneously, improving overall processing speed while reducing the need for numerous separate instructions, thereby managing device complexity

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Productivity

If vast amounts of numerical data are transferred among processor cores and memory devices, then data processing capability is improved, but data transfer bottlenecks occur due to limited interface rates

Engineering Contradiction:
Improvedata processing capabilityVSAvoiddata transfer rate
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent extracts the essential information from numerical data by compressing it to retain only the most significant bits and exponent information. This extraction of critical data elements reduces the volume of data that needs to be transferred between processor cores and memory devices, eliminating transfer bottlenecks while preserving data processing capability through efficient representation of numerical values

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP2949047B1Data compression and decompression using SIMD instructions
Publication Date: 2021.03.31 ALTERA CORP
  • EP2949047B1 patent drawingFigure 1
  • EP2949047B1 patent drawingFigure 2
  • EP2949047B1 patent drawingFigure 3

AI summary

Compression and decompression of numerical data utilizing single instruction, multiple data (SIMD) instructions is described. The numerical data includes integer and floating-point samples. Compression supports three encoding modes: lossless, fixed-rate, and fixed-quality. SIMD instructions for compression operations may include attenuation, derivative calculations, bit packing to form compressed packets, header generation for the packets, and packed array output operations. SIMD instructions for decompression may include packed array input operations, header recovery, decoder control, bit unpacking, integration, and amplification. Compression and decompression may be implemented in a microprocessor, digital signal processor, field-programmable gate array, application-specific integrated circuit, system-on-chip, or graphics processor, using SIMD instructions. Compression and decompression of numerical data can reduce memory, networking, and storage bottlenecks. This abstract does not limit the scope of the invention as described in the claims.