开启Disable memory page trimming

VM(选单列) → Settings... → 出现Virtual Machine Settings 对话框→ Options(分页) → Advanced → 打勾Disable memory page trimming

等同于修改虚拟机的.vmx 文件,修改

MemTrimRate = "0"

在此功能启用时,VMware 会将一些虚拟机未使用的记忆体交给主机,而将虚拟机记忆体保存在硬碟交换文件中。但是这样做,虽然可以让主机获得更多记忆体,同时却导致硬体性能的下降。如果当VM Suspend 时,却发现主机整个卡住,硬碟疯狂的运转,持续十分钟以上,把此功能打勾试试。

开启所有适合的虚拟机内存为保留主机RAM

Edit(选单列) → Preferences → 出现Preferences 对话框→ Memory → Advanced → 选取Fit all virtual machine memory into reserved host ram

等同于修改C:/ProgramData/VMware/VMware Workstation/config.ini 文件,修改

prefvmx.minVmMemPct = "100"

如果这个参数是100 的话,当虚拟机启动时,VMware 会将该虚拟机的全部记忆体都使用实体记忆体,而不swap 到档案系统上;如果这个参数是50 的话,VMware会将该虚拟机的部份记忆体swap 到档案系统上,部份使用实体记忆体。要高效能的话,就设为100 吧。

开启prefvmx.useRecommendedLockedMemSize

修改 C:/ProgramData/VMware/VMware Workstation/config.ini 文件,修改

prefvmx.useRecommendedLockedMemSize = "TRUE"

不详

取消mainMem.useNamedFile

修改虚拟机的.vmx 文件,加入

mainMem.useNamedFile = "FALSE"

没此参数前虚拟机执行时会在本机产生.vmem 的文件。虚拟机上的记忆体读写等于在本机.vmem 文件读写,也就造成虚拟机执行时,硬碟常常运转不停。但有得必有失,加上这个参数后Suspend 虚拟机速度就会慢很多,突然断电就更难保证数据的完整性。

当虚拟机启动时,VMware 会把部份的虚拟机记忆体存在档案系统上,以档案形式存在,这是因为VMware 使用了mmap(记忆体映射)的方式来管理虚拟机记忆体。藉由修改mainMem.useNamedFile,VMware 会将这个档案由VM 所在的目录,改放到主机暂存目录下,这个异动可能对效能有小小地帮助,特别是暂存目录是ramdisk 时,但要注意有可能发生空间不足的问题。

取消Schedmemkpsharekenable

修改虚拟机的.vmx 文件,加入

sched.mem.pshare.enable = "FALSE"

停用memory sharing 后,VM 将不会分享通用记忆体block,VM 也将停止比对记忆体block。强制关闭虚拟机的虚拟记忆体管理分享装置,需要较高的主系统资源,但提供比较快的虚拟环境。

取消 MemAllowAutoScaleDown

修改虚拟机的.vmx 文件,加入

MemAllowAutoScaleDown = "FALSE"

这个参数设定成"TRUE" 时,如果虚拟机设定需要2GB 的记忆体,但实际上主机却提供给虚拟机的记忆体不到2GB,虚拟机在启动时会自动调整缩小记忆体到足够启动的范围。


Windows XP中的config.ini文件放在C:\ Documents和Settings \所有用户\应用数据\ VMware的\ VMware的Workstationg。


以上是修改VMware的设定,当然在windows 7下也要做一些微调,才能使vmware跑起来很顺,原文vmware提供


http://jyhshin1.blogspot.com/2013/04/vmware-on-windows-7.html