Dynamic Processor Speed Scheduling for Energy Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing job scheduling algorithms struggle to efficiently manage energy consumption while minimizing flow time, especially in non-clairvoyant settings where job volumes are unknown, leading to inefficiencies in processing speed and energy usage.

Innovation Solution

A hybrid approach combining clairvoyant and non-clairvoyant algorithms to determine processing speeds based on job density and volume estimation, using a job scheduler that adjusts speeds dynamically based on real-time weight changes and prioritizes jobs by density, employing a non-clairvoyant algorithm to schedule jobs and estimate speeds through clairvoyant simulation data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If jobs are scheduled to run at the fastest possible speed, then the average flow time is minimized, but the energy consumption increases significantly

Engineering Contradiction:
Improveaverage flow timeVSAvoidenergy consumption
Core Design Contradiction:
Loss of timeVSUse of energy by moving object

Solution Approach 1:

The patent implements dynamic speed adjustment by continuously monitoring job characteristics and system state, then adapting the processor speed accordingly. The scheduler transitions from static fixed-speed operation to dynamic variable-speed operation, allowing the system to optimize between flow time and energy consumption in real-time based on actual job requirements

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the operational parameter of processor speed from a fixed maximum value to a variable parameter that can be adjusted across different operating points. By modifying the speed parameter dynamically based on job density, volume estimates, and priority levels, the system achieves better overall performance than running continuously at maximum speed

Inventive Principle:
Principle #35Parameter changes

2Use of energy by moving object

If the processor runs at slower speed to save energy, then energy consumption is reduced, but the job completion time increases

Engineering Contradiction:
Improveenergy consumptionVSAvoidjob completion time
Core Design Contradiction:
Use of energy by moving objectVSLoss of time

Solution Approach 1:

The patent performs preliminary estimation of job volume and characteristics before fully executing a job. By using clairvoyant algorithm simulations and historical data to predict job requirements in advance, the scheduler can pre-determine appropriate speed levels, avoiding both premature high-speed execution and unnecessarily slow execution

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where the scheduler continuously monitors actual job progress, completion rates, and energy consumption. This feedback is used to adjust future speed decisions, creating a closed-loop control system that learns from past performance and optimizes the balance between energy usage and completion time

Inventive Principle:
Principle #23Feedback

3Use of energy by moving object

If clairvoyant algorithms are used to optimize scheduling, then energy efficiency improves, but the system complexity increases due to required job volume information

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

Solution Approach 1:

The patent uses simulation copies of the clairvoyant algorithm to generate speed recommendations without requiring the actual clairvoyant information. By running simplified simulations that copy the essential logic of optimal scheduling, the system achieves similar energy efficiency benefits while working within the constraints of non-clairvoyant operation

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces an intermediary layer between the simple non-clairvoyant scheduler and the complex clairvoyant optimization. This intermediary uses estimation techniques, historical data, and simulation-based approaches to translate limited available information into informed scheduling decisions, bridging the gap between what information is available and what would be ideal

Inventive Principle:
Principle #24Intermediary (Mediator)

4Use of energy by moving object

If the processor speed is dynamically adjusted based on job characteristics, then energy efficiency improves, but the control complexity increases

Engineering Contradiction:
Improveenergy efficiencyVSAvoidscheduling control simplicity
Core Design Contradiction:
Use of energy by moving objectVSEase of operation

Solution Approach 1:

The patent implements self-service mechanisms where the scheduling system automatically adjusts speeds based on job characteristics without requiring manual intervention or complex external control. The system serves itself by using embedded estimation algorithms and automated decision-making logic to manage its own operational parameters

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9766932B2Energy efficient job scheduling
Publication Date: 2017.09.19 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9766932B2 patent drawing
  • US9766932B2 patent drawing
  • US9766932B2 patent drawing

AI summary

The subject disclosure is directed towards scheduling jobs with a speed for running a processor(s) having variable speeds to save energy yet complete in time, in which the volume of the job is not known in advance, that is, in a non-clairvoyant setting. A non-clairvoyant algorithm uses an existing clairvoyant algorithm to determine the speed based upon information known from running one or more jobs, in full or in part. Also described is rounding jobs based upon their densities into rounding queues so that a hybrid of highest density first rules and FIFO rules may be used to obtain information used by the clairvoyant algorithm.