Write Cache Management via Hardware Offload

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional software-managed write caches in data storage systems become bottlenecks under high request rates, leading to increased write latency and reduced data storage system performance due to processing overhead in managing cache lookups and evictions.

Innovation Solution

A method of selectively enabling write caching by monitoring performance metrics, transitioning the write cache from an active state to a drain or off state based on threshold satisfaction, and adjusting the caching strategy to store data directly in bulk storage media, thereby reducing processing load and improving latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If write caching is enabled in software-managed storage systems, then write latency is reduced, but processing overhead increases and storage processor becomes a critical resource under high request rates

Engineering Contradiction:
Improvewrite latencyVSAvoidrequest servicing rate
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent extracts the cache management logic from the storage processor software to a dedicated hardware cache controller. This separation removes the processing overhead of cache lookups, victim selection, and destaging operations from the storage processor's instruction execution path, allowing the storage processor to focus on servicing access requests while the hardware cache controller independently manages write cache operations.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a hardware cache controller as an intermediary component between the storage processor and the write cache memory. This intermediary handles all cache management operations (lookups, evictions, destaging) in hardware, acting as a mediator that offloads processing tasks from the storage processor and enables parallel operation of cache management and request servicing.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If write caching is always enabled, then write performance is improved, but system complexity increases due to cache management operations

Engineering Contradiction:
Improvewrite throughputVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent replaces the software-based cache management system with a hardware-based implementation. The hardware cache controller uses dedicated circuitry to perform cache lookups, victim entry selection, and destaging operations, substituting the mechanical instruction execution and software logic with hardware-level operations that are inherently simpler and more efficient.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The hardware cache controller is designed to autonomously manage write cache operations without requiring storage processor intervention. It independently performs cache lookups, selects victim entries using hardware logic, and initiates destaging operations, making the cache management system self-sufficient and reducing overall system complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9170943B2Selectively enabling write caching in a storage system based on performance metrics
Publication Date: 2015.10.27 GLOBALFOUNDRIES US INC
  • US9170943B2 patent drawing
  • US9170943B2 patent drawing
  • US9170943B2 patent drawing

AI summary

According to a method of cache management in a data storage system including a write cache and bulk storage media, a storage controller of the data storage system caches, in the write cache, write data of write input/output operations (IOPs) received at the storage controller. In response to a first performance-related metric for the data storage system satisfying a first threshold, the storage controller decreases a percentage of write IOPs for which write data is cached in the write cache of the data storage system and increases a percentage of write IOPs for which write data is stored directly in the bulk storage media in lieu of the write cache. In response to a second performance-related metric for the data storage system satisfying a second threshold, the storage controller increases the percentage of write IOPs for which write data is cached in the write cache of the data storage system.