Shared Cache Repartitioning Using Theft-Based Contention Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cache partitioning methods in multi-core processors lead to performance loss, unfairness, and lack of Quality of Service guarantees due to naive partitioning and inadequate understanding of cache utilization and contention under increasing core scaling.

Innovation Solution

Implementing theft-based contention analysis and probabilistic sampling to estimate cache contention, using agnostic contention estimation and gradient-boosting-tree models for re-partitioning, which allows for efficient and fair cache management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If naive cache partitioning is used in multi-core processors, then cache resources can be allocated to multiple cores, but performance loss and unfairness occur due to inadequate understanding of cache utilization and contention

Engineering Contradiction:
Improvecache partitioning capabilityVSAvoidsystem performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system performs preliminary profiling of cache access patterns and workload characteristics before partitioning. By analyzing cache utilization and contention metrics in advance, the system can make informed partitioning decisions that prevent performance degradation rather than reacting to it afterward.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts partitioning parameters based on observed cache behavior and workload characteristics. By changing partitioning configurations according to measured performance metrics, the system optimizes cache allocation to maintain high productivity while providing adaptability.

Inventive Principle:
Principle #35Parameter changes

2Power

If more cores are added to increase processing power, then computing capacity increases, but cache contention increases due to scarce and shared cache resources

Engineering Contradiction:
Improvecomputing capacityVSAvoidcache contention
Core Design Contradiction:
PowerVSObject-affected harmful factors

Solution Approach 1:

The shared cache is segmented into dedicated partitions for different cores or core groups. This segmentation reduces contention by providing each core with its own cache space, eliminating the harmful effect of cache conflicts while maintaining the benefits of multiple cores for increased computing capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary cache management layer that mediates access between multiple cores and the shared cache resources. This intermediary monitors and manages cache allocation dynamically, reducing contention effects while preserving the increased computing power provided by multiple cores.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If traditional cache monitoring methods are used, then cache operations can be tracked, but accurate contention measurement is insufficient leading to suboptimal partitioning decisions

Engineering Contradiction:
Improvecache monitoring capabilityVSAvoidcontention measurement accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The system replaces traditional mechanical counting methods with probabilistic sampling techniques for monitoring cache operations. This substitution provides more accurate contention measurements by statistically analyzing cache access patterns, enabling better partitioning decisions while maintaining ease of operation.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The system implements feedback mechanisms that continuously monitor cache performance metrics and use this information to refine partitioning decisions. By measuring contention accurately and feeding this information back into the partitioning algorithm, the system achieves both ease of operation and high measurement precision.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12566707B2Systems and methods for cache analysis and management
Publication Date: 2026.03.03 TRUSTEES OF TUFTS COLLEGE
  • US12566707B2 patent drawing
  • US12566707B2 patent drawing
  • US12566707B2 patent drawing

AI summary

Systems, methods, and media for managing a shared memory cache in a computing system. The management of the shared memory cache can include, for example, determining cache statistics by probabilistically sampling the memory cache: estimating contention of the memory cache based on capturing theft-based contention; and re-partitioning the memory cache based on the cache statistics and the estimated contention. The cache statistics can include thefts and interferences associated with a plurality of cores of the computing system.