Hybrid CPU Thread Sampling for Speed and Power Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Hybrid CPU systems face inefficiencies in optimizing the execution of single-threaded and multithreaded applications, as existing methods require pre-classification of processors based on performance, leading to unnecessary power consumption and thermal issues.
Innovation Solution
A system that dynamically samples application threads to differentiate CPU performance by increasing speed for single-threaded applications and reducing speed for multithreaded applications, using bus ratio adjustments and thermal power prediction to optimize resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If all processors in a multiprocessor system are made to run at high speed to accommodate single-threaded applications, then single-threaded application performance is improved, but power consumption increases
Solution Approach 1:
The system segments processors into different types (first type for single-threaded applications, second type for multithreaded applications) based on their performance characteristics. This segmentation allows each processor type to be optimized for its specific workload, enabling high-speed processing for single-threaded applications while using lower-power processors for multithreaded applications, thus resolving the contradiction between speed and power consumption.
Solution Approach 2:
The system applies local quality by assigning different performance characteristics to different processors based on the specific requirements of applications. High-performance (high-power) processors are allocated to single-threaded applications that benefit from raw speed, while lower-performance (lower-power) processors handle multithreaded applications. This localized optimization resolves the contradiction by ensuring high speed only where it is most beneficial.
2Productivity
If processors are pre-classified by performance type, then application dispatching efficiency is improved, but device complexity increases
Solution Approach 1:
The system employs dynamic processor classification where processors can transition between different types based on runtime conditions and application requirements. Rather than fixed pre-classification, the system dynamically determines whether a processor should operate as type 1 or type 2 based on current workload characteristics, maintaining dispatching efficiency while reducing the complexity of rigid processor classification.
Solution Approach 2:
The system changes processor parameters (such as operational mode, frequency, or configuration) based on the type of application being executed. This allows processors to adapt their characteristics dynamically, improving dispatching efficiency without requiring complex permanent classification schemes. The parameters are adjusted based on runtime analysis of application behavior.
Data Source
AI summary
A hybrid CPU system wherein the plurality of processors forming the hybrid system are initially undifferentiated by type or class. Responsive to the sampling of the threads of a received and loaded computer application to be executed, the function of at least one of the processors is changed so that the threads of the sampled application may be most effectively processed/run on the hybrid system.


