VMWare Server High Processor Usage

We have VMWare server 2.0 installed on a few servers for testing purposes. In fact, our entire development infrastructure is on 3 different VMWare server 2 servers.

One of the guest OSes was running Windows 2003 Enterprise R2 SP2 with a SQL server (2005 of Microsoft) and a web server (IIS6). The system process ended up using anywhere from 20 to 75% of the CPU usage. So what was causing this?

I started with the usual suspects – services that shouldn’t have been running. Nothing helped on that end.

Then I grabbed a copy of Sysinternals’ ProcessExplorer. It showed that I had anywhere from 20 to 75% use from Interrupts/Hardware Interrupts. What exactly is a hardware interrupt? It is when a piece of hardware needs to wait for the CPU in order to finish it’s task. If you’re using a CD-ROM drive in PIO mode instead of DMA you will see quite a few more hardware interrupts. But I wasn’t using a CD-ROM. It was just an idle server.

Quick search around the block and I removed the USB controller on the VMWare config side. That lowered the interrupts by about 8%. Not a heck of a lot, but it was something.

Then I took the advice of another technician – change out the generic AMD flavor of network card for the more robust Intel driver.

Download the intel driver (http://support.intel.com/support/network/sb/cs-006120.htm)
Shutdown your VMWare guest OS
Edit the .vmx file
Add Ethernet0.virtualDev = “e1000” somewhere in the ethernet ‘section’
Turn your machine back on
Your machine will now find new hardware. If it doesn’t auto install that’s no big deal since you downloaded the drivers already and you can then install them.

Now my interrupts are below 30 with an average around 12. That’s quite a bit more usable.

5 thoughts on “VMWare Server High Processor Usage”

  1. Have you done some speed test?

    I mean choose a 100MB file and copy it back and forward from one client to see speed to/from server with old driver and with the intel one?

    Thanks for any reply

    R.

  2. Robert,

    Unfortunately I no longer work at the facility that houses the vmware infrastructure, so I don’t have an apples to apples test that I can perform.

    If you do test it out, let me know of the results!

  3. This had a great effect on my 2003 DC running on vmware server 2 (hosted on CentOS 4.5) on quad core dl380. (2 virtual processors). Idle guest CPU usage on the host was typically 30% = 15% kernel + 15% system. Is now – well – nothing.

  4. Many thanks for that advice.

    Dropped the CPU on my old Linux-Server (2xPentium III 933MHz) from 104% to 4% when running VMPlayer 3.1.6

    Thanks again!
    CK.

Leave a Reply

Your email address will not be published. Required fields are marked *