Adaptive Storage Compression for Stable CPU Utilization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network storage systems face performance issues due to excessive processor cycles used for data compression, which can lead to oscillating CPU utilization and instability, as they switch between faster and more effective compression algorithms, affecting overall input/output processing performance.

Innovation Solution

Implementing a dynamic adaptive compression method that simultaneously uses multiple compression algorithms, adjusting the percentage of blocks compressed with each algorithm based on CPU utilization rates, gradually increasing the use of a slower but more effective algorithm when CPU cycles are available and switching back to a faster algorithm when CPU utilization reaches thresholds to maintain stability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If a slower but more effective compression algorithm is used, then compression ratio is improved, but processor utilization increases and may cause system instability

Engineering Contradiction:
Improvecompression ratioVSAvoidprocessor utilization
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The system dynamically adjusts the mix of compression algorithms based on real-time processor utilization rates. When CPU utilization is below a threshold, the system increases the percentage of blocks compressed with the more effective (slower) algorithm to improve compression ratios. When utilization exceeds the threshold, it switches to the faster algorithm to maintain system stability and performance.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of algorithm selection by using multiple compression algorithms with different characteristics (speed vs. effectiveness). It adjusts the percentage factor for each algorithm based on processor utilization rates, transforming a static algorithm selection into a dynamic parameter-adjustable system that optimizes both compression ratio and system performance.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If compression is always performed, then storage efficiency is improved, but input/output processing performance deteriorates due to excessive processor cycles

Engineering Contradiction:
Improvestorage efficiencyVSAvoidinput/output processing performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

Instead of always using the most effective compression algorithm (excessive action), the system applies compression algorithms partially based on current system conditions. It uses the more effective algorithm only when processor utilization is below the threshold, and uses the faster algorithm when needed, avoiding excessive processor cycle consumption while maintaining adequate compression efficiency.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system dynamically adjusts compression strategy based on real-time processor utilization. When CPU utilization is low, it applies more aggressive compression to improve storage efficiency. When utilization is high, it reduces compression intensity by using faster algorithms, thereby maintaining I/O performance while still providing compression when system resources are available.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If the system switches between compression algorithms to optimize performance, then adaptability is improved, but system stability deteriorates due to oscillating CPU utilization

Engineering Contradiction:
Improvealgorithm selection flexibilityVSAvoidsystem stability
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The system implements feedback control by continuously monitoring processor utilization rates and adjusting the compression algorithm mix accordingly. The threshold-based feedback mechanism prevents oscillation by maintaining a stable operating region, switching algorithms only when utilization crosses the threshold in a sustained manner, thereby balancing adaptability with system stability.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9733854B2Dynamic adaptive compression in network storage device
Publication Date: 2017.08.15 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9733854B2 patent drawing
  • US9733854B2 patent drawing
  • US9733854B2 patent drawing

AI summary

Methods, systems, and computer programs are presented for dynamic adaptive compression in a storage device. One method includes operations for setting a percentage factor for utilizing a first and a second compression algorithms, and for receiving incoming blocks in the memory of the storage device. The incoming blocks are compressed before being sent to permanent storage, where a portion of the incoming blocks are compressed with the first compression algorithm based on the percentage factor, and the remainder is compressed with the second compression algorithm. Further, the method includes determining that a processor utilization rate, of a processor in the storage device, is below a first predetermined threshold, and decreasing, in response to the determining, the percentage factor to decrease the portion of the incoming blocks that are compressed with the first compression algorithm, while the remainder of the incoming blocks is compressed with the second compression algorithm.