Hi Folks.
Here's the scenario. We have an app that appears to be misbehaving. The developper is asking for some sort of metric on the CPU utilization of this app.
I understand that looking at the "task manager" within a windows VM is not a reliable means of quantifying the CPU usage the system, and that I would normally use the vSphere client to get such data. Is there a reliable way to getting the actual CPU utilization of individual processes within a Windows 2003 VM?
(ESXi 4.1, licenced)
Thanks.
-P
pjlandry wrote:
Thanks.
I do use ProcExp and PerfMon. The question remains: Can I trust that the values it provides are accurate?
Remember that "guest" CPU monitor tools are not accurate since the VM is CPU-scheduled.
Thoughts?
Thanks again.
-P
Well I kinda see where you are going, but you are off the mark the guest INSIDE the VM is still working on the basis that those are "real" CPU cycles, and they are.. not co-scheduled.. it's only from the HOST they are scheduled as a time slice.
Besides which when you monitor in the same OS as the tools, the are monitoring from the same perspective, so even if the CPUs are not touched again for 4 seconds (let's say) the OS *AND* the tools monitoring those cycles are frozen at EXACTLY the same time, so yes those metrics are indeed accurate.
If you monitored from a 3rd party like Veeam (because it can see the host CPU the VM is using), then probably not as accurate.. I can see that.
Hi,
Try Process Explorer from sysinternals - its a very handy tool free too 🙂
It shows all kinds of info about individual processes, including CPU utilisation.
http://technet.microsoft.com/en-us/sysinternals/bb896653
Andy
I agree with attbet..however if you want to LOG the app you want to look at performance monitor. You can even log it to a file.
Process explorer is great for REAL time, but historical perf mon is what you want.
Thanks.
I do use ProcExp and PerfMon. The question remains: Can I trust that the values it provides are accurate?
Remember that "guest" CPU monitor tools are not accurate since the VM is CPU-scheduled.
Thoughts?
Thanks again.
-P
VMware tools now puts perfmon counters into the VM.
pjlandry wrote:
Thanks.
I do use ProcExp and PerfMon. The question remains: Can I trust that the values it provides are accurate?
Remember that "guest" CPU monitor tools are not accurate since the VM is CPU-scheduled.
Thoughts?
Thanks again.
-P
Well I kinda see where you are going, but you are off the mark the guest INSIDE the VM is still working on the basis that those are "real" CPU cycles, and they are.. not co-scheduled.. it's only from the HOST they are scheduled as a time slice.
Besides which when you monitor in the same OS as the tools, the are monitoring from the same perspective, so even if the CPUs are not touched again for 4 seconds (let's say) the OS *AND* the tools monitoring those cycles are frozen at EXACTLY the same time, so yes those metrics are indeed accurate.
If you monitored from a 3rd party like Veeam (because it can see the host CPU the VM is using), then probably not as accurate.. I can see that.
Thanks. This always confuses me.
-P