64 位处理器上 32 位操作系统的性能损失

64 位处理器上 32 位操作系统的性能损失

我最近重新安装了我的笔记本,我的朋友嘲笑我,因为我没有安装 64 位版本的 vista,而是安装 32 位的。

之后我想知道 64 位操作系统的性能是否有很大差异。

(我一直对 64 位版本持怀疑态度,因为人们曾经告诉我,自从安装了 64 位版本后,很多应用程序就不再运行了。)

那么谁能帮我解决这个问题?:)

答案1

除非您正在执行计算密集型任务,否则您不会注意到 32 位和 64 位版本的操作系统之间的差异。我正在运行 Windows 7 Home Premium 64 位,在运行某些程序方面尚未遇到问题。Windows 在运行 32 位软件方面表现出色。

几年前,当 Windows XP 64 位问世时,软件/驱动程序运行不正常,存在很多问题。不过,自那时以来,已经取得了很大进步。

答案2

从纯粹的性能角度来看,答案取决于你运行的应用程序。64 位指令效率更高,但内存指针更大,这意味着缓存中可以容纳的代码更少。平均而言,这两种效果相互抵消,但在某些情况下,其中一种效果会占主导地位。

由于仍有更多人运行 32 位系统,因此 32 位驱动程序将更容易找到,调试也更彻底。

答案3

32 位操作系统除了无法有效使用超过 4GiB 的 RAM 之外,也无法有效mmap()处理大于 4GiB 的文件。最后一部分出现的频率比您想象的要高。

答案4

我同意 JustAnAnonUser_13249 的观点,这个答案已经过时了,但是没有一个答案能够充分涵盖这一点。

根据标题performance loss of a 32bit OS on a 64bit processor::

  • 假设 Windows 设置(对于其他操作系统,答案截然不同)
  • 以及 AMD 64 设置。(英特尔使用的就是这个。英特尔 64 位曾经是 Itanium)


首先,vista 32 位在 32 位处理器上的运行速度与在 64 位处理器上的运行速度一样快(在 32 位模式下)。这里的性能损失。


您的朋友可能会说“为什么不使用 64 位 Windows Vista 并利用笔记本电脑中的 64 位 CPU?”。

在这种情况下:

  1. 2009 年的驱动程序在 Windows 平台上可能不太稳定。现在情况已不再如此。(实际上,我怀疑情况并非相反)
  2. 操作系统和程序的内存占用变得更大。缓存命中率下降。这使得慢点运行 64 位。
  3. AMD 64 比旧的 32 位设置有许多改进。例如,寄存器数量增加了一倍。这使得它更快。

实际上,最后两点是互相抵消的。


但是,有一些理由不再使用古老的 32 位操作系统,例如:

  1. 地址空间限制为 4GiB。即 4GiB 减去为 PCI 卡保留的地址空间。(因此,配备 1GB 显卡的 4GiB RAM 系统可能只有不到 3GiB 的可用空间。)

  2. Windows 程序的最大内存限制为 2GiB。使用 PEA,您可以寻址更多内存,但每个程序的内存限制仍然为 2GiB。(阅读:您可以打开多个 2GiB 程序。例如三个 2GiB 程序。但不能打开一个 5GiB 程序)

  3. 驱动程序:现在几乎没人使用 32 位系统了。可能很难找到 32 位驱动程序来代替普通驱动程序(这与 2009 年提出这个问题时的情况大不相同)。

(我一直对 64 位版本持怀疑态度,因为人们曾经告诉我,自从安装了 64 位版本后,很多应用程序就不再运行了。)

用户错误。64 位浏览器、64 位插件、64 位 Java 等均可正常运行。

尝试使用 64 位浏览器和 32 位 Java 或反过来也很有趣。

那么谁能帮我解决这个问题?:)

我猜你不会再读这篇文章了,但如果有人看到这个答案,请谷歌一下这个网站。这个问题有几十种变体。

相关内容