Task Scheduling Optimizing Cache Performance in Processor Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current scheduling methods for tasks on a cluster of processor cores are inefficient, particularly in managing cache performance and resource contention, requiring extensive analysis and computational resources, and are not adaptable to dynamic changes in working-set behavior.

Innovation Solution

A method and controller that use machine learning to continuously sample and analyze task relationships based on cache performance, scheduling tasks to optimize cache usage and reduce cache misses, thereby enhancing memory performance and overall system efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If static definitions are used to deploy threads to cores, then optimal placement of tasks can be achieved, but big effort is required in careful studies of working-set behavior and the solution cannot adapt to dynamic effects

Engineering Contradiction:
Improvetask placement optimalityVSAvoidanalysis effort
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent transitions from static thread-to-core definitions to dynamic scheduling decisions made at runtime. The scheduler dynamically determines which threads to migrate between clusters based on current cache utilization and working-set behavior, allowing the system to adapt to changing conditions while maintaining optimal task placement

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs self-optimization by automatically analyzing working-set behavior and making scheduling decisions without requiring external manual analysis. The scheduler monitors cache performance and thread behavior, then autonomously adjusts thread placement to optimize cache utilization, eliminating the need for big effort in careful studies

Inventive Principle:
Principle #25Self-service

2Measurement precision

If system simulations are used to capture required characteristics, then comprehensive analysis can be performed, but big computational resources are required and the work must be repeated for each new software build

Engineering Contradiction:
Improveworking-set characterizationVSAvoidcomputational resources
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent implements feedback mechanisms where the scheduler continuously monitors actual cache performance and thread behavior during runtime. This real-time feedback replaces offline simulations, allowing the system to learn working-set characteristics dynamically without requiring repeated computational simulations for each software build

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary analysis of working-set behavior during initial thread execution, then uses this learned information to make informed scheduling decisions. This approach captures required characteristics without needing comprehensive system simulations, reducing computational resource requirements while maintaining measurement precision

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If threads are scheduled without considering cache sharing, then simple scheduling can be implemented, but cache aliasing effects and resource contention reduce overall system performance

Engineering Contradiction:
Improvescheduling simplicityVSAvoidsystem performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent applies different scheduling strategies to different thread groups based on their cache sharing characteristics. Threads that share working-sets are grouped together in the same cluster to utilize cache effectively, while threads with different working-sets are placed in separate clusters. This localized optimization maintains relative scheduling simplicity while significantly improving system performance by reducing cache aliasing effects

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3523720B1Task scheduling
Publication Date: 2022.07.27 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • EP3523720B1 patent drawingFigure 1
  • EP3523720B1 patent drawingFigure 2~4
  • EP3523720B1 patent drawingFigure 3

AI summary

There is provided mechanisms for scheduling a task from a plurality of tasks to a processor core of a cluster of processor cores. The processor cores share caches. A method is performed by a controller. The method comprises determining group-wise task relationships between the plurality of tasks based on duration of cache misses resulting from running groups of the plurality of tasks on processor cores sharing the same cache. The method comprises scheduling the task to one of the processor cores based on the group-wise task relationships of the task.