Tweaking the performance of Virtual PC 2004

Rate This
  • Comments 3

Most people who use Virtual PC are running it on a uni-processor computer - and are trying to run other programs at the same time; however, Virtual PC can be very demanding on CPU resources at times.  To help people deal with this - we have provided the following performance options under Virtual PC:

  1. Run Virtual PC at maximum speed

    Selecting this option will result in Virtual PC always getting the CPU time that it needs - and this is the option that provides the best performance inside of Virtual PC.  The problem with this option is that if the virtual machine attempts to use 100% of its CPU it can bring other applications running on the host computer to their knees.  It should be noted that a virtual machine does not have to be 'busy' in order to use 100% CPU.  Some operating systems / applications (like DOS) do not implement an idle loop - which means that they will always use 100% CPU.

    This option is best for users who are spending the majority of their time inside of the virtual machine and are only doing light processing on the host computer.

  2. Give processes on the host operating system priority

    With this option selected; Virtual PC will throttle its CPU usage whenever it is in the background.  This allows the host system to remain responsive - but can result in terrible performance inside of the virtual machine (users have reported that operating system installs can take > 6 hours with this option selected and the virtual machine in the background - as opposed to the ~1 hour with the other performance option).

    This option is best for users who are spending the majority of their time using the host operating system and are only doing light processing inside of the virtual machine.  This option should *never* be selected if you are performing an OS installation inside of the virtual machine.

A third option is to choose the 'Run Virtual PC at maximum speed' option and then launch Virtual PC using the following command:

Start /low "" "Virtual PC.exe"

This will run Virtual PC at a lower priority than other applications, which will allow it to get all of the CPU resource that is available, while letting other host applications remain responsive.  The problem with this option is that it can conflict with other low priority applications like Seti@home.

A final comment on all of this is that as Virtual PC runs all of its virtual machines on one thread - if you have a dual-processor computer - you can just select to 'Run Virtual PC at maximum speed' and not worry about performance as your host applications will run on the other processor.


Leave a Comment
  • Please add 3 and 8 and type the answer here:
  • Post
  • You can also run the virtual machine at "Maximum Speed" with a Hyper-Threaded, non-dual core Pentium 4. I'm doing it right now. The host and virtual machine run without any slowing down of the other!

    HT with Virtual PC Rocks!
  • I run Virtual PC at maximum speed, but I use a cool little program called MyToolkit to reduce the priority of the Virtual PC.exe process to Below Normal. I find this works very well (on my Athlon XP 2600+ CPU running Windows 2000). I also use MyToolkit to tweak the priority of the other running processes as I see fit. It's available on this page:
    (Now, if only I could find a program that would allow me to change disk access priority for different processes...)
  • Virtual PC rocks as far as I am concerned as I can develop on Server 2003 (including debugging Exchange based applications) whilst keeping XP as my host O/S. I have a few minor gripes/requests though.

    Why oh why was the SoundBlaster 16 emulation used (good idea) when the SoundBlaster 16 card is not supported in Server 2003 (not so good)! You can get around this by downloading the NT4 driver from Creative Labs

    (which admittedly works beautifully with Server 2003). Surely if the Soundblaster 16 is THE emulated sound card then support for this card should be kept in all current Microsoft O/S including Vista.

    A couple of questions as well.

    1) Where is the best and fastest place to hold a swap file for Virtual PC (fixed FAT16 virtual disk or a linked virtual hard disk?)?

    2) Is there a way (on a PC with a multi-headed graphics card or multiple graphics cards) of having Virtual PC full screen on one screen/monitor and not having it minimize when you click on the host O/S desktop?

Page 1 of 1 (3 items)

Tweaking the performance of Virtual PC 2004