Disk Drive Write Cache Workload Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current disk drives face inefficiencies in data access and storage due to mechanical latency and the need for indirect mapping of logical to physical block addresses, which can lead to performance bottlenecks during high workloads and limited lifespan of non-volatile semiconductor memory.

Innovation Solution

Implementing a non-volatile write cache using flash memory to store a percentage of write data based on workload, with a rotational position optimization algorithm to minimize latency, and dynamically allocating storage between the cache and disk to optimize throughput and extend memory lifespan.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If write data is stored directly to disk, then mechanical latency is incurred, but data storage reliability is maintained

Engineering Contradiction:
Improvewrite speedVSAvoidmechanical latency
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

A non-volatile write cache is introduced as an intermediary storage layer between the host and the disk. The cache receives write commands from the host and stores data temporarily before flushing it to the disk, thereby eliminating the impact of mechanical latency on write performance while maintaining data reliability through proper cache management and flushing protocols.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If non-volatile write cache is used to reduce latency, then write performance is improved, but memory lifespan is reduced

Engineering Contradiction:
Improvewrite throughputVSAvoidmemory lifespan
Core Design Contradiction:
ProductivityVSDuration of action of stationary object

Solution Approach 1:

The system dynamically adjusts the write cache usage based on workload conditions and memory health status. During high workloads, more write operations are directed to the cache to maintain performance, while during low workloads or when memory lifespan is concerns, the system reduces cache usage and directs more writes directly to the disk, thereby balancing performance with memory longevity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters such as cache write threshold, flush frequency, and cache allocation size based on workload intensity and memory wear level. By dynamically adjusting these parameters, the system optimizes the balance between utilizing the cache for performance improvement and preserving the non-volatile memory lifespan.

Inventive Principle:
Principle #35Parameter changes

3Loss of time

If all write data is directed to cache, then mechanical latency is eliminated, but host write command blocking occurs during high workloads

Engineering Contradiction:
Improveaccess timeVSAvoidcommand processing throughput
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

Instead of directing all write data to the cache, the system uses partial action by selectively routing write commands based on workload conditions, data priorities, and cache status. This selective approach prevents cache overflow and host command blocking while still achieving the latency benefits for critical writes, thereby maintaining both access speed and overall throughput.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8959284B1Disk drive steering write data to write cache based on workload
Publication Date: 2015.02.17 WESTERN DIGITAL TECHNOLOGIES INC
  • US8959284B1 patent drawing
  • US8959284B1 patent drawing
  • US8959284B1 patent drawing

AI summary

A disk drive is disclosed comprising a non-volatile write cache and a head actuated over a disk. A plurality of write commands are received from a host, wherein each write command comprises write data. A workload for a non-cache area of the disk is determined, and when the workload for the non-cache area of the disk is less than a threshold independent of a workload for the write cache, substantially all of the write data is stored in the non-cache area of the disk. When the workload for the non-cache area of the disk is greater than the threshold independent of the workload for the write cache, a first percentage of the write data is stored in the non-volatile write cache and a second percentage of the write data is stored in the non-cache area of the disk, wherein the first percentage is proportional to the workload for the non-cache area of the disk.