Performance Optimization for VMs

Collating together best practice tips for getting best performance from your VMs:

1. Software optimization:

  • Install the latest Virtual Machine Additions: for Windows Server 2003 SP1 go here https://www.microsoft.com/downloads/details.aspx?FamilyID=a963433c-193b-41ac-af6e-ab7ab2db8541&DisplayLang=en

  • Configure the Windows Server 2003 host operating system for “Best Performance“ under Performance Settings in the System Properties . Configure services priority to for “Background Services“:

  • Right-click “My Computer“, click Properties. Click Advanced tab. Select “Settings“ under “Performance“.

  • Exclude the Virtual Server services - VSSRVC.EXE and VMH.EXE from host anti-virus software scanning.

  • Dedicate the box: Do not run other programs on the host

2. Memory Optimization: Install additional RAM in the host computer. The amount of RAM in the host computer limits the number of virtual machines that you can run in Virtual Server 2005 more than any other factor. The host operating system and each running virtual machine require sufficient memory. To calculate the total amount of memory that you require, tote up:

  • operating system on each virtual machine.

  • programs that run on each virtual machine.

  • operating system on the host computer.

  • add up to 32 megabytes of additional RAM on the host computer for each running virtual machine.

For example:

Physical or virtual machine

Operating system

RAM allocated to OS

RAM allocated to virtualization

Total RAM required

Host computer

Windows Server 2003

512 MB

512 MB

Virtual machine 1

Windows NT 4.0 Service Pack 6a

128 MB

32 MB

672 MB

Virtual machine 2

Windows NT 4.0 Service Pack 6a

128 MB

32 MB

832 MB

Virtual machine 3

Windows 2000 Service Pack 4

256 MB

32 MB

1120 MB

Virtual machine 4

Windows 2000 Service Pack 4

256 MB

32 MB

1408 MB

Virtual machine 5

Windows Server 2003

512 MB

32 MB

1952 MB

Virtual machine 6

Windows Server 2003

512 MB

32 MB

2496 MB

Virtual machine 7

Windows Server 2003

512 MB

32 MB

3040 MB

Virtual machine 8

Windows Server 2003

512 MB

32 MB

3584 MB

3. CPU optimization: Install additional CPUs in the host computer. Disable Hyperthreading if the host has support for it.

4. Disk optimization:

  • Use a fast hard disk subsystem in the host computer. 10K RPM drives are relatively cheap these days.

  • Use virtual SCSI hard disks instead of virtual IDE hard disks

  • Use fixed-size virtual hard disks instead of dynamically expanding virtual hard disks

  • Run VHD files from a different physical disk than the host OS. RAID 0 will help when writing large files. RAID 5 will also improve performance especially on READ operations. RAID 1+0 will be the best of both worlds.

  • Schedule host Defrag during idle time.

See: https://support.microsoft.com/default.aspx?scid=kb;en-us;903748 and https://blogs.technet.com/brucecowper/archive/2004/12/22/330223 and https://support.microsoft.com/kb/840575/en-us