Storage-Device Decompression for Lower CPU Memory Traffic
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Server, storage, and high-performance computing applications place significant demands on CPU memory and I/O due to frequent data access and movement, exacerbated by AI, GPU, and Telemetry workloads, leading to reduced effective memory bandwidth and CPU cycles.
Innovation Solution
Transfer compressed data from a storage medium to a buffer memory on a storage device, decompress it using a decompressor device, and store the uncompressed data directly in main memory without intermediate transfers to/from the CPU, utilizing a controller memory buffer and direct memory access (DMA) transactions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is transferred multiple times through main memory for compression and decompression operations, then data processing can be completed, but CPU memory bandwidth is reduced and CPU cycles are consumed
Solution Approach 1:
The patent segments the data processing pipeline into distinct functional units: compression device, decompression device, buffer memory, and main memory. Each component handles specific operations independently, allowing parallel processing and reducing the need for data to traverse the entire memory hierarchy multiple times. Compressed data is stored in buffer memory after compression, and only decompressed data is transferred to main memory, eliminating redundant memory accesses.
Solution Approach 2:
The patent introduces buffer memory as an intermediary component between the storage medium and main memory. This buffer memory serves as a staging area where compressed data can be held temporarily, allowing the CPU to perform other operations while waiting for decompression. The buffer memory decouples the compression/decompression process from main memory access, reducing the frequency and volume of main memory traffic.
2Productivity
If compressed data is decompressed using traditional CPU-based methods, then data can be processed, but CPU cycles are significantly consumed
Solution Approach 1:
The patent implements self-service by dedicating specialized hardware components (compression device and decompression device) that operate autonomously to perform data compression and decompression tasks. These devices handle their own processing operations without requiring CPU intervention, effectively offloading computational work from the CPU. The decompression device can initiate and complete decompression operations independently, significantly reducing CPU cycle consumption.
Solution Approach 2:
The patent replaces the traditional CPU-based software decompression mechanism with dedicated hardware decompression devices. This substitution transitions the decompression function from a software-based CPU operation to a hardware-based parallel processing operation, similar to how mechanical systems are replaced with automated machinery. The hardware decompression devices provide parallel processing capability that eliminates the sequential CPU cycle consumption associated with traditional software-based decompression.
Data Source
AI summary
A method, computer program product, and computing system for reducing CPU memory demands in a data storage system. Compressed data is transferred from a storage medium of a storage device to a buffer memory on the storage device. The compressed data is then transferred from the buffer memory to a decompressor device and the compressed data is decompressed by the decompressor device to produce uncompressed data. The uncompressed data is stored in a main memory of a CPU and transferred from the main memory to a requestor of the data.


