主权项 |
1. A computer system, comprising: a processor, a system memory, and a bus that couples various system components including the system memory to the processor, the system configured to perform a method comprising: normalizing, with a processing device, resource metrics (R) for a plurality of virtual machine configuration sizes with respect to profiled metrics, wherein each virtual machine configuration size is normalized as Rj =[r1j, r2j, r3j, r4j], j is a virtual machine configuration size, r1j is central processing unit speed, r2j is memory size, r3j is input/output speed, and r4j is network speed and the profiled metrics are observed values of r1, r2, r3, and r4; storing the normalized resource metrics associated with each of the virtual machine configuration sizes in a catalogue; calculating and storing a demand metric measurement (D) for each resource in the virtual machine configuration size of a plurality of virtual machine configuration sizes to obtain resource demand estimates for each of the resources of a respective virtual machine configuration size; wherein the calculating comprises: profiling an application for each of the virtual machine configuration sizes: executing the application on a first partition of a memory and a second partition of a memory; calculating the demand metric measurement (D) for an execution time of each of the resources associated with a respective virtual machine configuration size by using a demand metric measurement (Di=ai+biRi) for each of the resources (R); the each Di is a demand metric calculation for a respective resource (Ri) of a calculation under an execution time, the ai corresponds to the first partition and the bi corresponds to the second partition; storing the ai and the bi coefficients of the demand resource function for each of the respective resources (R) for each virtual machine configuration size; calculating a base performance for the application; predicting performance estimates on each of the virtual machine configuration sizes in the catalogue by applying the demand metric measurements (D) of the resources associated with each of the respective virtual machine configuration sizes; selecting, based on the predicting, a virtual machine configuration size in the catalogue having a lowest response time that meets the application performance objectives; invoking the selected virtual machine configuration size; and migrating the application to the selected virtual machine configuration size. |