Virtual Time Dilation for VM Resource Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Virtual machines often experience inappropriate timeouts and inefficient resource utilization due to their tightly coupled timekeeping with physical hardware, particularly during background operations and malware detection, where the passage of time is not optimized for the task at hand.
Innovation Solution
The solution involves exposing virtual time sources to guest operating systems that can be manipulated independently of physical time sources, allowing for time dilation to accelerate or decelerate time relative to physical time sources, thereby optimizing operations and preventing timeouts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If virtual machines use physical hardware time sources for timekeeping, then time measurement accuracy is improved, but resource utilization efficiency deteriorates during background operations
Solution Approach 1:
The patent segments the timekeeping function by introducing virtual time sources that are separate from physical hardware time sources. The hypervisor creates virtual clock sources for guest operating systems that can be independently controlled, allowing different virtual machines to have different time passage rates. This segmentation enables background operations to use accelerated virtual time while foreground operations use normal or decelerated virtual time, resolving the contradiction between measurement accuracy and resource utilization efficiency.
Solution Approach 2:
The patent changes the time parameter by allowing the passage of time in virtual machines to be dynamically adjusted relative to physical time. The hypervisor can accelerate or decelerate virtual time sources based on operational needs, enabling background malware detection operations to complete faster in virtual time while maintaining accurate correlation with physical time for scheduling and coordination purposes.
2Speed
If virtual machines accelerate time passage for background operations, then operation completion speed is improved, but time synchronization accuracy deteriorates
Solution Approach 1:
The hypervisor acts as an intermediary between physical time sources and virtual time sources. It receives time information from physical hardware and distributes adjusted time information to virtual machines based on their operational needs. This intermediary role allows virtual machines to experience accelerated time for background operations while the hypervisor maintains accurate tracking of physical time passage, enabling proper time synchronization and coordination when needed.
Solution Approach 2:
The patent implements dynamic time scaling where the passage of virtual time can be adjusted in real-time based on operational requirements. Virtual time sources can be accelerated during background operations and then synchronized back to match physical time, creating a dynamic system that adapts time passage rate to operational needs while maintaining overall synchronization accuracy.
3Use of energy by moving object
If virtual machines use tickless timekeeping, then CPU interrupt burden is reduced, but hardware counter requirements increase
Solution Approach 1:
The patent creates virtual copies of hardware time counters through virtual time sources. Instead of requiring physical hardware counters in every virtual machine, the hypervisor creates software-based virtual counter copies that emulate hardware counter behavior. These virtual counters can be read by guest operating systems using tickless timekeeping, reducing CPU interrupt burden while maintaining compatibility with existing timekeeping algorithms without requiring additional physical hardware counters.
Data Source
AI summary
Approaches for managing how the passage of time is observed by a software execution environment, such as a virtual machine or a sandbox environment. A computer system maintains a set of physical time sources. A set of virtual time sources are computed based on the set of physical time sources. The virtual time sources operate independently of the set of physical time sources. For example, the virtual time sources may observe time passing faster or slower than the set of physical time sources. The set of virtual time sources are presented to the software execution environment as the set of time sources. Many benefits may be obtained such as higher utilization of allocated resources and avoidance of timeouts.


