We use VMware Workstation 7 as development environment for our SharePoint projects. This tool itself is great, but actually we are experiencing heavy disk i/o when we shut down a virtual machine or when we switch a virtual machine in suspend mode. That’s an annoying behavior, when you shut down a virtual machine, quit VMware Workstation and try to shut down the host (Windows 7 Enterprise). Shutting down the host approx. lasts about 10-15 minutes.
It seems that a simple entry in the config.ini of VMware Workstation could solve this behavior. I found this entry in “http://sanbarrow.com/vmx/vmx-advanced.html”. The config.ini file for VMware Workstation is stored in “C:\ProgramData\VMware\VMware Workstation”. If you are just using VMware Player, you find this file in “C:\ProgramData\VMware\VMware Player”. Just add the line
mainMem.useNamedFile = “false”
to this configuration-file. Save the file and restart VMware Workstation or Player. What you might see, when suspending a virtual machine, this action will last a little longer. But it seems, that the disk activity after quitting VMware Workstation has gone.
Thank you very much. I just experienced the same problem which cost me whole day to investigate. Finally I come to your site with help of Google, and mainMem.useNamedFile = “false” really saved my life.
Thank you VERY MUCH. And me I just experienced the same problem from very LONG time ago and finally today I come and me to your site with help of course from Google. 🙂 🙂 🙂
Your advice about: mainMem.useNamedFile = “false” really SAVED my life!
Again BIG THANKS!!!
Hello,
Another thank you !!!.
This is impressive how suspending is shorten. Before, I was using Workstation with VM on an external drive, so this was obvious for me that suspending (saving the .vmem file) could take time, as the transfer bottleneck was USB2 (well I thought).
Recently, I’ve upgraded computer, and hardware (2x750Gb internal SATA drive). So resuming is fast (50-80MB reading), compared to USB2 (20-25MB) but suspending …was even slower ==> 200 IO/s but only 1-2MB throughput !!??
Now I have 1000-1200 IO/s and a wonderful 70MB/s throughput.
I’m not frightened anymore to suspend a VM !
And … I will have no more excuses when I’ll be late to fetch my daughter at school ! 😛
Note: to ends quickly the write on the disk once the VM is closed, you can use sysinternals’ sync command (run it under administrator).
Windows7 uses the “Modified memory” -see in Resource Monitor- as a writing cache, and goes-on writing *slowly* on the disk when application is closed…
Hi, I used this and it does appear to quicken up disc activity. However when I start a VM image of Win 7 in Workstation 7 on a base of Win 7 64bit I get the message mainMem.useNamedFile = “false” is not a valid switch set the value to “true”. Accepting this message it continues to load with apparent no further issue. Any ideas?
Hi Barry, type the “false” bit manually into your config because copying it from this post introduces none standard double quotes which VMWare doesn’t like.
Great post! Really helped me out. Just as you say: takes an extra minute to suspend, but more disk activity afterwards.
Thank you! It helped a lots.
Stefano
I was a bit sceptical that a single line addition to the config would stop the 10 minute disk thrashing/massive disk queue length VM Workstation 7 was showing after a suspend.. but it worked for me! THANK YOU! It does take around 10-20 seconds longer to suspend vm’s allocated with large amounts of RAM (4GB+) but then my machine is instantly usable for other tasks as the disk controller is no longer saturated.
Thanks for the tip. My computer would become unusable (mouse wouldn’t even move) for 1-2 minutes after suspending a VM before doing this.
What exactly does this setting change in the VMWare behavior?
When I suspended without this option it deferred the save so I could get on with other tasks whilst it was still carrying out the suspend (so it performed the suspend in the background and all the disk i/o clashed with other tasks that I was trying to do which made for a very large disk queue).
With this option enabled the entire suspend has to complete before you can click into other VM’s, looking at the disk queue during the save it never appears to go over a queue length of 1 which equates to a disk spending more time saving data rather than jumping the head all over the disk trying to carry out many things at the same time.
..this setting is not necessary if the VM is on a SSD because it handles the disk queue length extremely well.
Hi there, the whole thing is going well here and ofcourse every
one is sharing information, that’s genuinely excellent, keep
up writing.