【发布时间】:2011-05-21 02:41:33
【问题描述】:
在常见的现代 CPU(例如 x86、x86_64)上,比较两个指针和比较两个整数的 CPU 周期数是否存在差异?
【问题讨论】:
-
可能,但在实践中并不重要。
标签: performance assembly
在常见的现代 CPU(例如 x86、x86_64)上,比较两个指针和比较两个整数的 CPU 周期数是否存在差异?
【问题讨论】:
标签: performance assembly
我不确定,但在 x86_64 中你可以有一个 4 字节的 int 和一个 8 字节的指针。 所以如果比较 2 个词和 2 个半词不同,应该是有区别的。
【讨论】:
与所比较的值的类型相比,比较结果的可预测性对您的表现的影响很可能更大。如果分支预测器在大多数情况下都能正确处理,那么从某种意义上说,比较是“免费的”。
除非您注意工作集的大小,否则缓存很有可能会成为限制因素。
【讨论】: