Dynamic Cache Ownership Remapping in Clustered Multiprocessors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional chip multiprocessor (CMP) architectures face performance issues due to coherency challenges and significant delays when changes occur in address hash functions, leading to cache flushes and quiescence of entire CMPs, which are inefficient and impact performance.

Innovation Solution

Implementing a dynamic cache hash change mechanism that remaps cache lines between clusters and updates directory information to manage cache ownership changes without quiescing the entire CMP, allowing for efficient handling of address hash changes and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If address hash function changes are implemented in traditional CMP architectures, then cache ownership can be updated, but the entire CMP must be quiesced and cache flushes must be executed, causing significant performance delays

Engineering Contradiction:
Improvecache ownership update capabilityVSAvoidCMP quiescence delay
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent segments the cache system into owner clusters and non-owner clusters, allowing independent management of cache ownership. When an address hash function change occurs, only the affected owner cluster is quiesced and updated, while other clusters continue operating normally. This segmentation eliminates the need to quiesce the entire CMP, reducing the time loss from milliseconds to much shorter durations localized to specific clusters.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If distributed cache is shared by multiple cores to optimize cache usage, then cache flexibility is improved, but coherency challenges increase significantly

Engineering Contradiction:
Improvecache usage flexibilityVSAvoidcoherency management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary mechanism in the form of a directory structure that tracks cache line ownership and location. This directory acts as a mediator between multiple cores and the distributed cache, providing a centralized view of cache state without requiring complex peer-to-peer coherency protocols. The directory enables efficient ownership transfer and coherency maintenance, reducing the overall complexity of managing shared distributed cache across multiple cores.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9940238B2Changing cache ownership in clustered multiprocessor
Publication Date: 2018.04.10 TAHOE RES LTD
  • US9940238B2 patent drawing
  • US9940238B2 patent drawing
  • US9940238B2 patent drawing

AI summary

A chip multiprocessor may include a first cluster and a second cluster, each having multiple cores of a processor, multiple co-located cache slices, and a memory controller. The processor stores directory information in a memory to indicate cluster cache ownership of a first address space to the first cluster. In response to a request to change the cluster cache ownership of the first address space to a second address space of the second cluster, the processor provides a quiesce period during which to block new read or write requests to the first cluster and the second cluster; drain read or write requests issued on the first cluster and the second cluster; and remove the block on new read or write requests. The processor may also update the directory information to change the cluster cache ownership of the first address space to the second address space of the second cluster.