I have been using VMware virtualization for quite a few years now, and even though it is generally fast and reliable platform, it does require some extra tuning to improve its performance. Here is a brief collection of tweaks that I personally use on Windows and Mac to speed up and improve I/O performance of VMware virtual machines. These tweaks have become particularly useful in the past couple of years, since larger amount of available RAM on computers and desire to reduce unnecessary write operations to SSD drives, such as full memory swap files.
Tweak: Disable memory swap files .vmem files
In the VMware settings.ini file add the following line (Update: you can change that line in your .vmx file as well):
mainMem.useNamedFile = "FALSE"
Settings.ini file is located file either at
C:\ProgramData\VMware\VMware Workstation\ or
C:\Documents and Settings\All Users\Application Data\VMware\VMware Workstation\ folders, depending on your operating system.
Note: Unfortunately this parameter does not work for VMware Player, as it always creates virtual machine’s full memory swap file.
For VMware Fusion on Mac and Linux instead of mainMem.useNamedFile you have to set mainMem.backing flag.
VMware Fusion Config files are located at:
/Users/username/Library/Preferences/VMware Fusion/preferences and
mainMem.backing = "swap"
Tweak: Disable log files for VM
Open your .vmx file in a text editor and add the following line:
logging = "FALSE"
Alternatively you can specify a different location to store the log file, if you ever need them:
log.filename = "c:\Windows\Temp\vm1.log"
Tweak: Disable Unity Mode
Unity might be a great feature for running virtual desktops operating systems, but it is not the most useful for virtualizing server OS. An annoying sign of enabled unity is GuestAppsCache or caches folder with a large number of files in its appData-subfolder. In order to disable it for your VM, open your .vmx file in a text editor and add the following line:
unity.enableLaunchMenu = "FALSE"
unity.showBadges = "FALSE"
unity.showBorders = "FALSE"
unity.wasCapable = "FALSE"
Tweak: Disk & Memory I/O Performance Optimization
Disable memory trimming:
MemTrimRate = "0"
Disable page sharing:
sched.mem.pshare.enable = "FALSE"
Disable snapshots if you are not using them and prefer full backups:
snapshot.disabled = "TRUE"
Disable scale down of memory allocation:
MemAllowAutoScaleDown = "FALSE"
VMware: Troubleshooting hosted disk I/O performance problems
VMware: Disk I/O Performance Tips
VMware: Defragmentation overview
VMware: Disabling the Workstation Log File or Storing the Log File in a Different Location
Blog: How can I prevent VMware Workstation Unity Mode from disabling Windows Aero?