【发布时间】:2012-11-03 05:16:24
【问题描述】:
我阅读了各种优化指南,声称 ADD 1 比在 x86 中使用 INC 更快。这是真的吗?
【问题讨论】:
-
@A.Webb 因为它取决于微架构和上下文。他必须对许多不同的 cpu 进行复杂的测试。如果你可以问,为什么要这样做?
-
@harold:如果是在他测试它和我们测试它以在 Stack Overflow 上为他写答案之间,我选择他来做。
-
@harold:公平地说,每个人都可以自己测试。唯一需要的材料是 x86 机器、组装机和秒表。制作一个指令流来展示差异需要一点创造力,但这不是火箭科学(就此而言,火箭科学不是火箭科学)。
-
真的,伙计们,这很难。如果它是“add vs and”或类似的东西,那么可以肯定,任何人都可以弄清楚。但这完全不同。大多数人只会在循环中抛出
inc和add,他们会得出结论认为没有区别。而且没有迹象表明答案不准确。 -
@harold:毫无疑问;当我第一次遇到这个摊位时,我花了 3 到 4 个小时才弄清楚发生了什么(编写一个 bignum 加法例程)。
标签: performance optimization assembly x86