Inline Digest and Entropy Processing for CPU Cache Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face inefficiencies in data deduplication and compression processes, particularly in managing workloads and determining entropy thresholds, which can lead to suboptimal performance and resource utilization during data processing operations.

Innovation Solution

A method that computes data deduplication digests and entropy values in parallel, synchronizing these processes to ensure completion before proceeding with the next data chunk, and dynamically adjusts entropy thresholds based on the current workload to optimize deduplication and compression decisions inline with the I/O path processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If data deduplication and compression processing are performed sequentially, then processing logic is simple, but processing time increases and throughput decreases

Engineering Contradiction:
Improveprocessing logic complexityVSAvoiddata processing throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent divides data processing into discrete chunks and processes each chunk through parallel digest computation and entropy calculation operations. By segmenting the processing workflow into independent parallel tasks that can be synchronized, the system achieves higher throughput without excessive complexity increase.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic entropy threshold adjustment based on current workload conditions. The entropy threshold is not fixed but adapts dynamically to system state, allowing the processing system to optimize its behavior under different load conditions and improve overall productivity.

Inventive Principle:
Principle #15Dynamics

2Stability of the object's composition

If entropy threshold is fixed, then processing decisions are consistent, but performance is suboptimal under varying workload conditions

Engineering Contradiction:
Improveprocessing decision consistencyVSAvoidsystem performance
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The patent makes the entropy threshold dynamic by adjusting it based on current workload measurements. When workload is high, the threshold increases to favor deduplication; when workload is low, the threshold decreases to enable more compression opportunities, thus optimizing performance under varying conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback mechanisms where processing results and workload metrics are monitored and used to adjust the entropy threshold. This closed-loop control allows the system to adapt to changing conditions while maintaining reasonable consistency in processing decisions.

Inventive Principle:
Principle #23Feedback

3Productivity

If parallel processing is implemented without synchronization, then processing speed increases, but data consistency deteriorates

Engineering Contradiction:
Improveprocessing speedVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent processes data in discrete chunks with clear boundaries, allowing parallel operations on different chunks without interference. This segmentation enables speed improvement through parallelism while maintaining consistency within each chunk through controlled synchronization points.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces synchronization mechanisms as intermediaries between parallel processing streams. These synchronization points ensure that digest computation and entropy calculation results are properly coordinated before being used for deduplication and compression decisions, maintaining data consistency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10503516B1Concurrent data entropy and digest computation operating on same data for CPU cache efficiency
Publication Date: 2019.12.10 EMC IP HLDG CO LLC
  • US10503516B1 patent drawing
  • US10503516B1 patent drawing
  • US10503516B1 patent drawing

AI summary

Techniques for CPU cache efficiency may include performing concurrent processing, such as for first and second data operations, in a synchronized manner that prevents loading the same data chunk into the CPU cache more than once. Processing may include synchronizing the first and second data operations with respect to a first data chunk to ensure that both complete prior to proceeding with performing such processing on a second data chunk. The first and second data operations for a chunk may be deduplication digest computation and entropy computation performed inline as part of the data path. If the chunk cannot be deduplicated, the entropy value may be used with an adaptive entropy threshold to determine whether to compress the chunk inline. The entropy value may be determined using less than all bytes in the chunk. The chunk's entropy value may be determined based on a data set entropy value.