Dynamic Virtual Processor Manager for Power and Performance Trade-offs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing virtual processor management systems require manual and iterative processes to determine optimal performance settings, which can be inefficient and power-consuming, especially when workload performance is unpredictable.
Innovation Solution
A dynamic virtual processor manager that samples and analyzes utilization, proactively adjusting the number of concurrent hardware threads and distribution among physical processors to meet target performance metrics, such as CPU utilization or response time, by moving logical partitions between shared processor pools with different virtual processor manager modes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If manual and iterative processes are used to determine optimal performance settings, then performance tuning can be achieved, but the process is inefficient and power-consuming
Solution Approach 1:
The system performs self-tuning by automatically monitoring performance metrics, analyzing workload patterns, and adjusting virtual processor allocations without requiring manual administrator intervention. The hypervisor continuously gathers performance data and dynamically reconfigures virtual processor assignments based on observed workload characteristics, enabling the system to optimize itself autonomously.
Solution Approach 2:
The system implements continuous feedback loops where performance metrics are monitored, analyzed, and used to trigger automatic reconfiguration actions. The hypervisor collects performance data from virtual machines, compares it against target thresholds, and dynamically adjusts virtual processor allocations in response to performance deviations, creating a closed-loop control system that continuously optimizes resource allocation.
2Reliability
If dedicated partitions receive exclusive use of configured resources, then performance predictability is improved, but resource utilization efficiency deteriorates
Solution Approach 1:
The system dynamically adjusts virtual processor allocations between dedicated and shared modes based on real-time workload characteristics and performance requirements. The hypervisor continuously monitors workload patterns and automatically reconfigures the partitioning strategy, allowing partitions to transition between dedicated and shared processor modes as conditions change, thereby optimizing both predictability and efficiency.
Solution Approach 2:
The system applies different resource allocation strategies to different partitions based on their specific workload characteristics and performance requirements. Rather than uniformly assigning all partitions to dedicated or shared modes, the hypervisor analyzes individual partition needs and assigns appropriate allocation strategies locally, allowing performance-critical partitions to receive dedicated resources while less demanding partitions share resources efficiently.
3Productivity
If shared partitions receive processor allocation from a pool, then resource utilization efficiency is improved, but performance predictability deteriorates
Solution Approach 1:
The system implements continuous feedback loops where performance metrics are monitored, analyzed, and used to trigger automatic reconfiguration actions. The hypervisor collects performance data from virtual machines, compares it against target thresholds, and dynamically adjusts virtual processor allocations in response to performance deviations, creating a closed-loop control system that continuously optimizes resource allocation.
4Productivity
If the number of concurrent hardware threads per physical processor is increased, then processing capacity is improved, but power consumption increases
Solution Approach 1:
The system dynamically adjusts the number of concurrent hardware threads per physical processor based on real-time workload demands and performance requirements. The hypervisor monitors system state and automatically reconfigures thread allocations, increasing concurrency when processing capacity is needed and reducing it when workloads are light, thereby optimizing the balance between performance and power consumption.
Data Source
AI summary
A method, program product, and system is provided for dynamic virtual processor management in a computer having a plurality of concurrent multi-threaded physical processors. An active logical partition is assigned to one of a plurality of shared processor pools, each shared processor pool having a virtual processor manager mode. A target performance metric for a workload in the active logical partition is compared to a calculated CPU utilization ratio or a calculated response time ratio. The workload in the active logical partition is dynamically moved from the assigned shared processor pool to a logical partition in another of the plurality of shared processor pools based on the target performance metric not being met in the active logical partition, and wherein the logical partition in another of the plurality of shared processor pools is configured to meet the target performance metric.


