Abstract:
Disclosed herein are embodiments for managing the placement of virtual machines in a virtual machine network. In an embodiment, a method involves determining whether to separate at least one virtual machine in a set of virtual machines supporting a process and running on a first host computer from other virtual machines in the set. If at least one virtual machine is to be separated, then at least one virtual machine is selected based on a number of memory pages changed. The selected virtual machine is then separated from the other virtual machines in the set.
Abstract:
Techniques for representative-based approach to store historical resource usage data are disclosed. In one embodiment, a management node may include a statistical representative computational unit to obtain historical resource usage data associated with a workload running on a host, divide the historical resource usage data into a plurality of pools with each pool comprising a predefined number of resource usage statistics, and determine a statistical representative corresponding to each of the pools. Each statistical representative may represent the predefined number of resource usage statistics in a corresponding one of the pools. Further, the management node may include a monitoring and managing unit to monitor and/or manage the workload using the statistical representatives.
Abstract:
A method, a non-transitory computer-readable storage medium, and a computer system for managing the placement of virtual machines in a virtual machine network are disclosed. In an embodiment, a method involves determining if at least one virtual machine in a set of virtual machines supporting a process and running on a first host computer needs to be separated from other virtual machines in the set. If at least one virtual machine needs to be separated, then at least one virtual machine is selected to be separated based on the number of memory pages changed. The selected VM is then separated from the other virtual machines in the set.
Abstract:
The current document is directed to methods and systems for monitoring the performance of memory management in virtual machines. By accurately measuring the performance of memory management in virtual machines, a virtualization layer can dynamically reconfigure virtual machines to use more optimal memory-management methods, intelligently schedule execution of virtual machines to increase memory-management performance, and migrate virtual machines among different servers and computer systems to increase memory-management performance.
Abstract:
The current document is directed to virtualized PMUs provided by virtualization layers. The currently disclosed virtualized PMUs are decoupled from the underlying PMU hardware features of processors on which the virtualization layer executes. The decoupling is achieved, in part, by time multiplexing the underlying hardware PMU registers to provide a greater number of virtualized PMU registers than the number of hardware-PMU registers provided by at least some of the underlying hardware PMUs. The decoupling is also achieved by providing for monitoring, by the virtualized PMU registers, of computed processor events and approximated processor events in addition to the processor events monitored by the underlying hardware PMUs. In addition, the virtualized PMU registers are implemented, in certain implementations, to support a variety of different monitoring modes, including monitoring of processor events that occur only during execution of the virtualization layer and monitoring of hardware-thread-specific processor events.
Abstract:
A computer implemented method receives a request to run a group of instruction sets. Each instruction set is associated with a sequence of common instructions. The method executes the sequence of common instructions in a first virtual machine (VM) to generate a result which is stored in a first memory associated with the first VM. The method then clones a second VM that shares the first memory with the first VM. The method continues by executing a first instruction set in the second VM. Since the second VM shares memory with the first VM, the second VM can use the result stored in the first memory and the sequence of common instructions does not need to be executed on the second VM. In one example, the result is a run-time model of a circuit and the second VM runs the first instruction set on the run-time model.
Abstract:
Techniques for representative-based approach to store historical resource usage data are disclosed. In one embodiment, a management node may include a statistical representative computational unit to obtain historical resource usage data associated with a workload running on a host, divide the historical resource usage data into a plurality of pools with each pool comprising a predefined number of resource usage statistics, and determine a statistical representative corresponding to each of the pools. Each statistical representative may represent the predefined number of resource usage statistics in a corresponding one of the pools. Further, the management node may include a monitoring and managing unit to monitor and/or manage the workload using the statistical representatives.
Abstract:
A method, a non-transitory computer-readable storage medium, and a computer system for managing bandwidth allocated to a virtual machine running on a host computer is disclosed. In an embodiment, a method involves obtaining the current bandwidth for a virtual machine running on a host computer, determining bandwidth demand for the virtual machine as a function of the current bandwidth and a growth margin, and adjusting a bandwidth cap for the virtual machine based on the determined bandwidth demand. In an embodiment, when applied, the technique allows for bandwidth to be allocated to the virtual machines without the sum of allocated bandwidth exceeding a global bandwidth cap.
Abstract:
The current document is directed to virtualized PMUs provided by virtualization layers. The currently disclosed virtualized PMUs are decoupled from the underlying PMU hardware features of processors on which the virtualization layer executes. The decoupling is achieved, in part, by time multiplexing the underlying hardware PMU registers to provide a greater number of virtualized PMU registers than the number of hardware-PMU registers provided by at least some of the underlying hardware PMUs. The decoupling is also achieved by providing for monitoring, by the virtualized PMU registers, of computed processor events and approximated processor events in addition to the processor events monitored by the underlying hardware PMUs. In addition, the virtualized PMU registers are implemented, in certain implementations, to support a variety of different monitoring modes, including monitoring of processor events that occur only during execution of the virtualization layer and monitoring of hardware-thread-specific processor events.
Abstract:
The current document is directed to virtualized PMUs provided by virtualization layers. The currently disclosed virtualized PMUs are decoupled from the underlying PMU hardware features of processors on which the virtualization layer executes. The decoupling is achieved, in part, by time multiplexing the underlying hardware PMU registers to provide a greater number of virtualized PMU registers than the number of hardware-PMU registers provided by at least some of the underlying hardware PMUs. The decoupling is also achieved by providing for monitoring, by the virtualized PMU registers, of computed processor events and approximated processor events in addition to the processor events monitored by the underlying hardware PMUs. In addition, the virtualized PMU registers are implemented, in certain implementations, to support a variety of different monitoring modes, including monitoring of processor events that occur only during execution of the virtualization layer and monitoring of hardware-thread-specific processor events.