I have same problem, but these solutions was not fixed my issues. However I have found a blog post from artykul8, what fixed fixed all of my issues!
http://artykul8.com/2012/06/vmware-performance-enhancing/
Tweak: Disable memory swap files .vmem files
mainMem.useNamedFile = "FALSE"
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.
mainMem.backing = "swap"
Tweak: Choose the right disk controller and specify SSD
Instead of the latest SATA AHCI controller choose LSI Logic SAS controller with SCSI disk for Windows guest OS, or PVSCSI for other types of OS. Unfortunately SATA AHCI on VMware has the lowest performance out of the three controllers and highest CPU overhead (see the references on the topic at the end). In addition to choosing the right controller, if your host disk is SSD you can explicitly specify the disk type as SSD to guest OS.
scsi0:0.virtualSSD = 1
Tweak: Disable log files for VM
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: Other Disk & Memory I/O Performance Optimization
Disable memory trimming:
MemTrimRate = "0"
Disable page sharing:
sched.mem.pshare.enable = "FALSE"
Disable scale down of memory allocation:
MemAllowAutoScaleDown = "FALSE"
Tweak: Disabling Snapshots
Disable snapshots if you are not using them and prefer full backups:
snapshot.disabled = "TRUE"
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 and subfolders. In order to disable it for your VM add the following lines:
isolation.tools.unity.disable = "TRUE"
unity.allowCompositingInGuest = "FALSE"
unity.enableLaunchMenu = "FALSE"
unity.showBadges = "FALSE"
unity.showBorders = "FALSE"
unity.wasCapable = "FALSE"
Best Answer
On a Mac, if you want to run a script or application on boot (not on login), add it to /System/Library/StartupItems. In the case of vmrun, I would write a shell script to set the path correctly (to include the VMWare Fusion directory) and start the particular VMs you wish to run.)
If you prefer to run it on login, you can add items to the 'Login Items' under the users section of the System Preferences.