Patent ID: 9740533
Date: 2017-08-22
CPC Classifications: G06F

Claim:
1. A method of implementing memory overcommit of virtual machines, the method comprising: establishing a first plurality of virtual machines on a first physical machine, the first plurality of virtual machines having resources controlled by a hypervisor executing on the first physical machine: broadcasting, from the hypervisor to a central scheduler executing on a second physical machine, for each of the virtual machines in the first plurality of virtual machines, expected resource usage requirements for one or more time periods, wherein the expected resource usage requirements from each of the first plurality of virtual machines comprise an expected resource usage under normal conditions, a possible maximum resource usage, a time interval when the maximum resource usage is likely, a minimum resource usage, and a time interval when the minimum resource usage is likely; based at least in part on the expected resource usage requirements broadcasted from the hypervisor, determining, by the central scheduler, a resource requirements schedule for each of the first plurality of virtual machines; assigning, by the central scheduler, resources to each of the first plurality of virtual machines based on the resource requirements schedule, wherein a sum total of the resources allocated to the first plurality of virtual machines is greater than actual resources available; receiving, at the central scheduler, at least one resource request for a first virtual machine of the first plurality of virtual machines; and based on the resource requirements schedule and in response to the at least one resource request un-assigning, by the central scheduler, at least a portion of the resources assigned to a second virtual machine of the first plurality of virtual machines and assigning the un-assigned portion of the resources from the second virtual machine to the first virtual machine, wherein the method further comprises: