Fixed-Length Compressed Blocks for Parallel Decompression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The inefficiency of data decompression in hardware chips due to varying compression rates of raw data blocks and the need for synchronized decompression by multiple engines, leading to idle computation capabilities and reduced algorithm running speed.
Innovation Solution
Standardizing the compression process to generate fixed-length standard compressed data blocks, allowing multiple decompression engines to operate in parallel, ensuring each block can be decompressed within one processing cycle.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple decompression engines are used for parallel decompression, then decompression throughput is improved, but decompression efficiency is reduced due to varying processing times for different compressed data blocks
Solution Approach 1:
The original compressed data is segmented into multiple equal-length standard compressed data blocks, each of which can be independently decompressed by a separate decompression engine. This segmentation enables parallel processing while maintaining uniform processing time for each block, thus improving throughput without sacrificing efficiency.
Solution Approach 2:
The invention changes the parameter of compressed data block length from variable to fixed/equal length. By standardizing the length of compressed data blocks, all blocks can be processed in the same time by decompression engines, eliminating the idle time caused by waiting for the slowest block to complete.
2Loss of substance
If variable-length compressed data blocks are used, then compression ratio is optimized, but parallel decompression efficiency is reduced due to synchronization requirements
Solution Approach 1:
The compressed data is divided into multiple standard blocks of equal length, where each block is a self-contained unit that can be independently processed. This segmentation allows multiple decompression engines to work in parallel without requiring complex synchronization mechanisms, as all blocks complete processing in the same time.
Solution Approach 2:
Instead of adapting the decompression process to handle variable-length blocks, the invention inverts the approach by standardizing the block length to match the fixed processing capacity of decompression engines. This inversion simplifies the parallel processing architecture and eliminates synchronization overhead.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Embodiments of this application disclose a data compression method, a data decompression method, and a related apparatus, an electronic device, and a system. In the data compression method, a raw data block in raw data is processed based on a compression algorithm to obtain a standard compressed data block that has a length of L2 and that corresponds to the raw data block, and the raw data is further compressed into one or more standard compressed data blocks that each have the length of L2 and that are to be decompressed in parallel by a decompression apparatus, where the decompression apparatus includes a plurality of decompression engines, and each decompression engine is capable of decompressing one standard compressed data block within one processing cycle. According to the data compression method in the embodiments of the present invention, a standard compressed data block with a fixed length can be obtained through compression. In this way, various decompression engines can synchronously decompress a plurality of standard compressed data blocks. This improves data decompression efficiency.