Multiclient Performance Monitoring Counters for Secure Low-Power VM Metrics
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing profiling circuitry in computing systems is not well suited for generating comprehensive performance monitoring data across all virtual machines and contexts without impacting software application behavior, is power inefficient, and cannot operate continuously for long periods.
Innovation Solution
A performance monitoring subsystem that includes unit level counters and counter collection units, capable of securely and continuously generating performance monitoring data for all virtual machines and contexts, operating independently from profiling circuitry and employing out-of-band monitoring to avoid resource consumption by guest users.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If profiling circuitry is used to generate performance monitoring data across all virtual machines and contexts, then comprehensive performance data can be collected, but power consumption increases significantly and software application behavior is impacted
Solution Approach 1:
The patent divides the performance monitoring function into separate dedicated counters for each virtual machine and context. Each counter independently tracks performance metrics for its specific target, allowing the system to collect comprehensive performance data across all virtual machines without requiring a single monolithic profiling circuit that would consume excessive power and impact application behavior.
Solution Approach 2:
The performance monitoring counters are designed to universally monitor multiple virtual machines and contexts simultaneously. Each counter can track performance metrics across different virtual machines and contexts, enabling comprehensive system-wide monitoring while maintaining power efficiency through standardized counter architecture that can be scaled without proportionally increasing power consumption.
2Measurement precision
If profiling circuitry is expanded to monitor large numbers of metrics concurrently, then comprehensive performance data is obtained, but computing resources and power consumption increase
Solution Approach 1:
The patent segments the performance monitoring task into multiple independent counters, each responsible for tracking metrics for a specific virtual machine or context. This segmentation allows the system to monitor large numbers of metrics concurrently by distributing the monitoring load across multiple simple counter units rather than requiring a single complex profiling circuit, thereby reducing overall device complexity while maintaining comprehensive monitoring capability.
Solution Approach 2:
The performance monitoring architecture implements a hierarchical structure where counters are nested within performance monitoring subsystems, which are in turn nested within the overall computing system. Each counter is a simple unit that can be nested and replicated to monitor multiple levels of abstraction (contexts within virtual machines within physical system), enabling comprehensive monitoring without proportionally increasing complexity at each level.
3Duration of action of stationary object
If profiling circuitry operates continuously for long periods, then sustained performance monitoring is achieved, but the circuitry is not well suited for continuous operation and power efficiency deteriorates
Solution Approach 1:
The patent implements periodic sampling of performance metrics by the counters, where each counter increments or updates its recorded values at regular intervals rather than continuously. This periodic action allows the performance monitoring system to achieve sustained long-term monitoring capability while maintaining power efficiency, as the counters remain in a low-power state between sampling intervals and only consume significant power during actual measurement and update cycles.
Data Source
AI summary
Various embodiments include a system for generating performance monitoring data in a computing system. The system includes a unit level counter with a set of counters, where each counter increments during each clock cycle in which a corresponding electronic signal is at a first state, such as a high or low logic level state. Periodically, the unit level counter transmits the counter values to a corresponding counter collection unit. The counter collection unit includes a set of counters that aggregates the values of the counters in multiple unit level counters. Based on certain trigger conditions, the counter collection unit transmits records to a reduction channel. The reduction channel includes a set of counters that aggregates the values of the counters in multiple counter collection units. Each virtual machine executing on the system can access a different corresponding reduction channel, providing secure performance metric data for each virtual machine.


