NVM Snapshot Pointer Elimination for Space Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The excessive consumption of NVM space by repeated snapshots in non-volatile random access memory (NVM) regions leads to reduced available space for virtual machines and other clients, as each snapshot can consume as much space as the NVM region itself, causing significant space constraints.

Innovation Solution

The implementation of techniques to efficiently purge non-active blocks from NVM regions using pointer elimination, virtblock arrays, and large page preservation approaches, which modify metadata structures and pointer management to free up space without requiring additional NVM space, while maintaining performance benefits like cache efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If repeated snapshots are created in NVM regions, then reliability and availability capabilities are improved, but NVM space consumption increases excessively

Engineering Contradiction:
Improvehost and cluster-wide reliability and availabilityVSAvoidNVM space consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts and removes non-active data blocks from NVM regions after snapshots are created. By identifying blocks that are no longer needed by active virtual machines and removing them from NVM, the system maintains snapshot reliability while freeing up NVM space for future use.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements a mechanism to discard non-active data blocks from NVM and recover the space for reuse. The system tracks which blocks are still needed by active VMs versus those that can be safely removed, enabling continuous space recovery while preserving snapshot integrity.

Inventive Principle:
Principle #34Discarding and recovering

2Reliability

If snapshots consume large NVM space, then reliability capabilities are maintained, but available space for VMs and clients is reduced

Engineering Contradiction:
Improvesnapshot reliabilityVSAvoidavailable space for VMs and clients
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system extracts non-active blocks from the NVM region and removes them, separating the snapshot data from the active working space. This allows snapshots to maintain their reliability function while the extracted space becomes available for new VM allocations and client operations.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments NVM blocks into active and non-active categories, allowing differential management. Active blocks remain in NVM for VM access, while non-active blocks are moved out, creating distinct functional zones that improve overall space utilization and system adaptability.

Inventive Principle:
Principle #1Segmentation

3Productivity

If non-active blocks are purged from NVM, then NVM space utilization is improved, but additional processing complexity is introduced

Engineering Contradiction:
ImproveNVM space utilizationVSAvoidpointer elimination and reference count management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements self-service mechanisms where the snapshot management infrastructure automatically tracks and manages block references. By maintaining reference counts and automatically identifying non-active blocks, the system reduces manual intervention complexity while improving space utilization through automated purging operations.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent implements feedback mechanisms through reference count tracking. The system continuously monitors which blocks are referenced by active VMs versus snapshots, using this feedback information to automatically determine which blocks can be safely purged, thereby simplifying the overall management complexity through intelligent automation.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10691591B2Efficiently purging non-active blocks in NVM regions using pointer elimination
Publication Date: 2020.06.23 VMWARE INC
  • US10691591B2 patent drawing
  • US10691591B2 patent drawing
  • US10691591B2 patent drawing

AI summary

Techniques for efficiently purging non-active blocks in an NVM region of an NVM device using pointer elimination are provided. In one set of embodiments, a host system can, for each level 1 (L1) page table entry of each snapshot of the NVM region, determine whether a data block of the NVM region that is pointed to by the L1 page table entry is a non-active block, and if the data block is a non-active block, remove a pointer to the data block in the L1 page table entry and reduce a reference count parameter associated with the data block by 1. If the reference count parameter has reached zero at this point, the host system purge the data block from the NVM device to the mass storage device.