7

Int64 和 Int32 在 32 位和 64 位 MS Windows 上的实际性能差异是什么?

在两个操作系统变体中的每一个上看到 Int64 与 Int32 的一些实际时序也很棒。XP 或 Vista 也会很有趣。

  • 另请参阅有关memcpy性能的问题。
4

4 回答 4

8

就硬件而言,Int64 在 x64 和 IA64 上比 x86 更有效,因为 64 位处理器具有 64 位寄存器来执行对它们的操作。

Int32 在所有 x86、x64 和 IA64 上同样有效。

在 x64 和 IA64 上,Int32 和 Int64 都同样有效。

在 x86 上,Int32 将比 Int64 更有效。

就操作系统本身而言,我认为除了上面提到的性能结果之外,您不会看到任何额外的性能问题。

于 2008-11-11T17:39:00.647 回答
3

如有疑问,请使用 int32。它不仅在 x86 体系结构上更快,而且其中有很多是静止的,而且请记住,您的缓存是有限的,您可以将两倍于 int64 的 int32 放入 CPU 缓存中。

于 2008-11-11T20:28:02.350 回答
0

您可能希望关注 SpankyJ 过去关于 64 位开发的条目

http://blogs.msdn.com/joshwil/archive/2005/04/28/413320.aspx

于 2008-11-13T10:42:05.807 回答
-1

从硬件的角度来看,即如果操作系统充分利用架构,Int64 在 64 位系统上将更有效。

Int32 在 32 位系统上可能稍微高效一些,因为 64 位系统可能必须模拟 32 位操作。

于 2008-11-11T17:50:16.300 回答