Virtual Entry Lifetime Extension Through Deferred Reclamation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The end-of-life processing of virtual entries in data storage systems consumes memory and CPU bandwidth, impacting performance due to the need to immediately reclaim virtual entries when their reference count reaches zero.

Innovation Solution

The virtual entry lifetime is expanded by maintaining entries with a reference count of zero until necessary, postponing reclamation to conserve CPU processing resources and optimize deduplication index management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If virtual entries are immediately reclaimed when reference count reaches zero, then memory utilization is optimized, but CPU bandwidth and processing performance are degraded

Engineering Contradiction:
Improvememory utilizationVSAvoidCPU processing performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system performs preliminary actions by maintaining virtual entries with zero reference count in a cache structure before actual reclamation is needed. This allows the system to prepare and stage reclamation operations in advance, reducing the immediate CPU processing burden when reclamation actually occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

An intermediary data structure (cache) is introduced between the virtual entry and its final reclamation. This cache holds virtual entries with zero reference count temporarily, acting as a buffer that decouples the reference count update operation from the actual reclamation operation, thereby reducing CPU bandwidth consumption during normal operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If virtual entries are maintained with zero reference count, then CPU processing resources are conserved, but memory consumption increases

Engineering Contradiction:
ImproveCPU processing efficiencyVSAvoidmemory consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system changes the state parameter of virtual entries by introducing a new reference count value (a second zero or negative value) that indicates the entry should be maintained in cache rather than immediately reclaimed. This parameter change allows the system to differentiate between virtual entries that should be freed immediately and those that can be cached for later reclamation.

Inventive Principle:
Principle #35Parameter changes

3Stability of the object's composition

If end-of-life processing is performed immediately, then data structure consistency is maintained, but system performance and storage efficiency are reduced

Engineering Contradiction:
Improvedata structure consistencyVSAvoidsystem performance
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

Instead of performing end-of-life processing continuously or immediately for each virtual entry, the system implements periodic batch processing. Virtual entries with zero reference count are collected and processed together in periodic batches, reducing the overall processing overhead while maintaining data structure consistency through controlled updates.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS12430055B2System and method for expanding the lifetime of virtual entries in data storage systems
Publication Date: 2025.09.30 DELL PROD LP
  • US12430055B2 patent drawing
  • US12430055B2 patent drawing
  • US12430055B2 patent drawing

AI summary

A method, computer program product, and computing system for expanding the lifetime of virtual entries in a data storage system. A deduplication function of a virtual layer of a data storage system is monitored, a reference count of a virtual entry is incremented when a data page is written to a physical layer of the data storage system and the reference count of the virtual entry is decremented when a data page is deleted from the virtual layer. The virtual entry in the virtual layer is maintained when the reference count reaches a predetermined value and the virtual entry is reclaimed when a predetermined action of the data storage system is to be performed.