Cache Management Method for Multi-Core Workload Prioritization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cache management methods for computing devices, particularly in multi-threaded and multi-core architectures, result in low space utilization and poor performance due to treating all cache accesses equally, failing to meet the varying Quality of Service (QoS) demands of different workloads.

Innovation Solution

A cache management method that classifies workloads based on cache architecture, cache level characteristics, and workload differences, configuring priorities and dynamically adjusting resource allocation to meet specific QoS requirements across multiple cache levels, using techniques like instruction and data separation (IDS) and age-based priority strategies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a unified cache management method is used for all workloads, then the cache management is simple, but the space utilization and performance are low

Engineering Contradiction:
Improvecache management simplicityVSAvoidcache performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the cache management system by introducing multiple cache management policies (first policy for local cache, second policy for shared cache) and classifying workloads into different categories (e.g., high-priority vs. low-priority, different application types). This segmentation allows each workload type to receive appropriate management treatment, resolving the contradiction between simplicity and performance by making the management system adaptively complex only where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic cache management by allowing the system to switch between different management policies based on workload characteristics. The cache controller dynamically selects which policy to apply based on the type of workload being executed, enabling the system to adapt to changing conditions and optimize performance without requiring a completely complex static structure.

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If cache resources are allocated equally to all workloads, then the allocation is fair and simple, but the QoS requirements of different workloads are not met

Engineering Contradiction:
Improveresource allocation simplicityVSAvoidQoS guarantee
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent applies local quality by allocating different cache management strategies to different workload types based on their specific QoS requirements. High-priority workloads receive more aggressive cache retention policies while low-priority workloads receive standard policies, ensuring that each workload's local requirements are met without requiring complex global optimization.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes key parameters such as cache replacement policies, allocation ratios, and management strategies based on workload characteristics. By adjusting these parameters dynamically according to the specific needs of different workloads, the system can guarantee QoS requirements while maintaining relatively simple allocation mechanisms.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If the cache management scheme is optimized for specific workloads, then the performance is improved, but the adaptability to different workload types is reduced

Engineering Contradiction:
Improvecache performanceVSAvoidworkload adaptability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent achieves universality by designing a cache management system that can handle multiple workload types through a unified framework. The system provides multiple management policies that can be selected based on workload characteristics, allowing the same hardware infrastructure to serve diverse workloads (single-threaded, multi-threaded, database, web server, etc.) with appropriate optimization for each type.

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

Solution Approach 2:

The patent implements dynamic adaptability by enabling the cache controller to automatically select appropriate management policies based on detected workload characteristics. This dynamic behavior allows the system to adapt to different workload types without requiring manual configuration, maintaining both performance optimization and versatility.

Inventive Principle:
Principle #15Dynamics

4Reliability

If monitoring and adjustment mechanisms are added to the cache management system, then the QoS is improved, but the system complexity increases

Engineering Contradiction:
ImproveQoS qualityVSAvoidmanagement system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent incorporates feedback mechanisms where the cache controller monitors workload characteristics and performance metrics, then adjusts cache management policies accordingly. This feedback loop enables automatic optimization of QoS without requiring complex manual intervention, as the system self-adjusts based on observed conditions while maintaining relatively simple operational complexity.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11099999B2Cache management method, cache controller, processor and storage medium
Publication Date: 2021.08.24 CHENGDU HAIGUANG INTEGRATED CIRCUIT DESIGN CO LTD
  • US11099999B2 patent drawing
  • US11099999B2 patent drawing
  • US11099999B2 patent drawing

AI summary

A cache management method for a computing device, a cache controller, a processor and a processor readable storage medium are disclosed. The cache management method for the computing device includes classifying a workload on a cache based on a cache architecture of the computing device, characteristics of a cache level of the cache and a difference in the workload on the cache, and configuring a priority for the classified workload; and allocating a cache resource and performing cache management according to the configured priority.