有 32 位应用程序和 64 位 PC(硬件)。硬件供应商说:要在 64 位 PC 上运行 32 位应用程序,Win7 32 位足以获得应用程序的最大性能。
我不同意,因为如果 Windows 64 的话,它应该最适合在 64 位硬件下工作,即使应用程序是 32 位。
我们争论过了..
所以我的问题是:什么配置将导致 32 位应用程序的最高性能 - “64 位 PC 上的 Win32”还是“64 位 PC 上的 Win64”?
答案1
什么会导致 32 位应用程序的性能最高 - “64 位 PC 上的 Win32”或“64 位 PC 上的 Win64”?
答案是 - 视情况而定。唯一的办法就是进行基准测试。
有时 32 位应用程序运行得更快,有时运行得更慢。有很多相互竞争的因素影响性能。通常,两个方向的差异不是很大。
我不认为你可以合理地将任何因素排除在性能考虑之外,因为性能总是发生在现实世界中,所有因素都在发挥作用。速度不是理论上的,不能孤立地看待。
以下是作者进行了一些基准测试的文章:
http://www.osnews.com/story/5768
他发现 32 位二进制文件在测试中运行速度更快。那是在 2004 年初在 SPARC 上进行的。
以下是英特尔 2010 年的一篇有关转向 64 位应用程序的文章:
http://software.intel.com/en-us/articles/moving-from-32-bit-applications-to-64-bit-applications-en/
根据这篇文章,64 位二进制文件可以让你更快地进行数学运算,因此如果正确优化,数学运算繁重的代码应该会更快。否则,你的 64 位代码可能会更慢,特别是因为它占用更多内存,这可能会导致花费更多时间访问 RAM(更频繁的缓存未命中)。