32 位应用程序在 64 位版本上的运行速度是否比在 32 位版本上慢(在 Windows 7 上)?

32 位应用程序在 64 位版本上的运行速度是否比在 32 位版本上慢(在 Windows 7 上)?

假设有一个相当快的 CPU(双核 2.9 Ghz)和 4 GB 的 RAM,典型的 32 位应用程序在 64 位 Windows 7 上的运行速度是否与在 32 位版本上的速度相同?

答案1

由于必须经过WoW64仿真。这种差异可能并不明显,您可能注意不到,但确实存在。

答案2

事实上,一些应用程序可能会运行得更快。系统本身会有更高效的驱动程序。x86-64 需要无模拟32 位应用程序,处理器可以本地运行 32 位应用程序。维基百科实际上有一个很好的技术解释。

答案3

这是一个非常有争议且需要具体事实的问题。没有一个正确的答案。

普通代码无需模拟,只需模拟系统调用即可。对于大多数应用程序而言,系统调用只是其资源消耗的极小部分。因此,在大多数实际情况下,人们会认为系统调用非常非常接近于相同。

如果系统有 4GB 或更多内存,那么额外内存的好处很可能超过系统调用转换的轻微开销。32 位 Windows 7 限制为约 3.5GB。额外内存形成更大的磁盘缓存,而磁盘 I/O 比典型系统所做的几乎任何其他操作都要昂贵。

相关内容