Cache Data Demotion Instruction for Multi-Core Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-core processors, data cached in one core can lead to delays when accessed by other cores, as moving cache data from in-core to last-level caches is time-consuming, especially when data is in an exclusive or modified status.

Innovation Solution

A cache data demotion instruction is introduced to proactively move cache data from in-core to out-of-core cache structures, using a software and hardware interface that updates cache tables to manage cache status, allowing data to be automatically demoted from in-core caches to a shared or invalid status without being retained in the source core, thereby reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If cache data is kept in in-core cache structure, then access speed and latency are improved for the core, but data cannot be shared efficiently across cores and causes delays when accessed by other cores

Engineering Contradiction:
Improvecache access speedVSAvoiddata retrieval delay
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent applies preliminary action by proactively demoting cache data from in-core cache to out-of-core cache structure before other cores need to access it. The system monitors cache status and automatically initiates demotion operations to prepare data for sharing across cores, preventing access delays before they occur. This is achieved through the demotion mechanism that transfers data from exclusive/modified status in in-core cache to shared status in out-of-core cache, allowing multiple cores to access the data simultaneously without waiting for the original core to release it.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If cache data is moved to last-level cache, then data sharing across cores is improved, but the movement process is time-consuming

Engineering Contradiction:
Improvedata sharing capabilityVSAvoiddata movement time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary demotion actions by automatically transferring cache data from in-core to out-of-core cache structure before explicit sharing is needed. This proactive approach reduces the time required for subsequent data sharing operations, as the data is already positioned in the appropriate cache level and status. The demotion mechanism handles this automatically based on cache status monitoring, eliminating manual intervention delays.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The cache system implements self-service through automatic demotion operations. The system monitors its own cache status and autonomously decides when and how to demote data without external control. This self-managed approach eliminates the overhead of centralized control and reduces the time required for data sharing, as the cache structure itself manages its own state and performs necessary transitions automatically based on predefined policies.

Inventive Principle:
Principle #25Self-service

3Reliability

If cache data is in exclusive or modified status, then data consistency is maintained in the source core, but data cannot be shared or accessed by other cores

Engineering Contradiction:
Improvedata consistencyVSAvoiddata accessibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent applies preliminary action by proactively changing cache status from exclusive/modified to shared before other cores need to access the data. The system monitors cache status and automatically initiates demotion operations to prepare data for sharing, preventing access delays before they occur. This is achieved through the demotion mechanism that transfers data from exclusive/modified status in in-core cache to shared status in out-of-core cache, allowing multiple cores to access the data simultaneously without waiting for the original core to release it.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements dynamics by making cache status changeable and adaptable. Instead of fixed exclusive or modified status, the cache system dynamically transitions between different status states (exclusive, modified, shared, invalid) based on operational needs. This dynamic status management allows the same cache data to serve different purposes - maintaining consistency when needed while enabling sharing when appropriate - thereby resolving the contradiction between reliability and adaptability.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12038839B2Processor and method for designating a demotion target to be demoted from an in-core cache structure to an out-of-core cache structure
Publication Date: 2024.07.16 VIA ALLIANCE SEMICON CO LTD
  • US12038839B2 patent drawing
  • US12038839B2 patent drawing
  • US12038839B2 patent drawing

AI summary

A processor and a method for designating a demotion target to demote the demotion target from an in-core cache structure to an out-of-core cache structure is shown. In response to a cache data demotion instruction supported by an instruction set architecture, a first core of a processor operates a decoder to decode the cache data demotion instruction into microinstructions. According to the microinstructions, a demotion target designation request is transferred to a last-level cache (LLC) through a memory order buffer to drive the LLC to query an out-of-core cache table. According to the demotion target's cache status in the first core obtained from the out-of-core cache table, the LLC outputs a snoop request to the first core to snoop on the demotion target and demote the demotion target from the in-core cache structure of the first core to the LLC.