在32位和64位的MS Windows上,Int64和Int32之间的实际性能差异是什么?
同时,看到Int64与Int32在这两个操作系统变体上的实际时间也会很棒。XP或Vista也很有趣。
- 另请参阅有关memcpy性能的问题。
就硬件而言,在x64和IA64上,Int64的效率比x86更高,因为64位处理器具有64位寄存器来执行操作。
在所有x86、x64和IA64上,Int32的效率都是相同的。
在x64和IA64上,Int32和Int64的效率是相同的。
在x86上,Int32的效率比Int64更高。
至于操作系统本身,我认为您不会看到任何额外的性能问题,而仅有上述提到的性能结果。
当你不确定时,选择int32。它不仅在x86架构上更快,而且许多这样的架构仍然存在,但请记住你的缓存是有限的,你可以将两倍的int32放入CPU缓存中,而不是int64。
从硬件角度来看,也就是如果操作系统充分利用了架构,Int64 在 64 位系统上会更有效率。
在 32 位系统上,Int32 可能会稍微更有效率,因为 64 位系统可能需要模拟 32 位操作。
你可能希望关注SpankyJ在64位开发方面的过往记录
http://blogs.msdn.com/joshwil/archive/2005/04/28/413320.aspx