Scott Drummonds on Virtualization

Using Perfmon For Accurate, ESX Performance Counters


[An update to an old community post with more information on the tool.]

My colleague in product management, Praveen Kannan, has been working to extend Perfmon to show some ESX performance counters. This capability is automatically installed with VMware Tools on vSphere 4. But Praveen and I have made a stand-alone version available to those of you that are still on VI3. Download it here to give it a try.  [See note below if that link is dead.]

To install, place the file in an appropriately-named directory on any Windows VM on VI3. Double-click the executable, which will self-extract the files into the same directory. Run “install.bat” and you’re done.

Once you bring up Perfmon you’ll see two new performance objects on your computer: “VM Memory” and “VM Processor”. These objects contain counters exposed by ESX that accurately reflect the VM’s memory and CPU usage. Here’s Perfmon on my test VM after I’ve installed the tool.


This makes collection of host stats a breeze. Windows Management Instrumentation (WMI) programs can now easily get access to reliable host statistics. And anyone with access to Perfmon can get see their VM’s resource usage. Unlike guest-based statistics, the host-statistics shown through these counters accurately reflect resource usage in the presence of virtualization overheads and time slicing of VMs.


This is a pre-release “sneak peak” version. Eventually this tool will be available for download on vmware.com and supported by VMware. But today there is no support for this tool and you’re using it “as-is”. Use at your own risk and do not contact VMware support for help with this release.

That’s VMware’s official position on this tool. But feel free to comment here with any ideas about this great new feature.

If the Download Link Is Dead

Until the DLL is made available as a standalone product, we are hosting it on the VMware FTP server, which is swept regularly.  If the link is dead that means that the binary has been deleted to save space.  Leave me a comment here if you see this and I will again upload the binary for download.

23 Responses

Download Link goes to a 404 – Not Found on 9/20/09.


  • Thanks, Joe. I have uploaded the binary again.


    • Hi Scott,

      Download link is still down and would love to try this out. Is there another link that I can try?


      Vic Camacho
      Twitter: virtual_vic

  • I have uploaded the stats provider again. Just checked that all is well.

  • I have uploaded the tool and it looks good, will this be incorportaed into the WMWare Tools when VMWare support it?



  • I just talked with Praveen (the PM responsible for this tool) and he says that a version for ESX 3.5 U4 will be available in “weeks”. The tool has already been rolled into our distribution so subsequent updates to 3.5 will come with it.

  • Hi,

    I would liko to download perfom för Virtual Machines but the link does not work would you please help me with this.

    Best Regards

  • Link is dead. Please upload again.

  • Done.

    The file is now being hosted from a directory that our support org has excluded from weekly sweeping. This directory should stay good for six months, when I will upload again after your notification.

    • Hi Scott,

      Link is dead, please upload again (swear it was working last week?!)

      • I have left VMware so it is tough for me to do this. Please give me some time (a week or so) to get this setup again.

        • Uninstall and re-install of VMware Tools works for Win2k8 R2 but not Win2k8 with SP2…wonder why??
          Downloaded the app you mention and will try it out.
          Thank you, Tom

  • […] are not aware of the underlying virtualization layer. VMware, however, has recently added some VM specific performance counters to perfmon that are aware of the virtualization layer and provide accurate metrics. There is […]

  • We’ve installed VMware Tools from vSphere 4.0, but I am not seeing the VM counters in PerfMon.

    Is there something special I need to do to seem them?



    • I assumed that you did something wrong or found a bug until the same complaint came my way via Twitter. I am looking into this.

    • Hi Tim,

      Could you try uninstalling tools, reboot the VM and then install tools again to see if the problem is reproducible?

      What Windows version is the guest OS running?

  • […] VMware Perfmon Counters Missing on vSphere? Filed under: Uncategorized — Tags: esx, perfmon, windows — Scott @ 9:37 pm I was recently shown a problem where the ESX Perfmon counters we added to vSphere 4.0 virtual machines were not disappearing in Windows virtual machines as of vSphere 4.0 U1.  The problem stems from an issue with mofcomp, which I will briefly describe below. For the impatient, the workaround is to manually uninstall and then reinstall VMware Tools.  It also appears that the counters can be added by running vmStatsProvider, as I described in a previous article. […]

  • […] It turns out this problem stems from an issue with mofcomp. The workaround is to manually uninstall and then reinstall VMware Tools. It also appears that the counters can be added by running vmStatsProvider, as described in Scott’s previous article: http://vpivot.com/2009/09/17/using-perfmon-for-accurate-esx-performance-counters/ […]

  • […] screen shot shows two counters available in Perfmon inside a Windows guest with the vmStatsProvider installed (available by default since vSphere). The lighter line is the CPU utilization as reported […]

  • […] I was dealing with a resource contention issue.  I had the VMstats provider running in the guest (http://vpivot.com/2009/09/17/using-perfmon-for-accurate-esx-performance-counters/) showed me that there was no ballooning or swapping going on, and that the vCPU’s were not […]

  • Hi, Ran this tool in Windows 2008 R2 SP2. The script appears to run without errors (ran as administrator). However the counters are still missing in perfmon. Following error is logged in application logs

    Event 256
    Source vmStatsProvider
    The following information was included with the event:


    the message resource is present but the message is not found in string/message table.

    Has anyone seen this?