Inference Engine Circuitry for Dynamic Uncore-Core Frequency Ratio
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current power management techniques for multi-processor systems-on-chip (MpSoCs) face challenges in efficiently allocating uncore and core frequencies at runtime, leading to sub-optimal power and performance tradeoffs due to reliance on heuristics that require tuning for specific products and struggle with diverse workloads.
Innovation Solution
The implementation of an inference engine with a machine learning model, such as a cubic support vector machine (SVM), that classifies workloads into different categories based on telemetry data, allowing for dynamic adjustment of the uncore-to-core frequency ratio to optimize power and performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If heuristics are used to allocate core and uncore frequencies, then power management can be implemented, but the allocation is sub-optimal and requires product-specific tuning
Solution Approach 1:
The patent changes the approach from fixed heuristic-based frequency allocation to dynamic allocation based on workload classification. The system classifies workloads into different types (e.g., compute-bound, memory-bound, fabric-bound) and adjusts the uncore-to-core frequency ratio parameter accordingly, optimizing power efficiency for each workload type without requiring product-specific tuning
Solution Approach 2:
The system implements self-service by using on-chip inference engine circuitry to automatically classify workloads and determine optimal frequency ratios without external intervention. The classification unit continuously monitors workload characteristics and autonomously adjusts frequency allocation, eliminating the need for manual product-specific configuration
2Device complexity
If fixed frequency ratios are used for uncore and core, then device complexity is reduced, but power and performance optimization for diverse workloads is limited
Solution Approach 1:
The patent introduces dynamics by making the uncore-to-core frequency ratio adjustable based on workload characteristics. Instead of a fixed ratio, the system dynamically changes the frequency allocation according to the classified workload type, enabling adaptation to diverse workloads while maintaining manageable complexity through systematic classification
Solution Approach 2:
The system segments workloads into distinct categories (compute-bound, memory-bound, fabric-bound, etc.) using the inference engine. This segmentation allows different frequency ratio strategies to be applied to different workload types, achieving versatility without requiring complex continuous optimization for every possible workload scenario
3Productivity
If machine learning classification is implemented, then optimal frequency ratio determination is achieved, but device complexity increases
Solution Approach 1:
The patent uses lightweight inference engine circuitry that implements simplified machine learning models (such as decision trees or shallow neural networks) pre-trained offline. These models are deployed as compact lookup tables or simple classification logic on-chip, providing ML-based optimization without the complexity of full training infrastructure, achieving high productivity with minimal added device complexity
Data Source
AI summary
Techniques and mechanisms for determining an operational state of a processor with inference engine circuitry. In an embodiment, inference engine circuitry implements a classification function with which a given workload is classified as belonging to any of multiple possible workload classes. Each of the workload classes corresponds to a different respective value of an uncore-core frequency ratio. The inference engine circuitry receives or otherwise identifies telemetry information which is generated during a particular phase of the workload execution. Based on the telemetry information, the inference engine circuitry generates an output specifying or otherwise indicating a recommended frequency ratio value which corresponds to an identified workload class. In another embodiment, a frequency of a core, or a frequency of uncore resource, is changed based on the recommended frequency ratio value.


