1
3
主要是对编辑的回答,而不是最初的问题:我移植了一个应用程序,它对统计和(特别是)线性代数非常重要,可以作为64位代码运行。对于这段代码,所做的努力是最小的,我们的速度提高了3:1。 我怀疑大多数这样的概念,即通常不会有来自(通常是间接的)公司的代码将不容易移植,并尽最大努力告诉客户为什么继续购买他们的程序是一个好主意,即使它仍然是32位代码。我移植的代码(或者在大多数情况下只是“重新编译”)。 没有人 以64位代码的形式出现的速度要慢一些,而且大多数代码的出现速度至少要快一点。 |
2
3
答案可能是。你必须测量。 使用64位目标允许使用更多的寄存器,这意味着对内存的访问更少,因此执行速度更快。 另一方面,使用64位目标会强制所有指针和地址都是64位,从而扩大内存占用,并降低执行速度。 |
3
1
答案可能很大。 针对不同的平台肯定会对应用程序产生性能影响,因为您正在对应用程序进行实质性的更改。它对于类型、操作和交互的操作系统具有不同的大小语义。 这些因素和许多其他因素肯定会导致应用程序中的性能变化。无论它是微妙的,巨大的,更好的,更糟的,等等…将高度特定于您正在编写的应用程序类型。如果没有更多的细节,就不可能给出一般的答案。 |
4
0
其他一切都相等(不太可能),64位的额外数据大小(处理指针时要移动的数据量的两倍)将导致期望它变慢。 但其他因素(如头顶的哇)可能主导一切… 唯一的方法是在目标硬件上测试应用程序。 |
5
0
如果大部分执行时间都花在数学上,那么您可能会得到一个好处。在大多数情况下,这是不正确的。如果你在做核反应堆的蒙特卡罗模拟,或者光线跟踪渲染,或者类似的事情,你可能会看到一个巨大的好处。我的拭子“没什么好处” |
6
-1
可能更慢-您已经有效地将CPU缓存的大小减半了 当然,英特尔和AMD的工程师都知道这一点,因此内存管理器做了大量工作来减少64位宽指针和整数的影响,因为只有32位低 |
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
rainer · 后台插入程序的初始化 1 年前 |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |