Multiprocessor Cache Prefetch Bandwidth Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multiprocessor systems, the increasing number of processor cores leads to limited off-chip bandwidth due to pin constraints, resulting in latency and inefficient use of resources, as prefetches often go unused and waste limited off-chip bandwidth.

Innovation Solution

A prefetch bandwidth allocator assigns a higher proportion of off-chip bandwidth to processor cores with higher prefetch efficacy scores, based on the effectiveness and timeliness of their prefetched blocks, using a token system to manage and allocate bandwidth efficiently across cores.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the number of processor cores is increased, then processing capabilities are improved, but off-chip bandwidth becomes limited due to pin constraints

Engineering Contradiction:
Improveprocessing capabilitiesVSAvoidoff-chip bandwidth
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system dynamically changes the parameter of bandwidth allocation by adjusting prefetch bandwidth limits for different cores based on their prefetch efficacy scores. This allows the system to adapt bandwidth distribution to match actual prefetch performance, resolving the contradiction between increased core count and limited total bandwidth.

Inventive Principle:
Principle #35Parameter changes

2Loss of time

If prefetching is used to reduce memory access latency, then execution time is reduced, but bandwidth is wasted when prefetched blocks are not used

Engineering Contradiction:
Improvememory access latencyVSAvoidoff-chip bandwidth waste
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The system implements feedback by monitoring prefetch efficacy scores for each core and using this information to dynamically adjust prefetch bandwidth allocation. Cores with higher efficacy scores receive more bandwidth, while those with lower scores receive less, ensuring bandwidth is allocated to prefetches that are actually useful and reducing waste from ineffective prefetching.

Inventive Principle:
Principle #23Feedback

3Ease of operation

If prefetch bandwidth is allocated equally across all cores, then simplicity is maintained, but efficiency decreases when some cores have ineffective prefetches

Engineering Contradiction:
Improvebandwidth allocation simplicityVSAvoidbandwidth utilization efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system applies local quality by allocating different prefetch bandwidth limits to different cores based on their individual prefetch efficacy scores. Instead of uniform allocation, each core receives a customized bandwidth limit that reflects its actual prefetch performance, optimizing overall system efficiency while maintaining manageable complexity through automated score-based differentiation.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8195888B2Multiprocessor cache prefetch with off-chip bandwidth allocation
Publication Date: 2012.06.05 MERCURY KINGDOM ASSETS LIMITED
  • US8195888B2 patent drawing
  • US8195888B2 patent drawing
  • US8195888B2 patent drawing

AI summary

Technologies are generally described for allocating available prefetch bandwidth among processor cores in a multiprocessor computing system. The prefetch bandwidth associated with an off-chip memory interface of the multiprocessor may be determined, partitioned, and allocated across multiple processor cores.