Multicore CPU Power Allocation by Thread Priority Under Power Limits
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Power allocation to sets of multicore central processing units (CPUs) is inefficient, necessitating improved techniques for optimizing power distribution based on thread priority.
Innovation Solution
A system and method for allocating power differentially among multicore processors by dividing workloads into low, medium, and high priority threads, adjusting power distribution and performance to maximize high priority thread performance within power and temperature constraints, using an API to specify thread priorities and constraints, and firmware to manage power allocation across processors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If power is allocated uniformly to all processors, then power distribution is simple and stable, but performance of high-priority threads is limited
Solution Approach 1:
The patent implements differential power allocation where different processors receive different power levels based on the priority of threads they execute. High-priority threads are assigned to processors that receive higher power allocation, while low-priority threads receive standard power. This local differentiation of power quality resolves the contradiction by optimizing performance where needed without uniformly increasing complexity across the entire system.
Solution Approach 2:
The system dynamically adjusts power allocation to processors based on real-time thread priority assignments and workload characteristics. The power management controller continuously monitors thread priorities and reconfigures power distribution accordingly, allowing the system to adapt power resources to performance requirements without static complexity.
2Productivity
If power is increased to all processors, then overall performance improves, but energy consumption exceeds the power budget
Solution Approach 1:
Instead of uniformly increasing power to all processors, the patent applies power increases locally only to processors handling high-priority threads. This selective power allocation improves critical workload performance while maintaining energy efficiency for less important tasks, resolving the contradiction between overall performance improvement and power budget constraints.
Solution Approach 2:
The system applies excessive power allocation only partially - specifically to processors executing high-priority threads - rather than to the entire processor fleet. This partial application of excessive action achieves the necessary performance boost for critical workloads without the prohibitive energy cost of universally increasing power to all processors.
3Loss of energy
If power is reduced to meet energy efficiency goals, then energy consumption decreases, but performance of critical threads suffers
Solution Approach 1:
The patent ensures that processors handling critical high-priority threads receive sufficient power allocation to maintain their performance, while processors handling low-priority threads operate at reduced power levels. This local quality differentiation resolves the contradiction by protecting critical performance while achieving energy efficiency in non-critical areas.
Solution Approach 2:
The system applies reduced power allocation partially - only to processors executing low-priority threads - while maintaining adequate power for high-priority thread processors. This selective power reduction achieves energy efficiency goals without compromising the performance of critical workloads.
Data Source
AI summary
Apparatuses, systems, and techniques to allocate power to one or more processors. In at least one embodiment, processors or computing systems perform an API to allocate power to one or more processors based, at least in part, on indications of priority of one or more threads to be performed by the one or more processors.


