Looking to improve your understanding of VMware ESX performance
Myself along with many other admins supporting Virtual Infrastructures are always looking to increase their ability to diagnose performance related issues. As new software and hardware technology is released we get more tools to help and more things to think about.
To help with the issue VMware has published a few helpful documents. I have broken down the different documents and included links to the originals at VMware.
Hyper-Threading is a common question about how ESX handles this technology. I’m going to assume that if you are reading this that you know what HT is. Hyper-Threading has been supported in ESX since version 2, since ESX is aware of HT it treats logical cores different than physical cores. Using HT does offload some of the SMP calculations from the OS and allows the processor hardware to do the work at a faster rate. You can read the whole documente here.
The next VMware article covers the ESX Monitor modes available. It breaks down the different Hardware Virtualization options supported for different ESX features, guest OS and processor families. See full article here.
Next in line is Guest OS based performance. Due to the fact that VMware removes the hardware layer from the VMs touch. This in turn makes Windows perfmon or Top in Unix return results that are not very accurate. So this brings up the question are you using your tradition tools that you would install on your physical servers? If so they are unaware of the benefits being realized by the virtualization software. The tools do not have an accurate view of cpu resources since each VM is getting a fraction of CPU time. See the document here.
The next big item to cover is CPU read time. This value always gets a lot of questions and is confusing to many. To make it as clear as I can Ready Time is the amount of time a Virtual Machine waits to run a process but has not be provided CPU resources on which to execute. There are two ways to get a value for ready time, you can use Esxtop or Virtual Center. If you use Esxtop you will get a percentage value and Virtual Center will give you a time value in milliseconds. To give you an idea 1,000 ms in VC’s report is equal to 5% fom esxtop. Read more on full article here.