所以,这是我一直以来的问题。从来没有看到过完整的答案,所以请大家帮帮我。
我有一台 Intel Core i7 CPU,启用了所有硬件功能(超线程除外)。
我的操作系统是 Win 7 x64 Professional,SP1,正版。
我已经安装了 VMWare(目前为 7.1.4)。
我应该使用哪个客户端?64 位还是 32 位?
我不知道。哪个更好?
(内存不是问题,电脑上有 10GB。我想知道哪个在客户机性能方面更好。)
答案1
这里涉及两个因素。依次为:
CPU 模拟
主机和客户机之间的不匹配可能会迫使虚拟机使用 CPU 模拟模式。我不希望这种情况发生,但根据您的虚拟机管理程序、操作系统和架构,这种情况是有可能发生的。您要不惜一切代价避免这种情况。另一方面,您希望您的虚拟机管理程序也与您的主机系统匹配。因此,如果您有 64 位 Windows,请寻找 64 位版本的 VirtualBox、VMWare 等。一旦您确定这不是问题,就归结为下一个因素:
内存
如果您通常为客户机提供少于 4GB 的 RAM,那么现在就坚持使用 32 位。在迁移到 x64 的过程中还有其他变化,但在大多数情况下,这些变化对您的虚拟机的帮助不如从较小的指针/字大小中节省的 RAM 大,因为虚拟机有更多的 I/O 问题,需要更多的 RAM 来帮助节省频繁访问磁盘的时间。不要忘记在这里允许增长。您不想从头开始重建虚拟机。例如,我可能会将虚拟机设置为 64 位,作为数据库服务器,即使它现在只有 2GB 的 RAM。我会对 Windows 7 测试映像执行相同操作。但如果我有一台机器用于在 Windows XP 上的 IE7 下测试网站,我会将其保留为 32 位。
最后,您提到您已关闭超线程。如果您要执行大量 VM 工作,则可能需要将其打开。您有时想要关闭它的原因是它为每个核心提供更多缓存。大多数使用四核处理器的人甚至很多时候都不会使用所有核心,而超线程提供的额外核心并不是那么强大,因为管道中存在冲突问题,其中发生在同一个物理中的两个指令可能以某种方式相关。因此,少数核心上更大的缓存大小带来的收益有时会超过额外弱核心带来的收益。但是,VM 可以使用这些假的额外核心,并确保管道相当干净,并且几乎没有通常会阻碍此功能的问题。
答案2
我建议你使用 64 位客户机只有一个原因:它们在超过 4 Gb 的 RAM 下运行良好。如今 4G 并不算多,即使你现在不需要它,一段时间后可能也需要在客户机上拥有 >4G 的 RAM。
在这种情况下,您将需要重新安装 32 位客户机,而对于 64 位客户机,您只需要更改虚拟机设置。