gpt4 book ai didi

operating-system - 32 位应用程序在 64 位操作系统上运行得更快还是更慢?

转载 作者:行者123 更新时间:2023-12-03 20:51:43 24 4
gpt4 key购买 nike

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center为指导。




9年前关闭。




我主要在 32 位嵌入式系统上工作,使用原生 32 位类型(int、float)通常比使用 16 位等效项更快。减速来自处理器在对其执行操作之前将任何 16 位数字扩展到 32 位。

现在我已经转向 PC 和 64 位操作系统。我的问题是 - 32 位类型是否会导致 64 位机器变慢?

例如,如果我将 MyApp.exe 构建为 32 位应用程序,它会在 64 位操作系统上运行得更慢还是更快?

我知道应用程序的性能涉及很多因素,我特意从问题中排除了这些因素(IO 速度、更快的内存等)。

最佳答案

有时 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 花费更多时间(更频繁的缓存未命中)。

关于operating-system - 32 位应用程序在 64 位操作系统上运行得更快还是更慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12224809/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com