L1 L2 Cache Eviction Policy Based on Read Write Access Patterns

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory caching systems face challenges in optimizing the transfer of data between level one (L1) and level two (L2) operating system caches, particularly due to differences in read and write performance characteristics of memory technologies used in these caches.

Innovation Solution

A method is introduced to determine whether data evicted from the L1 cache should be moved to the L2 cache by tracking and comparing the relative frequency of read and write access, using values that increase or decrease based on access types, and applying these values to decide the suitability of data for transfer, considering the performance characteristics of the L2 cache.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is moved from L1 cache to L2 cache, then storage capacity is improved, but access time may increase due to slower L2 cache performance

Engineering Contradiction:
Improvecache storage capacityVSAvoiddata access time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent applies local quality by differentiating data based on access patterns (read-intensive vs. write-intensive) and directing different types of data to different cache locations. The system assigns a characteristic value to each data element that reflects its access pattern, and uses this to determine optimal placement in either L1 or L2 cache, thereby optimizing access time for each data type while utilizing available cache capacity.

Inventive Principle:
Principle #3Local quality

2Productivity

If L2 cache is used for all evicted data, then cache utilization is improved, but performance deteriorates due to L2 cache's slower read/write characteristics

Engineering Contradiction:
Improvecache utilizationVSAvoidcache access speed
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent inverts the conventional approach by not moving all evicted data to L2 cache, but rather selectively keeping certain data in L1 cache based on access patterns. Instead of the traditional policy of moving all data out of L1 to make room, the system identifies read-intensive data and preserves it in L1 despite eviction pressure, thereby maintaining high access speeds for frequently read data while still utilizing L2 cache for write-intensive data.

Inventive Principle:
Principle #13The other way round (Inversion)

3Speed

If read-intensive data is kept in L1 cache, then read access speed is improved, but write access performance deteriorates due to L1 cache fullness

Engineering Contradiction:
Improveread access speedVSAvoidwrite access throughput
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent implements self-service by enabling data elements to effectively 'choose' their own cache location based on their access patterns. Each data element is assigned a characteristic value that reflects whether it is read-intensive or write-intensive, and the system automatically directs read-intensive data to L1 cache while directing write-intensive data to L2 cache, thereby optimizing performance for each data type without manual intervention.

Inventive Principle:
Principle #25Self-service

4Device complexity

If cache eviction policy is simplified, then system complexity is reduced, but cache performance deteriorates due to inability to optimize for different access patterns

Engineering Contradiction:
Improvecache management complexityVSAvoidcache access speed
Core Design Contradiction:
Device complexityVSSpeed

Solution Approach 1:

The patent applies parameter changes by introducing a characteristic value parameter that changes based on data access patterns. This parameter is used to dynamically adjust the cache eviction decision, transforming the cache management policy from a static, size-based approach to a dynamic, pattern-based approach. The characteristic value serves as an additional dimension for making eviction decisions, enabling optimization for different access patterns without significantly increasing system complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8458402B1Decision-making system and method for improving operating system level 2 cache performance
Publication Date: 2013.06.04 ARCTERA US LLC
  • US8458402B1 patent drawing
  • US8458402B1 patent drawing
  • US8458402B1 patent drawing

AI summary

Various systems and methods can decide whether information being evicted from a level one (L1) operating system cache should be moved to a level two (L2) operating system cache. The L2 operating system cache can be implemented using a memory technology in which read performance differs from write performance. One method involves detecting that a portion of a file (e.g., a page) is being evicted from a L1 operating system cache. In response to detecting the imminent eviction of the portion of the file, the method determines whether the portion of the file has been read more frequently or written more frequently. Based upon this determination (e.g., in response to determining that the portion of the file has been read more frequently, if the L2 cache provides better read than write performance), the method decides to copy the portion of the file to the L2 operating system cache.