Hi all,
I am struggeling with CPU performance.
I have 2 ESX servers that i want to use for MS SQL servers. I want virtualize our remaining current physical SQL servers. Memory isn't an issue, but there are some concerns about possible CPU contention.
From vSphere i can deduce the total amount of used cpu resources in Mhz by the current virtual SQL servers, but i need to get the same sort of info for the physical servers.
Now, through the windows performance monitor on the physical machines i can get my (_Total)\%Processor Time, but how does this relate to cpu usage in Mhz as shown in vSphere.
Is there a way to convert the windows info to Mhz?
Martin
Is there a way to convert the windows info to Mhz?
Well, you can simply calculate the effective Mhz used if you know the physical host's total CPU capacity:
([total number of physical cores] * [core Mhz]) / [% total CPU usage]
This should give you a rough outline of the required CPU usage.
It should be noted that different types of CPUs can have some effects as well:
For example, if your physical server is running old Nehalem generation CPUs and your ESXi hosts run newer Ivy-Bridge Xeons, the same workload probably requires less CPU cycles on the ESXi host with newer CPUs because of new/improved instruction sets, more efficient pipelines, larger Cache sizes, faster memory bus etc etc.
The same obviously applies vice-versa if your ESXi host runs older CPUs than your physical server.
Is there a way to convert the windows info to Mhz?
Well, you can simply calculate the effective Mhz used if you know the physical host's total CPU capacity:
([total number of physical cores] * [core Mhz]) / [% total CPU usage]
This should give you a rough outline of the required CPU usage.
It should be noted that different types of CPUs can have some effects as well:
For example, if your physical server is running old Nehalem generation CPUs and your ESXi hosts run newer Ivy-Bridge Xeons, the same workload probably requires less CPU cycles on the ESXi host with newer CPUs because of new/improved instruction sets, more efficient pipelines, larger Cache sizes, faster memory bus etc etc.
The same obviously applies vice-versa if your ESXi host runs older CPUs than your physical server.
Hi MKguy,
Thanks for the answer, this help a lot.
Luckily the physical servers are quite old (one of the reasons for virtualizing them) and the ESX servers are recent.
Martin