Operating system 32位应用程序在64位操作系统上运行得更快还是更慢?
我主要在32位嵌入式系统上工作,在这些系统中,使用本地32位类型(int、float)通常比使用16位等效类型更快。速度放缓的原因是处理器在对其执行操作之前将任何16位数字扩展到32位 现在我转向PC和64位操作系统。我的问题是-32位类型会导致64位机器上的任何减速吗 例如,如果我将MyApp.exe构建为32位应用程序,它在64位操作系统上的运行速度是较慢还是较快Operating system 32位应用程序在64位操作系统上运行得更快还是更慢?,operating-system,32bit-64bit,Operating System,32bit 64bit,我主要在32位嵌入式系统上工作,在这些系统中,使用本地32位类型(int、float)通常比使用16位等效类型更快。速度放缓的原因是处理器在对其执行操作之前将任何16位数字扩展到32位 现在我转向PC和64位操作系统。我的问题是-32位类型会导致64位机器上的任何减速吗 例如,如果我将MyApp.exe构建为32位应用程序,它在64位操作系统上的运行速度是较慢还是较快 我知道应用程序的性能涉及很多因素,我故意将这些因素排除在问题之外(IO速度、更快的内存等)。有时32位应用程序运行得更快,有时运
我知道应用程序的性能涉及很多因素,我故意将这些因素排除在问题之外(IO速度、更快的内存等)。有时32位应用程序运行得更快,有时运行得更慢。影响绩效的竞争因素很多。一般来说,两个方向的差异都不大 我不明白你怎么能合法地将任何因素排除在性能考虑之外,因为性能总是发生在现实世界中,所有因素都在起作用。速度不是理论上的,不能孤立地对待 以下是一篇作者做了一些基准测试的文章: 他发现32位二进制文件在他的测试中速度更快。这是2004年初SPARC的节目 以下是英特尔2010年的一篇文章,内容是关于迁移到64位应用程序:
根据本文,64位二进制文件可以让您获得更快的数学运算速度,因此,如果正确优化,数学密集型代码应该会更快。否则,您的64位代码可能会更慢,特别是因为它占用更多内存,这可能会导致访问RAM的时间更长(更频繁的缓存未命中)。您包括哪些因素?我考虑的是32位与64位操作的CPU执行。但是当你有更多的代码时,Nate C-K在RAM访问时间方面提出了一个很好的观点。