Broadcast Prediction Data Structure for Memory Request Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In shared memory computing systems, cache misses significantly limit performance due to increased latency and bandwidth requirements, and conventional methods to reduce cache misses often incur additional costs and performance penalties, particularly in clustered systems where global bandwidth is a concern.

Innovation Solution

The implementation of a broadcast prediction data structure that determines whether to perform an early global broadcast of a memory request by tracking the ownership history of cache lines, allowing for concurrent or alternative broadcasting based on prediction data, thereby reducing unnecessary global pumps and network traffic.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If global broadcasts are performed for every memory request, then cache coherence is maintained, but bandwidth consumption and latency increase

Engineering Contradiction:
Improvecache coherenceVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system performs preliminary actions by maintaining a broadcast prediction data structure that records historical broadcast patterns and cache line ownership information before actual broadcasts occur. This allows the system to predict which memory requests will result in actual cache coherence issues and prepare appropriate responses in advance, avoiding unnecessary global broadcasts while maintaining coherence where needed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms by continuously monitoring cache line ownership status and broadcast outcomes, then using this information to update the broadcast prediction data structure. This feedback loop enables the system to learn from previous broadcast experiences and adjust future broadcast decisions, reducing unnecessary broadcasts while maintaining coherence reliability.

Inventive Principle:
Principle #23Feedback

2Loss of energy

If broadcast prediction data structure is implemented, then unnecessary global broadcasts are reduced, but device complexity increases

Engineering Contradiction:
Improvebandwidth consumptionVSAvoiddata structure complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The system creates a simplified copy of cache line ownership information in the broadcast prediction data structure, rather than maintaining full complex ownership tracking mechanisms. This copy contains only the essential information needed for prediction (such as recent ownership history and broadcast patterns), reducing the complexity burden while enabling effective broadcast decisions.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent applies local quality by making the broadcast prediction data structure specific to individual cache lines and processing units, rather than implementing a system-wide complex prediction mechanism. Each cache line maintains its own prediction state based on local access patterns, allowing simple per-line predictions without requiring complex global coordination.

Inventive Principle:
Principle #3Local quality

3Reliability

If cache size is increased to reduce cache misses, then cache hit rate improves, but cost and space requirements increase

Engineering Contradiction:
Improvecache hit rateVSAvoidcache size
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system performs preliminary actions by predicting cache line ownership and broadcast requirements before actual memory requests occur. This prediction capability allows the cache to make more effective use of its limited space by anticipating which cache lines are likely to be accessed and preparing appropriate broadcast responses, thereby improving cache hit effectiveness without requiring larger cache capacity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8874853B2Local and global memory request predictor
Publication Date: 2014.10.28 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8874853B2 patent drawing
  • US8874853B2 patent drawing
  • US8874853B2 patent drawing

AI summary

A method, circuit arrangement, and design structure utilize broadcast prediction data to determine whether to globally broadcast a memory request in a computing system of the type that includes a plurality of nodes, each node including a plurality of processing units. The method includes updating broadcast prediction data for a cache line associated with a first memory request within a hardware-based broadcast prediction data structure in turn associated with a first processing unit in response to the first memory request, the broadcast prediction data for the cache line including data associated with a history of ownership of the cache line. The method further comprises accessing the broadcast prediction data structure and determining whether to perform an early broadcast of a second memory request to a second node based on broadcast prediction data within the broadcast prediction data structure in response to that second memory request associated with the cache line.