SSD Write Pointer Exposure for Host Filesystem Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Solid state drives (SSDs) face performance limitations due to their inherent block-based operations, leading to increased latency and write amplification, which restrict their full potential and reduce their lifespan, as they require complex garbage collection and rewrite operations, especially when handling unaligned writes and limited program/erase cycles.

Innovation Solution

Exposing write pointers for next available pages in SSD erase blocks to the host computer's filesystem, allowing it to optimize write operations by aligning data with page sizes and avoiding read-modify-write operations, thus minimizing performance penalties and extending SSD lifespan.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the SSD firmware operates solid state memory components on a block basis (erase blocks), then the SSD can handle arbitrary requests from host computer, but the latency increases and performance potential remains unrealized

Engineering Contradiction:
Improveability to handle arbitrary requestsVSAvoidlatency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent segments the erase block into smaller units by exposing the fine-grained structure (pages and sub-pages) to the host filesystem. This allows the filesystem to operate at a finer granularity than the traditional block-based approach, reducing the need to read-modify-write entire erase blocks when only small portions need modification.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by having the SSD firmware pre-process and organize data into pages within erase blocks before host access. The host filesystem is given visibility into this pre-organized structure, allowing it to make informed decisions about write operations that avoid unnecessary read-modify-write cycles and reduce latency.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If a large number of program/erase operations are performed to handle file modification requests, then the SSD can serve arbitrary requests, but the latency increases and the SSD lifespan decreases

Engineering Contradiction:
Improveability to serve arbitrary requestsVSAvoidSSD lifespan
Core Design Contradiction:
Adaptability or versatilityVSDuration of action of stationary object

Solution Approach 1:

The patent applies partial action by allowing the host filesystem to perform operations at the page level rather than requiring full erase block operations. This partial operation approach reduces the number of program/erase cycles needed, as the filesystem can update only the necessary pages without triggering unnecessary full-block erasures, thereby extending SSD lifespan.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The host filesystem takes on more responsibility for managing SSD operations by directly interacting with page-level structures. This self-service approach allows the filesystem to optimize write operations, avoid unnecessary read-modify-write cycles, and reduce the burden on SSD firmware, ultimately reducing wear and extending SSD lifespan.

Inventive Principle:
Principle #25Self-service

3Productivity

If read-modify-write operations are performed frequently for garbage collection, then enough spare pages and erase blocks can be freed, but the latency for SSD operations increases

Engineering Contradiction:
Improvegarbage collection effectivenessVSAvoidoperation latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

By exposing the fine-grained page structure within erase blocks to the host filesystem, the patent enables segmented garbage collection operations. The filesystem can identify and consolidate valid pages more efficiently, performing garbage collection at the page level rather than requiring full erase block reads and writes, thus reducing latency while maintaining effectiveness.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10120583B2Performance penalty avoidance for solid state drive
Publication Date: 2018.11.06 META PLATFORMS INC
  • US10120583B2 patent drawing
  • US10120583B2 patent drawing
  • US10120583B2 patent drawing

AI summary

Several embodiments include a host computer coupled to a solid state drive (SSD). The filesystem of the host computer can receive a write pointer from the firmware of the SSD. The write pointer can reference a next available page to an erase block in the SSD. In response to a file write request to store a target file, the filesystem can determine a logical address range to store at least a portion of the target file based on the file write request and the write pointer. The filesystem can then generate a sector write command to send to the SSD. The sector write command can specify the determined logical address range.