I have a Dell R710 rack hosting several VM's:
- Windows Server 2008 R2 w/ Hyper-V
- dual Xeon 5520's @ 2.26 GHz
- 32GB mem
- teamed nic (4 gigabit NICs)
- all VM's are on their own set of mirrored SAS disks
My problem is with a virtual Windows 2000 server running on the above system. This server runs IIS 6, some cgi-scripts and some asp pages. All tie into Visual FoxPro DB back-end.
My question is how can I give more horsepower to my Windows 2000 VM, or is this even possible? My Hyper-V settings for the VM starting out were:
- 3GB mem allocated
- default virtual cores (1)
- 10% (ten) VM reserve
- 100% VM limit
- 100 relative weight (there are 2 other VM's hosted all of which are idle and are on separate SAS disks)
With this configuration if I logged in to the web services with 3 accounts I could slam the Win2000 VM to 100%. I then adjusted the Hyper-V settings for the server up and up and up until I was at:
- 4 virtual cores
- 100% VM reserve (or 25% of total system resources)
- 100% VM limit
- 1000 relative weight
The kicker is that throughout all my tests (top configuration and bottom) my rack server sat at approx. 5% CPU utilization total. Meanwhile, my Win2000 VM performed the exact same each and every time (pinned CPU with 3 accounts logged in performing the same search, or 30% CPU utilization with a single account performing a search).
I've also tried adjusting processor compatibility setting for "Run an older operating system, such as Windows NT". However, I did not try the "Migrate to a physical computer with a different processor version" setting.
Is there an inherent problem with virtualizing Windows 2000 server? Is there something else I can try to capture more CPU cycles from the host server? Ideally I would like for the host to go to 25-50% utilization when the Win2000 VM is pinning.
Some background info: these are our old legacy services which are currently being rewritten in .Net. There are most likely performance improvements to be gained in refactoring the legacy source code but this is not an option. Our shop lacks the expertise in FoxPro and the business decision has been made that the effort is better spent in a rewrite.
There is the option of purchasing a fast physical server to replace the VM. I am confident this would have a dramatic improvement. However, I would prefer to have this server virtualized as I have been burned before by a machine needing a reboot... a task easily performed from my phone for a virtualized server.
Thanks in advance for any suggestions you may have.