Patent ID: 8667496

Claim:
A method of managing at least one resource allocated to a plurality of guest virtual machines, comprising: executing a plurality of guest virtual machines in a host platform managing at least one resource; allocating said at least one resource among said plurality of guest virtual machines; separately collecting, from each said guest virtual machine, resource usage data locally monitoring at least one of an operating system operation, an executed procedure, and an executed thread in each said guest virtual machine; gathering said resource usage data from each said guest virtual machine; and reallocating said at least one resource among said plurality of guest virtual machines according to an analysis of said gathered resource usage data from said plurality of guest virtual machines; wherein said reallocating comprises calculating a cumulative contribution for each a plurality of resource allocations according to said analysis, selecting the resource allocation with the highest cumulative contribution of said plurality of resource allocations according to said calculating, and performing said reallocating according to said selecting.