- 开启Disable memory page trimming
- 开启所有适合的虚拟机内存为保留主机RAM
- 开启prefvmx.useRecommendedLockedMemSize
- 取消mainMem.useNamedFile
- 取消Schedmemkpsharekenable
- 取消 MemAllowAutoScaleDown
开启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