Adaptive Cache Architecture Configuration for Storage Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage devices often act as bottlenecks in computer systems due to high data access times, and existing cache configurations may not optimize performance for various applications, leading to suboptimal cache hit rates.

Innovation Solution

A storage system with a processor and memory that dynamically configures cache architecture based on configuration parameters such as data placement and replacement characteristics, and cache block or line size, in response to detected data access patterns, allowing for adaptive optimization of cache performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If a cache layer is added to storage devices, then data access time is reduced, but device complexity increases

Engineering Contradiction:
Improvedata access timeVSAvoiddevice complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The cache architecture is made dynamically reconfigurable, allowing the system to switch between different cache configurations (direct mapped, fully associative, set associative) and block sizes based on runtime workload characteristics. This dynamic adaptation enables the cache to optimize performance for different access patterns while maintaining a single physical cache structure, thus reducing the need for multiple fixed-configuration caches.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes cache parameters (associativity, block size, replacement policy) at runtime based on detected workload patterns. By adjusting these parameters dynamically, the system adapts to different application requirements without adding physical complexity, resolving the contradiction between performance improvement and device complexity.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If cache architecture is fixed, then device complexity is reduced, but adaptability to different applications deteriorates

Engineering Contradiction:
Improveadaptability to different applicationsVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The cache system transitions from a static to a dynamic architecture where configuration parameters can be changed at runtime. The system monitors workload characteristics and automatically adjusts cache associativity, block size, and replacement policies to match the current application's access patterns, providing high adaptability without requiring multiple dedicated caches for different applications.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

A single cache structure is designed to perform multiple functions by supporting different configuration modes (direct mapped, set associative, fully associative) and multiple block sizes. This universal cache can adapt to various application types and access patterns, eliminating the need for separate specialized caches while maintaining versatility.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If cache configuration is optimized for one application, then cache hit rate is improved, but versatility for other applications deteriorates

Engineering Contradiction:
Improvecache hit rateVSAvoidversatility for other applications
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The cache configuration is made dynamic rather than static, allowing the system to switch between different optimization settings based on the current application's characteristics. By monitoring access patterns and workload types, the system automatically adjusts associativity, block size, and replacement policies to achieve high hit rates for the current workload while maintaining the capability to adapt to future workloads.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes cache parameters (associativity level, block size, replacement algorithm) at runtime based on detected workload characteristics. This parameter adaptation enables the cache to achieve optimal hit rates for different application types sequentially, providing both high reliability for the current application and versatility for future applications.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP4428695A1Systems and methods for adaptive cache configuration
Publication Date: 2024.09.11 SAMSUNG ELECTRONICS CO LTD
  • EP4428695A1 patent drawingFigure 1
  • EP4428695A1 patent drawingFigure 2
  • EP4428695A1 patent drawingFigure 3

AI summary

Systems and methods for a storage system are disclosed. A method comprises: receiving (300) a request for accessing data; searching (302) a first storage medium based on the request; receiving (304) a command from a computing device, the command including a configuration parameter; and based on the command, modifying (306) architecture of the first storage medium from a first architecture to a second architecture corresponding to the configuration parameter. The storage system includes a first storage medium, a processor configured to communicate with the first storage medium, and a memory coupled to the processor. The memory stores instructions that, when executed by the processor, cause the processor to perform the above method.