CPU Load Tracker and Booster for Dynamic QoS Frequency Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing CPU technologies face challenges in dynamically adjusting performance to meet urgent high-performance demands while minimizing power consumption and heat generation, particularly in mobile environments where power constraints are significant.

Innovation Solution

A method for a CPU that includes a load tracker and a booster to sense idle tasks, generate events, and set a Quality of Service (QoS) minimum value, controlling dynamic voltage and frequency scaling (DVFS) to optimize performance and power usage by dynamically adjusting the operating frequency and voltage based on task status.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If the DVFS governor limits power consumption by not immediately increasing operating frequency to maximum, then power consumption is reduced, but performance response to urgent high-performance demands is delayed

Engineering Contradiction:
Improvepower consumptionVSAvoidperformance response speed
Core Design Contradiction:
Use of energy by moving objectVSProductivity

Solution Approach 1:

The system dynamically adjusts the QoS minimum frequency threshold based on system state. When idle tasks are detected, the QoS minimum frequency is lowered to enable faster performance response. When high-performance tasks are detected, the QoS minimum frequency is raised to ensure immediate maximum frequency activation. This dynamic adjustment resolves the contradiction by making the frequency control adaptable to different system conditions rather than using a fixed conservative threshold.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention changes the QoS minimum frequency parameter based on task type detection. By monitoring whether idle tasks are present in the system, the load tracker dynamically modifies the QoS minimum frequency value, allowing the system to switch between power-saving mode (lower QoS minimum) and performance mode (higher QoS minimum). This parameter change enables the system to optimize both power consumption and performance response speed under different operating conditions.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the CPU operates at maximum frequency to satisfy high-performance demands, then performance is improved, but power consumption and heat generation increase

Engineering Contradiction:
ImproveperformanceVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The invention segments the frequency control into two distinct thresholds: QoS minimum frequency and governor maximum frequency. The QoS minimum frequency acts as a lower bound that can be dynamically adjusted based on system state, while the governor maximum frequency remains the upper bound for power management. This segmentation allows the system to operate at different frequency levels appropriately - using maximum frequency only when necessary and lower frequencies when sufficient, thereby resolving the contradiction between performance and power consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The load tracker continuously monitors system state and periodically adjusts the QoS minimum frequency threshold based on detected task types. This periodic adjustment creates a rhythm of power-saving operation during idle periods and high-performance operation when needed, allowing the CPU to alternate between low-power and high-performance states rather than maintaining maximum frequency continuously, thus resolving the power-performance trade-off.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10496149B2Method of operating CPU and method of operating system having the CPU
Publication Date: 2019.12.03 SAMSUNG ELECTRONICS CO LTD
  • US10496149B2 patent drawing
  • US10496149B2 patent drawing
  • US10496149B2 patent drawing

AI summary

A method of operating a CPU including a memory for storing a load tracker and a booster and a core for executing the load tracker and the booster includes determining, by the load tracker, whether an idle task is executed in the core, generating, by the load tracker, an event corresponding to a result of the determination, broadcasting, by the load tracker, a generated event to the booster, and setting, by the booster, a QoS minimum value of the core based on the event. The method of operating a CPU may further include registering, by the load tracker, an idle start worker callback and an idle end worker callback in an idle module when the CPU is initialized, and generating, by the load tracker, an idle start worker and an idle end worker when the CPU is initialized.