Multi-Processor Power Regime Control for CPU-GPU Performance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-processor computing devices, existing techniques struggle to efficiently allocate power between CPU and GPU, leading to suboptimal performance due to arbitrary or 'best guess' based power limit selections.
Innovation Solution
A computer-implemented method that determines whether a processor is operating in a high-power or low-power regime, selects appropriate control rules, and adjusts power settings to optimize performance while adhering to acoustic and battery drain rate constraints.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If processor power limits are selected based on best guess or arbitrary methods, then device complexity is reduced, but productivity decreases due to suboptimal performance
Solution Approach 1:
The system continuously monitors workload characteristics, processor utilization, and power consumption, then dynamically adjusts power limits for CPU and GPU based on this feedback. This closed-loop control enables optimal performance without complex manual configuration, resolving the contradiction between simplicity and productivity.
Solution Approach 2:
Power limits are transformed from static predetermined values to dynamic parameters that automatically adapt to changing workload conditions. The system adjusts power allocation in real-time based on actual processor utilization and workload type, achieving high productivity while maintaining simple operation through automated adaptation.
2Speed
If CPU is allocated more power than needed, then processing speed is improved, but loss of energy increases due to unused power capacity
Solution Approach 1:
The system intentionally allocates slightly more power to the CPU than the GPU can immediately process, creating a small buffer of excess computational capacity. This partial excess action ensures the CPU never becomes the bottleneck while the system monitors and adjusts to minimize energy waste from unused power capacity.
Solution Approach 2:
The system dynamically changes the power allocation parameters for CPU and GPU based on workload characteristics and processor utilization metrics. By continuously adjusting these parameters, the system optimizes the balance between CPU processing speed and energy efficiency, preventing both bottlenecks and waste.
3Productivity
If GPU is allocated more power, then computational task completion is improved, but device complexity increases due to need for precise power limit selection
Solution Approach 1:
The system implements self-service through automated power limit adjustment based on workload monitoring. Instead of requiring users to manually configure optimal power limits for the GPU, the system autonomously determines and adjusts power allocation based on actual computational needs, achieving high GPU throughput without increasing user-facing complexity.
4Productivity
If processor power is dynamically adjusted, then productivity is improved through optimal power allocation, but device complexity increases due to control mechanisms
Solution Approach 1:
The power control system is integrated into the existing processor management infrastructure, allowing the same control mechanisms to manage both CPU and GPU power allocation. This multi-functional approach achieves optimal total processor performance without requiring separate complex control systems for each processor type.
Data Source
AI summary
A computer-implemented method of controlling power consumption in a multi-processor computing device comprises: determining whether a first processor is operating in a high-power regime or a low-power regime; selecting a first set of control rules that includes a first subset of control rules that apply when the first processor is operating in the high-power regime and a second subset of control rules that apply when the first processor is operating in the low-power regime; determining one or more power settings for the first processor based on the first set of control rules; and causing the first processor to perform one or more operations based on the one or more power settings.


