Int64 和 Int32 在 32 位和 64 位 MS Windows 上的实际性能差异是什么?
在两个操作系统变体中的每一个上看到 Int64 与 Int32 的一些实际时序也很棒。XP 或 Vista 也会很有趣。
- 另请参阅有关memcpy性能的问题。
就硬件而言,Int64 在 x64 和 IA64 上比 x86 更有效,因为 64 位处理器具有 64 位寄存器来执行对它们的操作。
Int32 在所有 x86、x64 和 IA64 上同样有效。
在 x64 和 IA64 上,Int32 和 Int64 都同样有效。
在 x86 上,Int32 将比 Int64 更有效。
就操作系统本身而言,我认为除了上面提到的性能结果之外,您不会看到任何额外的性能问题。
如有疑问,请使用 int32。它不仅在 x86 体系结构上更快,而且其中有很多是静止的,而且请记住,您的缓存是有限的,您可以将两倍于 int64 的 int32 放入 CPU 缓存中。
您可能希望关注 SpankyJ 过去关于 64 位开发的条目
http://blogs.msdn.com/joshwil/archive/2005/04/28/413320.aspx
从硬件的角度来看,即如果操作系统充分利用架构,Int64 在 64 位系统上将更有效。
Int32 在 32 位系统上可能稍微高效一些,因为 64 位系统可能必须模拟 32 位操作。