Thread Scheduling via Processing Engine Rankings

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer processors with multiple cores face challenges in efficiently managing power and performance due to dynamic changes in processing engine characteristics, such as varying performance over time and temperature, which existing scheduling methods fail to accurately account for.

Innovation Solution

A hardware guide unit is introduced to monitor processing elements and threads, providing rankings and predicted characteristics to the scheduler, enabling more accurate thread allocation and improving performance and efficiency by considering dynamic aspects like power usage and thermal profiles.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional scheduling methods are used, then device complexity is reduced, but measurement precision of processing engine characteristics deteriorates

Engineering Contradiction:
Improvemeasurement precisionVSAvoiddevice complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

A hardware guide unit is introduced as an intermediary component between the processing engines and the scheduler. This guide unit monitors processing engine characteristics, generates rankings based on monitored data, and provides this information to the scheduler, thereby improving measurement precision without requiring the scheduler itself to perform complex monitoring functions.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The guide unit performs preliminary monitoring and ranking of processing engine characteristics before the scheduling decision is made. By pre-processing the characteristic data and generating rankings in advance, the system improves measurement precision while keeping the actual scheduling operation relatively simple.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If dynamic characteristics are monitored, then productivity is improved, but use of energy increases

Engineering Contradiction:
ImproveproductivityVSAvoiduse of energy
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The guide unit monitors processing engine characteristics using information that is already being generated during normal operation. By leveraging existing operational data rather than requiring additional active sensing mechanisms, the system improves productivity through better scheduling decisions while minimizing additional energy consumption.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements a feedback mechanism where the guide unit continuously monitors processing engine characteristics and uses this information to improve scheduling decisions. This feedback loop enhances productivity by enabling more informed scheduling while the energy consumption is managed through efficient use of existing operational data.

Inventive Principle:
Principle #23Feedback

3Loss of energy

If thread allocation is optimized, then power management is improved, but device complexity increases

Engineering Contradiction:
Improveloss of energyVSAvoiddevice complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The guide unit serves as an intermediary that collects and processes information about processing engine characteristics and power consumption. By centralizing this function in a dedicated guide unit rather than distributing it across the entire scheduling system, the patent achieves better power management while controlling overall device complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The scheduling system is segmented into distinct functional components: the guide unit responsible for monitoring and ranking, and the scheduler responsible for decision-making. This segmentation allows each component to be optimized independently, improving power management through specialized functionality while keeping the overall system complexity manageable.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10545793B2Thread scheduling using processing engine information
Publication Date: 2020.01.28 INTEL CORP
  • US10545793B2 patent drawing
  • US10545793B2 patent drawing
  • US10545793B2 patent drawing

AI summary

In an embodiment, a processor includes a plurality of processing engines (PEs) to execute threads, and a guide unit. The guide unit is to: monitor execution characteristics of the plurality of PEs and the threads; generate a plurality of PE rankings, each PE ranking including the plurality of PEs in a particular order; and store the plurality of PE rankings in a memory to be provided to a scheduler, the scheduler to schedule the threads on the plurality of PEs using the plurality of PE rankings. Other embodiments are described and claimed.