Asymmetric Memory Small Block Write Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing non-volatile memory systems, particularly flash memory, face inefficiencies in writing small and ultra-small blocks of data due to mismatched write unit sizes, leading to increased latency and write amplification, which results in wasted space and reduced performance.

Innovation Solution

Implementing a log-based storage structure where small blocks of data are initially written to a temporary storage and then reconciled into larger units for efficient writing, using a dynamic configuration of asymmetric memory to manage temporary and reconciled storage based on workload percentages and redundancy structures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If small blocks of data are written directly to non-volatile memory using traditional methods, then the write operation can be performed, but write amplification increases and storage efficiency decreases due to mismatched write unit sizes

Engineering Contradiction:
Improvestorage efficiencyVSAvoidwrite operation efficiency
Core Design Contradiction:
Loss of substanceVSProductivity

Solution Approach 1:

The patent segments the write operation into two distinct phases: (1) accumulating small data blocks in a log structure in memory, and (2) reconciling them into larger units for actual memory writing. This segmentation allows small writes to be buffered and combined, reducing write amplification while maintaining high write throughput for small blocks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a log structure as an intermediary between the host and the non-volatile memory. This log acts as a buffer that temporarily stores small data blocks before they are reconciled into larger units suitable for efficient memory writing, thereby decoupling the small write operations from the larger physical write units.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of substance

If small blocks of data are written using log-based structure, then write amplification is reduced, but device complexity increases due to additional management overhead

Engineering Contradiction:
Improvewrite amplificationVSAvoidmemory management complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The patent implements dynamic allocation and management of the log structure, where the log size and reconciliation thresholds are adjusted based on workload characteristics. The system dynamically determines when to switch between direct writing and log-based writing modes, optimizing performance while managing complexity through adaptive control rather than static configurations.

Inventive Principle:
Principle #15Dynamics

3Productivity

If asymmetric memory is used with different latency for read and write operations, then storage performance can be optimized, but managing small block writes becomes more complex

Engineering Contradiction:
Improvestorage performanceVSAvoidwrite management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs preliminary actions by pre-allocating log space and pre-processing small data blocks before they need to be written to the asymmetric memory. The log structure is prepared in advance to accommodate small writes, and reconciliation operations are scheduled ahead of time, reducing the impact of asymmetric latency on overall performance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9898196B1Small block write operations in non-volatile memory systems
Publication Date: 2018.02.20 WESTERN DIGITAL TECHNOLOGIES INC
  • US9898196B1 patent drawing
  • US9898196B1 patent drawing
  • US9898196B1 patent drawing

AI summary

A first portion of an asymmetric memory is configured as temporary storage for application data units with sizes corresponding to a small memory block that is smaller than the size of a logical write unit associated with the asymmetric memory. A portion of the remaining asymmetric memory is configured as a reconciled storage for application data units with varying sizes. A first application data unit is received for writing to the asymmetric memory. Based on computing the size of the first application data unit as corresponding to the small memory block, the first application data unit is written to the temporary storage. Upon determining that a threshold is reached, a memory write operation is performed for writing the application data units from the temporary storage to the reconciled storage. The application data units written to the reconciled storage are removed from the temporary storage.