Cache Directory Selective Listing for Eviction Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multiprocessor systems, the large number of communication requirements for cache coherence and the frequent eviction operations, particularly affecting pre-loading of instructions, lead to delays and inefficiencies due to the need for regular updates in proxy module directories, which become cumbersome as the number of processors increases.

Innovation Solution

A cache coherence management module that selectively lists only addresses associated with exclusive data states, avoiding the listing of shared data, thereby reducing the need for evictions and optimizing directory space usage by not storing 'shared' or 'invalid' state data in the directory, allowing for reduced updates and improved performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the directory lists all cache memory addresses including shared data, then the directory provides complete information for cache coherence management, but the directory size increases and requires frequent eviction operations

Engineering Contradiction:
Improvecache coherence managementVSAvoiddirectory size
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts shared data entries from the directory listing, maintaining only exclusive and invalid entries. This selective extraction reduces directory size and eviction frequency while preserving cache coherence functionality, as shared data can be managed through other mechanisms without requiring directory entries.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of maintaining a complete directory of all cache entries, the patent applies partial action by listing only necessary entries (exclusive and invalid states). This partial listing is sufficient for maintaining cache coherence while significantly reducing directory overhead and eviction operations.

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If the directory is frequently updated to maintain cache coherence, then cache consistency is ensured, but system performance decreases due to update overhead

Engineering Contradiction:
Improvecache consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

By extracting shared data entries from the directory, the patent eliminates unnecessary update operations for shared data. This reduces the frequency of directory updates and evictions while maintaining cache consistency, thereby improving system performance.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter of directory content by selectively including only exclusive and invalid entries rather than all cache entries. This parameter change reduces the directory update frequency and overhead, improving system performance while maintaining cache coherence.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If eviction operations are performed frequently to manage directory space, then directory size is controlled, but program execution speed decreases due to delays

Engineering Contradiction:
Improvedirectory space managementVSAvoidprogram execution speed
Core Design Contradiction:
Device complexityVSSpeed

Solution Approach 1:

The patent extracts shared data entries from the directory, preventing them from being subject to eviction operations. This eliminates eviction-related delays for shared data while maintaining directory space control through selective listing of only exclusive and invalid entries.

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If the directory maintains complete information about all processors and data, then cache coherence is accurately tracked, but the number of communication requirements increases

Engineering Contradiction:
Improvecache coherence trackingVSAvoidcommunication overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts shared data entries from the directory, reducing the amount of information that requires communication and updates. This reduces communication overhead while maintaining accurate tracking of cache coherence for exclusive and invalid entries through the simplified directory structure.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP2958024B1Reduction of evictions in the management directories of cache memory
Publication Date: 2020.12.16 BULL SA
  • EP2958024B1 patent drawingFigure 1
  • EP2958024B1 patent drawingFigure 2~4
  • EP2958024B1 patent drawingFigure 3

AI summary

Directory-based cache consistency management module, wherein each data stored in cache memory is associated with a state, at least one of which state reflects data sharing between several processors comprising: - a storage unit to store a directory containing a list of cache memory addresses, each address being able to be associated with a state corresponding to the state of the data available at that address, and - a processing unit configured to update said list, said processing unit being configured not to list address lines relating to data associated with said first state.