SSD Variable Status Segmentation for Garbage Collection Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Garbage collection in solid-state storage devices, such as SSDs, frequently occurs due to the need to erase and rewrite data, leading to performance degradation and reduced longevity, especially in systems like BIOS that use UEFI variable services, which add significant overhead and increase boot times.

Innovation Solution

Implementing a filter driver that manages SSDs by using a variable status with a plurality of bits initialized to an initial value, where modifying the variable status by changing one bit to its logical complement toggles the validity of the data, thereby reducing the frequency of garbage collection and extending SSD longevity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional UEFI variable services are used to manage SSD data, then data can be stored and retrieved, but garbage collection frequency increases and SSD longevity decreases

Engineering Contradiction:
ImproveSSD longevityVSAvoidgarbage collection frequency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the variable status into multiple individual bits (e.g., first bit, second bit, third bit) rather than using a single status field. Each bit can independently track the validity state of data portions, allowing selective invalidation without requiring complete garbage collection of entire data blocks. This segmentation reduces the frequency of garbage collection operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter representation from traditional UEFI variable status (single field requiring complete block invalidation) to a multi-bit status system where each bit represents a different validity state. This parameter change enables more granular control over data validity, allowing the system to maintain data integrity while reducing unnecessary garbage collection operations that would otherwise be required.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If frequent garbage collection is performed to maintain SSD performance, then data validity is ensured, but system boot time increases and overall performance degrades

Engineering Contradiction:
Improvedata validityVSAvoidboot time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

By segmenting the status tracking into multiple bits, the system can validate and invalidate specific data portions without requiring complete garbage collection of entire variable blocks. This reduces the time spent on garbage collection operations during system boot and normal operation, directly addressing the boot time penalty.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The multi-bit status system performs preliminary validation tracking, maintaining validity information in advance through bit flags. This preliminary action eliminates the need for time-consuming garbage collection operations during critical periods such as system boot, as the validity state is already determined and stored in the bit status fields.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If data is rewritten to new locations in SSD, then valid data is preserved, but the number of write-erase cycles increases and SSD lifespan reduces

Engineering Contradiction:
Improvedata integrityVSAvoidSSD lifespan
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

The patent divides the validity tracking into multiple bits that can independently mark portions of data as valid or invalid. This allows the system to preserve only the necessary valid portions without requiring complete data rewrites to new locations. By selectively invalidating only the necessary bits rather than entire blocks, the number of write-erase cycles is significantly reduced, extending SSD lifespan.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The parameter representation change from traditional single-field status to multi-bit status enables more efficient data lifecycle management. The system can track and preserve data integrity through bit-level validity flags, reducing the need for conservative full-block rewrites that would otherwise be required to ensure data integrity, thereby reducing write-erase cycle accumulation.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11150901B2Systems and methods for minimizing frequency of garbage collection by deduplication of variables
Publication Date: 2021.10.19 DELL PROD LP
  • US11150901B2 patent drawing
  • US11150901B2 patent drawing
  • US11150901B2 patent drawing

AI summary

An information handling system may include a processor and a program of instructions embodied in non-transitory computer-readable media and configured to, when read and executed by the processor: in response to a request to write a variable to a solid state device, store the variable to a memory location of the solid state device, the variable including variable data and a variable status indicative of a validity of the variable data, the variable status having a plurality of bits wherein each of the plurality of bits are set to an initial value and in response to a request to modify the variable, modify the variable status by changing one of the plurality of bits from the initial value to a logical complement of the initial value to change the validity of the variable data. The validity of the variable data may be based on whether an even number or odd number of the plurality of bits are equal to the complement of the initial value.