Opportunistic Cache Replacement Policy for Multi-Threaded Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multithreaded processing systems, concurrent cache accesses lead to performance issues due to the need for expensive dual-port or multi-port memories to handle simultaneous updates in replacement policy storage, which also increase complexity and power consumption.

Innovation Solution

Implementing a cache management system with an update module that filters and selectively inhibits updates to the replacement policy storage based on access types, allowing only specific updates to proceed while discarding others, thereby reducing traffic and enabling the use of single-port memories.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If dual-port or multi-port memories are used to handle simultaneous updates in replacement policy storage, then concurrent cache access performance is improved, but device complexity and power consumption increase

Engineering Contradiction:
Improveconcurrent cache access performanceVSAvoidmemory port complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the update operation from the critical cache access path by implementing a separate update module that handles replacement policy storage updates independently. This allows the main cache access to proceed without waiting for update completion, effectively decoupling the read/write paths and eliminating the need for dual-port memories while maintaining concurrent access performance

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent employs a simple update counter mechanism instead of complex dual-port memory structures. The counter tracks pending updates and uses straightforward arbitration logic to handle concurrent access requests, replacing expensive multi-port memory hardware with inexpensive counting and arbitration circuitry that achieves the same functional goal with reduced complexity

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

2Productivity

If dual-port or multi-port memories are used to handle simultaneous updates in replacement policy storage, then concurrent cache access performance is improved, but power consumption increases

Engineering Contradiction:
Improveconcurrent cache access performanceVSAvoidmemory power consumption
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

By extracting the update function from the main cache access path and placing it in a separate update module, the patent eliminates the need for simultaneous read/write operations that would require power-hungry dual-port memories. The separated architecture allows standard single-port memory to be used, significantly reducing power consumption while maintaining concurrent access capability

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces power-intensive dual-port memory structures with low-power update counters and simple arbitration logic. The counter-based mechanism requires minimal switching activity and can be implemented with low-power circuitry, achieving concurrent access performance without the high power cost of multi-port memory hardware

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Quantity of substance

If update requests are filtered based on access type, then update traffic to replacement policy storage is reduced, but update module complexity increases

Engineering Contradiction:
Improveupdate traffic volumeVSAvoidupdate module structure
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent applies different update policies to different access types locally within the update module. Load accesses trigger updates to the replacement policy storage, while store accesses do not. This localized differentiation is implemented through simple access type detection and conditional update logic, reducing overall update traffic without requiring complex global control structures

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8966183B2Opportunistic cache replacement policy
Publication Date: 2015.02.24 NXP USA INC
  • US8966183B2 patent drawing
  • US8966183B2 patent drawing
  • US8966183B2 patent drawing

AI summary

A cache management system employs a replacement policy in a manner that manages concurrent accesses to cache. The cache management system comprises a cache, a replacement policy storage for storing replacement statuses of cache lines of the cache, and an update module. The update module, comprising access filtering and a concurrent update handling, determines how updates to the replacement policy storage are handled. In a multi-threaded compute environment, a concurrent access to shared cache causes a selective update to the replacement policy storage.