Multilevel Region Coherence Protocol for Clustered Shared-Memory Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing two-level cache coherence protocols in clustered shared-memory multiprocessor systems are inefficient as they consume more SMP node bandwidth and power due to delayed memory requests and lack of spatial locality optimization, and prior proposals like 'pseudo invalid' states and Region Coherence Arrays are suboptimal for clustered systems.

Innovation Solution

A multilevel region coherence protocol that uses one bit per interconnect hierarchy level to indicate the presence of cached data, allowing targeted memory requests and reducing unnecessary broadcasts, thereby optimizing bandwidth, power, and latency by identifying the appropriate levels to send requests and implementing dynamic self-invalidation without discarding external status.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If memory requests are first broadcast to local SMP node before other SMP nodes, then global bandwidth requirements are reduced, but SMP node bandwidth and power consumption increase due to delayed requests

Engineering Contradiction:
Improveglobal bandwidth consumptionVSAvoidSMP node bandwidth and power consumption
Core Design Contradiction:
Loss of energyVSUse of energy by stationary object

Solution Approach 1:

The patent segments the interconnect hierarchy into multiple levels (e.g., L1 cache, L2 cache, L3 cache, system memory) and introduces region coherence state bits at each level to track data presence. This segmentation allows requests to be targeted at specific hierarchy levels based on where data is likely to be found, avoiding unnecessary broadcasts to all SMP nodes while reducing local node bandwidth consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by setting region coherence state bits in advance to indicate which hierarchy levels are likely to contain cached data. When a memory request arrives, the system checks these pre-set state bits to determine the appropriate target level, eliminating the need to broadcast to all levels first. This preliminary tracking of data location information allows direct targeting of requests, reducing both global and local bandwidth consumption.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If pseudo invalid states are used to predict cached data location, then subsequent requests are optimized, but initial requests are delayed and spatial locality beyond cache line is not exploited

Engineering Contradiction:
Improvesubsequent request efficiencyVSAvoidinitial request latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent extends the coherence tracking from individual cache lines to entire regions (spatial dimension) and from temporal reuse to hierarchical level tracking (adding a new dimension). By tracking region coherence state at multiple hierarchy levels simultaneously, the system can optimize both initial and subsequent requests by directing them to the appropriate hierarchy level based on region-wide data presence information, rather than treating each cache line in isolation.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Solution Approach 2:

The patent introduces region coherence state bits as intermediary indicators between the cache hierarchy and the request routing mechanism. These state bits serve as mediators that provide information about data presence at different hierarchy levels, enabling the system to make informed routing decisions for both initial and subsequent requests without requiring full broadcasts, thus reducing latency while maintaining optimization benefits.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of energy

If region coherence tracking is implemented, then bandwidth is optimized, but protocol complexity increases with additional hierarchy levels

Engineering Contradiction:
Improvebandwidth consumptionVSAvoidcache coherence protocol complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent changes the parameter representation by using a single region coherence state bit per hierarchy level instead of maintaining separate tracking information for each cache line or processor. This parameter change simplifies the protocol complexity while maintaining the ability to track data presence across multiple hierarchy levels, as the state bits can be updated en masse based on cache fill and evict operations rather than requiring individual line tracking.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The region coherence state bits serve multiple functions: they track data presence at different hierarchy levels, guide request routing decisions, and enable dynamic self-invalidation. This multi-functionality reduces the need for separate protocol mechanisms for each function, thereby reducing overall protocol complexity while achieving bandwidth optimization across the hierarchical interconnect.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Ease of operation

If dynamic self-invalidation is implemented, then exclusive access is facilitated, but useful external status information is discarded

Engineering Contradiction:
Improveexclusive access acquisitionVSAvoidexternal status information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent implements a refined dynamic self-invalidation mechanism that selectively invalidates region coherence state information only when necessary (when another processor obtains exclusive access), while recovering and preserving the external status information by updating the state bits to reflect the new exclusive owner. This allows the system to facilitate exclusive access while maintaining useful information about data location and ownership for future request routing, preventing information loss.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS8397030B2Efficient region coherence protocol for clustered shared-memory multiprocessor systems
Publication Date: 2013.03.12 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8397030B2 patent drawing
  • US8397030B2 patent drawing
  • US8397030B2 patent drawing

AI summary

A system and method of a region coherence protocol for use in Region Coherence Arrays (RCAs) deployed in clustered shared-memory multiprocessor systems which optimize cache-to-cache transfers by allowing broadcast memory requests to be provided to only a portion of a clustered shared-memory multiprocessor system. Interconnect hierarchy levels can be devised for logical groups of processors, processors on the same chip, processors on chips aggregated into a multichip module, multichip modules on the same printed circuit board, and for processors on other printed circuit boards or in other cabinets. The present region coherence protocol includes, for example, one bit per level of interconnect hierarchy, such that the one bit has a value of “1” to indicate that there may be processors caching copies of lines from the region at that level of the interconnect hierarchy, and the one bit has a value of “0” to indicate that there are no cached copies of any lines from the region at that respective level of the interconnect hierarchy.