DFVS Multiprocessor Power Optimization via Linear Programming

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing power management techniques for processors in mobile devices, such as Dynamic Voltage and Frequency Scaling (DVFS), are limited in handling concurrent tasks with cyclic dependencies and assume continuous frequency levels, leading to suboptimal power consumption and real-time requirement challenges.

Innovation Solution

Formulating tasks into a graph with defined dependencies and allowable discrete frequencies, solving a linear programming problem to minimize power dissipation across processors, with instructions or a local supervisor controlling operating point switches to optimize power consumption while meeting real-time requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If DVFS is used to reduce power consumption by lowering frequency and voltage, then energy consumption decreases, but processing speed and real-time requirement fulfillment deteriorate

Engineering Contradiction:
Improvepower consumptionVSAvoidprocessing speed
Core Design Contradiction:
Use of energy by moving objectVSSpeed

Solution Approach 1:

The patent implements dynamic frequency and voltage scaling by allowing each processor to independently switch between multiple operating points based on real-time task requirements. The system dynamically adjusts operating parameters during runtime rather than using static configurations, enabling processors to adapt their performance and power consumption characteristics to match actual computational demands while fulfilling real-time deadlines

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes physical parameters (frequency and voltage) of processor operation by defining discrete operating points with specific frequency-voltage pairs. The linear programming formulation optimizes selection among these parameter combinations to minimize power consumption while ensuring real-time constraints are met, allowing systematic exploration of the parameter space to find optimal operating conditions

Inventive Principle:
Principle #35Parameter changes

2Use of energy by moving object

If discrete operating points are used instead of continuous frequency levels, then power consumption optimization improves, but system complexity increases

Engineering Contradiction:
Improvepower consumptionVSAvoidsystem complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The patent segments the continuous frequency spectrum into discrete operating points, each with predefined frequency and voltage characteristics. This segmentation simplifies the control problem by providing a finite set of selectable states rather than requiring continuous adjustment, making the system more manageable while still enabling effective power optimization through selective operation at appropriate discrete levels

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The operating points are pre-defined and characterized before runtime execution. The system prepares a finite set of valid frequency-voltage combinations in advance, which are then selected based on real-time requirements. This preliminary characterization simplifies runtime decision-making and reduces computational complexity during actual task execution

Inventive Principle:
Principle #10Preliminary action

3Use of energy by moving object

If linear programming is used to optimize power consumption, then power efficiency improves, but computation time for solving the optimization problem increases

Engineering Contradiction:
Improvepower consumptionVSAvoidcomputation time
Core Design Contradiction:
Use of energy by moving objectVSLoss of time

Solution Approach 1:

The system performs static scheduling and operating point selection at compile time rather than runtime. The linear programming problem is solved in advance to determine the optimal operating point for each task segment, eliminating the need for complex real-time optimization computations. This preliminary action shifts the computational burden to offline preparation, enabling fast runtime execution

Inventive Principle:
Principle #10Preliminary action

4Ease of operation

If all processors switch frequency operating points simultaneously, then synchronization is simplified, but flexibility to optimize individual processor power consumption decreases

Engineering Contradiction:
ImprovesynchronizationVSAvoidpower consumption
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The patent divides the system into independent processor units, each capable of autonomous operating point selection. Instead of forcing simultaneous frequency changes across all processors, each processor independently selects its operating point based on its specific task requirements and power constraints, enabling granular power optimization while maintaining system coordination through the centralized scheduler

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each processor is allowed to have different operating characteristics and frequency selections tailored to its local requirements. The system applies different operating points to different processors based on their individual task loads and power constraints, rather than enforcing uniform frequency changes across the entire system, thereby optimizing local power efficiency

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8966300B2DFVS-enabled multiprocessor
Publication Date: 2015.02.24 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • US8966300B2 patent drawing
  • US8966300B2 patent drawing
  • US8966300B2 patent drawing

AI summary

One or more tasks to be executed on one or more processors are formulated into a graph, with dependencies between the tasks defined as edges in the graph. In the case of a Radio Access Technology (RAT) application, the graph is iterative, whereby each task may be activated a number of times that may be unknown at compile time. A discrete number of allowable frequencies for processors while executing tasks are defined, and the power dissipation of the processors at those frequencies determined. A linear programming problem is then formulated and solved, which minimizes the overall power dissipation across all processors executing all tasks, subject to several constraints that guarantee complete and proper functionality. The switching of processors executing the tasks between operating points (frequency, voltage) may be controlled by embedding instructions into the tasks at design or compile time, or by a local supervisor monitoring execution of the tasks.