Thread Scheduling Based on Power Consumption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies fail to effectively manage power consumption and thermal dissipation in multi-threaded and multi-core processors, leading to increased energy costs, reliability issues, and potential thermal runaway, which are not adequately addressed by existing solutions for multi-threaded systems.

Innovation Solution

A method for scheduling threads based on predicted power consumption, selecting a subset of threads to run during each context switch interval to minimize peak power and temperature, using hardware resources and kernel software capabilities to ensure efficient thermal management and reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Power

If threads are scheduled without considering power consumption, then processor productivity is maintained, but peak power consumption increases and thermal dissipation becomes unmanageable

Engineering Contradiction:
Improvepeak power consumptionVSAvoidprocessor throughput
Core Design Contradiction:
PowerVSProductivity

Solution Approach 1:

The scheduling policy dynamically adjusts thread selection based on real-time power consumption measurements and thermal state. The system transitions from static scheduling to dynamic thermal-aware scheduling, where the scheduler modifies its behavior according to current power conditions and thermal dissipation capabilities.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention changes the scheduling parameters by introducing power consumption thresholds and thermal state variables into the scheduling decision process. Threads are classified based on their power consumption characteristics, and the scheduler adjusts thread mix to maintain power consumption within acceptable thresholds while maximizing productivity.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If high power consumption threads are executed continuously, then processor productivity is maximized, but temperature rise causes thermal runaway and IC failure

Engineering Contradiction:
Improveprocessor throughputVSAvoidIC reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements feedback mechanisms by continuously monitoring power consumption and thermal state, then using this information to adjust thread scheduling decisions. The scheduler receives feedback about current power usage and thermal conditions, and modifies its scheduling policy accordingly to prevent thermal runaway while maintaining productivity.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The invention performs preliminary classification of threads based on their power consumption characteristics before scheduling. By pre-characterizing threads as high-power or low-power consumers, the system can proactively balance the thread mix to prevent excessive temperature rise before thermal runaway occurs, rather than reacting after the problem arises.

Inventive Principle:
Principle #10Preliminary action

3Temperature

If cooling systems are enhanced to manage thermal dissipation, then temperature control is improved, but packaging cost increases

Engineering Contradiction:
Improvethermal dissipationVSAvoidpackaging cost
Core Design Contradiction:
TemperatureVSEase of manufacture

Solution Approach 1:

The system uses software-based thermal management through intelligent thread scheduling to control temperature, rather than relying on enhanced hardware cooling systems. By self-regulating power consumption through scheduling decisions, the system reduces the need for expensive cooling infrastructure and simplifies packaging requirements.

Inventive Principle:
Principle #25Self-service

4Use of energy by moving object

If thread scheduling is optimized for power consumption, then energy efficiency is improved, but complexity of scheduling algorithm increases

Engineering Contradiction:
Improveenergy consumptionVSAvoidscheduling algorithm complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The scheduling algorithm is segmented into distinct components: thread classification based on power characteristics, power consumption measurement and monitoring, thermal state assessment, and scheduling decision generation. This modular segmentation makes the complex algorithm more manageable and implementable by breaking it into discrete functional blocks.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8656408B2Scheduling threads in a processor based on instruction type power consumption
Publication Date: 2014.02.18 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8656408B2 patent drawing
  • US8656408B2 patent drawing
  • US8656408B2 patent drawing

AI summary

Guiding OS thread scheduling in multi-core and/or multi-threaded microprocessors by: determining, for each thread among the active threads, the power consumed by each instruction type associated with an instruction executed by the thread during the last context switch interval; determining for each thread among the active threads, the power consumption expected for each instruction type associated with an instruction scheduled by said thread during the next context switch interval; generating at least one combination of N threads among the active threads (M), and for each generated combination determining if the combination of N threads satisfies a main condition related to the power consumption per instruction type expected for each thread of the thread combination during the next context switch interval and to the thread power consumption per instruction type determined for each thread of the thread combination during the last context switch interval; and selecting a combination of N threads.