Dynamic Cache Allocation for Power and Performance Trade-offs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computer systems face challenges in effectively managing cache and memory hierarchies to balance performance and power consumption, particularly in shared cache environments where multiple tasks compete for resources.

Innovation Solution

A method and system for shared cache allocation in computing systems, which involves allocating resources of a shared cache based on task priorities, monitoring bandwidth at the next-level memory hierarchy device, estimating changes in dynamic power, and adjusting resource allocation to maintain power and performance within predetermined thresholds.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If cache resources are increased to improve task execution performance, then productivity is improved, but use of energy increases

Engineering Contradiction:
Improvetask execution performanceVSAvoiddynamic power consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent implements dynamic cache resource allocation where the cache allocation manager continuously monitors bandwidth metrics and adjusts cache resource allocation in real-time based on actual workload demands. This dynamic adjustment allows the system to optimize between performance and power consumption by allocating more cache resources when performance is needed and reducing allocation when workload is light, thereby resolving the contradiction between productivity and energy use.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters by adjusting cache allocation size and bandwidth thresholds based on monitored performance metrics. By dynamically modifying these parameters according to actual system state, the patent achieves adaptive optimization that balances task execution performance against dynamic power consumption, preventing both over-provisioning and under-provisioning of cache resources.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If cache resources are allocated to maintain quality of service, then reliability is improved, but use of energy increases

Engineering Contradiction:
Improvequality of serviceVSAvoiddynamic power consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent employs a feedback mechanism where the cache allocation manager monitors bandwidth metrics and performance indicators, then uses this feedback to adjust cache resource allocation. This closed-loop control ensures that quality of service requirements are maintained through dynamic adjustment rather than static over-provisioning, thereby maintaining reliability while reducing unnecessary energy consumption during periods of lower demand.

Inventive Principle:
Principle #23Feedback

3Use of energy by moving object

If dynamic cache allocation is implemented to optimize power consumption, then use of energy is reduced, but device complexity increases

Engineering Contradiction:
Improvedynamic power consumptionVSAvoidcache management system complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The system implements self-service through automated cache allocation management where the cache allocation manager autonomously monitors system state, estimates dynamic power consumption, and adjusts cache resource allocation without external intervention. This self-managing approach reduces the need for complex external control mechanisms while achieving power optimization through intelligent, adaptive resource allocation based on actual workload conditions.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12204450B2Dynamic cache resource allocation for quality of service and system power reduction
Publication Date: 2025.01.21 MEDIATEK INC
  • US12204450B2 patent drawing
  • US12204450B2 patent drawing
  • US12204450B2 patent drawing

AI summary

A computing system performs shared cache allocation to allocate cache resources to groups of tasks. The computing system monitors the bandwidth at a memory hierarchy device that is at a next level to the cache in a memory hierarchy of the computing system. The computing system estimates a change in dynamic power from a corresponding change in the bandwidth before and after the cache resources are allocated. The allocation of the cache resources are adjusted according to an allocation policy that receives inputs including the estimated change in the dynamic power and a performance indication of task execution.