Chr*_*ton 15 operating-system 32bit-64bit
我主要研究32位嵌入式系统,使用本机32位类型(int,float)通常比16位等效系统更快.增速放缓来自处理器在执行操作之前将任何16位数扩展到32位.
现在我已经转向PC和64位操作系统了.我的问题是 - 32位类型会导致64位机器的速度减慢吗?
例如,如果我将MyApp.exe构建为32位应用程序,它会在64位操作系统上运行得更慢还是更快?
我知道应用程序的性能涉及很多因素,我故意从问题中排除这些因素(IO速度,更快的内存等).
Nat*_*C-K 10
有时32位应用程序运行得更快,有时它们运行得更慢.影响性能的竞争因素很多.通常,任一方向的差异都不是很大.
我不明白你如何合理地从性能考虑中排除任何因素,因为性能总是发生在所有因素都起作用的现实世界中.速度不是理论上的,不能孤立地对待.
这篇文章是作者做了一些基准测试的:
http://www.osnews.com/story/5768
他发现32位二进制文件在测试中速度更快.这是2004年初的SPARC.
以下是英特尔2010年关于迁移到64位应用程序的文章:
http://software.intel.com/en-us/articles/moving-from-32-bit-applications-to-64-bit-applications-en/
根据这篇文章,64位二进制文件可以为您提供更快的数学运算,因此如果正确优化,数学繁重的代码应该更快.否则,您的64位代码可能会变慢,特别是因为它需要更多内存,这可能会导致更多时间访问RAM(更频繁的缓存未命中).
| 归档时间: |
|
| 查看次数: |
24606 次 |
| 最近记录: |