不久前,我将笔记本电脑从 Windows XP 32 位版本升级到 Windows 7 x64。不过在此之前,我已虚拟化了物理安装,今天我仍在 VMware Workstation 下运行它。
生成的虚拟机的性能简直糟透了!为了减少内存,我卸载了很多不再需要的东西,因为机器是虚拟的,但总体来说,响应速度似乎很慢。我还在主机操作系统很少使用的独立硬盘上运行虚拟机。
我只是希望获得一些关于如何提高 VMware 性能的通用技巧,您认为呢?
编辑:以下两个答案对我来说都是很好的起点。不过我确实喜欢所选答案关于磁盘管理的策略。我正在单独的外部硬盘中运行虚拟机,可能需要以某种方式重新配置。
答案1
让我重新表述一下:您的笔记本电脑使用的是 32 位 Win-XP,并且您已将该安装复制到虚拟机。您的笔记本电脑现在使用的是 Windows 7,但这对整个问题来说并不重要,对吧?不过,您的笔记本电脑似乎足够强大,可以运行 64 位 Windows 7 系统,因此 VMWare 主机需要足够强大才能承载这一切。
首先,如果主机与原始系统一样强大,那么性能肯定会下降。中间有一个虚拟化层,这会增加一些延迟。我对我的笔记本电脑做了同样的事情,但我创建的虚拟机托管在更强大的系统上,因此性能提高了。
可能的瓶颈可能是虚拟机中 SQL Server 或其他数据库的安装。这些往往会消耗大量资源。最好在主机上安装 SQL Server,然后让虚拟机连接到这个“外部”数据库。其他问题可能是虚拟机的 RAM 数量。尽管 XP 在 512 MB 下运行良好,但我倾向于为我的虚拟机提供最多 2 GB 的 RAM。这样,虚拟机将使用更少的交换文件,因为它有更多的可用内存。
另一个瓶颈可能是包含虚拟机的硬盘。如果通过 USB 电缆将其连接到您的系统,那么速度肯定会很慢。我倾向于为虚拟机提供两个磁盘。一个用于操作系统,它将位于我的主机中最快的磁盘上,另一个用于数据,可以是任何磁盘。我经常为此使用网络共享,并在主机上共享磁盘/文件夹。这样,数据就可以从虚拟机内部和外部获取。
系统磁盘的大小最多为 8 GB,我倾向于立即申请此磁盘空间,而不是让 VMWare 一点一点地增加磁盘大小。它确实提高了性能,但占用了大量磁盘空间。
不要为了节省磁盘空间而把虚拟机放在压缩磁盘上!磁盘压缩往往会使磁盘访问速度更快一些,因为它实际上需要从磁盘读取更少的数据,但它也会给处理器带来更大的负担,因为它需要再次解压缩这些数据。这会对你的 CPU 提出更大的要求,甚至可能会增加系统内部的热量。对于笔记本电脑,当风扇无法充分冷却系统时,系统往往会降低 CPU 速度。
答案2
就我个人而言,我做过很多次你遇到的问题,从来没有遇到过这种问题。换到新电脑时,性能总是更高 - 但是,当查看开机和关机时间时,密集任务的磁盘 I/O 会失败。
需要注意的事项:
您是否减少了 RAM?对于 Windows XP 32 位客户机,除非有特殊原因,否则我通常不会使用超过 1 GB 的内存。(这会对暂停/恢复产生很大影响)
您是否检查过所有虚拟机设置?确保它处于与您的计算机支持的最新版本的 VMWare Workstation 兼容的模式。
您是否确定 CPU 模式设置为自动?
当您说将其放在自己的硬盘上时,您指的是物理驱动器还是分区?如果是分区,那就不好了 - 但请尝试对驱动器进行碎片整理。如果是单独的驱动器,请忽略这一点!
最重要的是,您是否安装了最新版本的 VMWare 工具?
您的物理(较旧的)机器是否带有主板附带的任何古怪程序,例如休眠/挂起/电源管理/超频或低频工具?我通常发现这些会引起很多麻烦。
此后,其他虚拟机的启动/恢复总体表现如何?