Dynamic Cache Policy Adjusting Data Routing by Queue Depth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data transfers to and from disk drives can become bottlenecks due to cache inefficiencies, particularly when cache queues become large and disk drive queues are small, and cache technologies like NAND flash require time-consuming operations for erase block management.

Innovation Solution

Implementing a dynamic caching policy that adjusts data requests between the cache and disk drive based on estimated delays, considering the sizes of request queues and the number of available erase blocks to optimize processing times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is always retrieved from cache when marked as clean, then data access speed is improved, but cache becomes a bottleneck when queue size becomes large

Engineering Contradiction:
Improvedata access speedVSAvoidcache processing throughput
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent implements a dynamic cache policy that adjusts the cache usage based on real-time queue size conditions. When the cache queue size exceeds a threshold, the policy dynamically switches to retrieve data directly from the disk drive instead of cache, even if the data is marked as clean. This dynamic adjustment prevents the cache from becoming a bottleneck while maintaining fast access paths when the cache is efficient.

Inventive Principle:
Principle #15Dynamics

2Loss of time

If cache queue size becomes large while disk drive queue is small, then cache access time increases, but system complexity increases due to dynamic policy adjustment

Engineering Contradiction:
Improvecache access timeVSAvoidcache policy complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent employs a feedback mechanism that continuously monitors the queue sizes of both the cache and disk drive, and adjusts the cache policy based on these conditions. The policy manager receives feedback about queue depths and dynamically modifies retrieval strategies accordingly, creating a closed-loop control system that optimizes performance based on actual system state without requiring complex predictive models.

Inventive Principle:
Principle #23Feedback

3Speed

If NAND flash cache is used for faster access, then data access speed is improved, but erase block reclamation operations cause bottlenecks

Engineering Contradiction:
Improvedata access speedVSAvoiderase block reclamation time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent proactively monitors the number of available erase blocks in the NAND flash cache and predicts when erase block reclamation will be needed. By detecting conditions that indicate upcoming reclamation operations (such as low available erase block counts), the system can take preliminary action by switching to direct disk drive access before the reclamation bottleneck occurs, thereby maintaining data access performance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7886110B2Dynamically adjusting cache policy based on device load in a mass storage system
Publication Date: 2011.02.08 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US7886110B2 patent drawing
  • US7886110B2 patent drawing
  • US7886110B2 patent drawing

AI summary

A dynamic cache policy manager for a mass memory may be used to decide whether a data request is to be routed to the cache or directly to the mass memory, based on estimated delays in processing the request. The choice may be based, at least partially, on the size of the respectively queues for the cache and mass memory. For write requests, the choice may be based on how many erase blocks are available in the cache.