在 64 位 CPU 上使用 32 位 Linux 是否会对性能造成影响?

在 64 位 CPU 上使用 32 位 Linux 是否会对性能造成影响?

我正在运行 32 位 Ubuntu 10.04,内存为 2GB。我的处理器 (AMD Athlon 64 X2) 是否运行不理想?鉴于更大的寻址空间对我来说没有区别(目前),切换到 64 位 Ubuntu 是否会提高性能或带来其他好处。

答案1

我无法用数字来说明,但据我所知,64 位 Ubuntu 在进行真正密集的计算时会运行得更快。也许对于一些多媒体来说......不太确定

对于桌面使用,您可能不会注意到太大的差异。一段时间前最大的问题是闪存 64 位的可用性,一些驱动程序可能会表现不同(即如果它们仅适用于 32 位),等等

我也有一台 AMD Athlon 64,我曾经尝试过几次(四年前)使用 64 位发行版,但我发现它(因为这些位)比我能获得的好处更令人不快

答案2

为 64 位编译的程序将运行得更快,因为 64 位模式下的处理器会向系统公开更多寄存器。我将用这个伪代码来说明

X = 10
Y = 10
Z = 10

LOOP WHILE X > 0
{
  X=X-1
  Y=Y-1
  Z=Z-1
}

上述代码的目的是从值 10 中减去 1,直到 X 的值等于零。例如,如果您有一个带有两个寄存器的处理器,它可以将 X 和 Y 的数据保存在这些寄存器中,但需要将寄存器复制到主内存并从主内存中检索 Z 的值才能计算它。当再次需要 X 和 Y 时,它需要将 Z 推送到主内存并再次检索 X 和 Y。这需要在每个循环中执行,直到 X 等于零。如果您的 CPU 有更多寄存器(例如八个),则 CPU 可以将所有变量保存在寄存器中,而不需要访问主内存,从而避免了主内存的大量处理和延迟,主内存比处理器上的寄存器慢得多。因此,几乎所有为 64 位编译的程序都会运行得更快。正如其他人已经指出的那样,这在进行大量繁重计算的程序中最为明显。如果这很难理解,可以想象当您的计算机内存不足并需要使用硬盘来保存数据时。硬盘(和 SSD)比主内存慢很多。当然,实际情况有些不同,性能增益/损失可能不明显,具体取决于您使用计算机的目的。一般来说,从纯技术角度来看,64 位会更快。希望这能回答你的问题!:)

答案3

这取决于您的具体计算机配置和工作量。不过,一般情况下,选择 32 位而不是 64 位配置并不会有什么损失。

答案4

性能应该不会有任何差异。唯一的问题是你不能使用超过 3GB 的 RAM。你也无法进行一些繁重的数学计算。

请记住,即使您有一台 64 位计算机,在使用 32 位操作系统时也只能使用 32 位程序。

相关内容