Patent ID: 7739532

Claim:
A method comprising: obtaining predictive information from a plurality of virtual machines (VMs) on a virtual host, wherein obtaining the predictive information further comprises: obtaining the predictive information from the plurality of VMs by a scheduler in a virtual machine manager (“VMM”), the obtained predictive information comprising information pertaining to CPU utilization for each of the plurality of VMs, determining an application type running in each of the plurality of VMs, retrieving a previously generated CPU utilization profile for the application type, wherein the utilization profile for the application type is generated by at least one of (i) capturing actual CPU utilization resulting from running the application type on a reference system and using a predetermined data set, and (ii) predicting behavior or the application type running with the predetermined data set, when system performance for the application type is well characterized and understood, and applying the CPU utilization profile for the application type to the CPU utilization for each of the plurality of VMs utilization; determining future utilization requirement for a central processing unit (“CPU”) of the virtual host based on the predictive information and CPU utilization profile for the application type; and scaling a frequency of the CPU (CPU frequency) based on the future utilization requirement.