Max Heap Garbage Collection Block Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The process of selecting the best candidate block for erasure during garbage collection in flash devices is time-consuming due to the need to identify blocks with the most or least valid pages, which affects the efficiency of the garbage collection process.

Innovation Solution

A max heap structure is formed using page counters associated with blocks in the flash subsystem, where each counter indicates the count of invalid pages, and updated as these counts change, allowing for efficient identification of the block with the maximum invalid pages for erasure by traversing down from the highest level.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional methods are used to select the best candidate block for garbage collection by examining all blocks, then the selection accuracy is improved, but the processing time increases

Engineering Contradiction:
Improveblock selection accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent divides the set of N blocks into multiple groups or levels, organizing them in a hierarchical structure. Instead of examining all blocks simultaneously, the selection process is segmented into multiple stages where blocks are evaluated in groups, reducing the overall complexity and time required while maintaining selection accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical dimension to the block selection process by organizing blocks into multiple levels or groups. This dimensional transformation allows the system to navigate through blocks systematically from higher levels to lower levels, efficiently identifying candidate blocks without examining every single block in the entire storage device.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If frequent updates of block status are performed to maintain accurate invalid page counts, then the garbage collection efficiency is improved, but the system complexity increases

Engineering Contradiction:
Improvegarbage collection efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent maintains pre-computed invalid page counts for each block and updates these counts incrementally as pages are marked invalid. This preliminary tracking of invalid page counts allows the garbage collection process to quickly identify candidate blocks without performing complex analyses during the actual garbage collection operation, thereby improving efficiency while managing system complexity through incremental updates.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8990484B2Heap-based mechanism for efficient garbage collection block selection
Publication Date: 2015.03.24 VIRTIUM LLC
  • US8990484B2 patent drawing
  • US8990484B2 patent drawing
  • US8990484B2 patent drawing

AI summary

N page counters are associated with N blocks in the flash subsystem. Each of the N page counters indicates a count of invalid pages in each corresponding block in the N blocks. A max heap structure is formed over the N page counters. At least one of the N page counters is updated each time the count changes. The max heap structure is updated each time the at least one of the N page counters is updated.A maximum value is retrieved from a highest level of the max heap structure. The max heap structure is traversed down to lowest level using the maximum value at each level until reaching the lowest level. The lowest level corresponds to N page counters. One of the N blocks having associated page counter corresponds to the maximum value is identified as a candidate for block erasure.