Hybrid Processor Core Scheduling with Runtime Telemetry
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing processors lack the ability to guide the operating system to schedule workloads optimally across different types of processor cores, leading to suboptimal power and performance tradeoffs, particularly on hybrid platforms with both SMT and non-SMT cores, which results in poor performance and energy efficiency.
Innovation Solution
Implementing thread runtime telemetry circuitry to dynamically isolate SMT cores for critical tasks and provide real-time hints to the operating system for optimal scheduling, allowing core isolation and efficient utilization of SMT resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by moving object
If workloads are scheduled across multiple modules, then energy efficiency is improved, but performance capability deteriorates
Solution Approach 1:
The system dynamically adjusts workload scheduling decisions based on real-time operational context, workload characteristics, and power management policies. The scheduler can shift between consolidating workloads on fewer modules for performance and spreading them across multiple modules for energy efficiency, adapting to changing system conditions rather than using a static scheduling approach
Solution Approach 2:
The invention changes the scheduling parameter from a fixed assignment to a dynamic decision variable that considers multiple factors including workload type, module capabilities, and power state. By varying these scheduling parameters based on system state, the system optimizes the tradeoff between energy efficiency and performance capability
2Productivity
If workloads are consolidated on a single module, then performance capability is improved, but power consumption increases
Solution Approach 1:
The scheduler dynamically determines when to consolidate workloads based on real-time system state, workload characteristics, and power management policies. Rather than always consolidating for performance, the system adapts its consolidation decisions to balance performance needs against power consumption constraints
Solution Approach 2:
The invention modifies the workload consolidation parameter from a fixed high-performance mode to a variable parameter that adjusts based on system conditions. The scheduler can change consolidation levels dynamically, transitioning between aggressive consolidation for performance and relaxed consolidation for power savings
3Ease of operation
If the operating system schedules work without understanding processor capabilities, then scheduling simplicity is maintained, but scheduling optimality deteriorates
Solution Approach 1:
The invention introduces an intermediary layer between the operating system and processor modules that translates high-level scheduling decisions into optimized assignments. This intermediary handles the complexity of capability matching and power state management, allowing the OS to maintain simple scheduling logic while achieving optimal workload placement through the intermediary's intelligent routing
Solution Approach 2:
The system implements feedback mechanisms where scheduling decisions are continuously refined based on observed system performance and power consumption. The intermediary learns from scheduling outcomes and adjusts future assignments to improve optimality while maintaining the simplicity of the OS scheduling interface
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Apparatus and method for performance and energy efficient compute. One example processor package comprises: an efficient core cluster comprising first cores and one or more caches; a performance core cluster comprising second cores and a second one or more caches; a memory controller to couple the efficient core cluster and the performance core cluster of cores to a memory; wherein responsive to a request for a first cache line originating from the performance core clusterwhich hits the snoop filter, the home agent is to snoop at least one of the first one or more caches to ensure coherency of the first cache line; and wherein responsive to a request for a second cache line originating from the efficient core cluster which misses the snoop filter, the home agent is to snoop at least one of the second one or more caches to ensure coherency of the second cache line.