Patent ID: 8464255

Claim:
A method comprising the following computer-executable acts: in a cloud computing environment, receiving indications of threshold levels of quality of service to maintain for each virtual machine of a plurality of virtual machines sharing computing resources on a server, wherein quality of service is affected by performance interference caused by the plurality of virtual machines sharing the computing resources on the server; and dynamically allocating computing resources amongst the plurality of virtual machines to maintain levels of quality of service for each virtual machine of the plurality of virtual machines at or above the threshold levels of quality of service, wherein the dynamically allocating the computing resources amongst the plurality of virtual machines is based at least in part upon a multi-input multi-output model that models the performance interference experienced by the plurality of virtual machines when executing on the server, wherein the multi-input multi-output model further models a relationship between quality of service experienced by the plurality of virtual machines and computing resources allocated to the plurality of virtual machines.