2

我试图了解整数乘法与按位运算之间的性能差异......

我有两种潜在的散列算法作用于 64 位键,一种使用单个乘法、单个右移和单个掩码,另一种涉及多个移位和掩码操作......但我想在实施之前尝试比较它们,因为弄清楚神奇的哈希数字需要一些时间才能弄清楚。

在典型的 64 位处理器上,每条 64 位整数乘法指​​令大约可以执行多少位操作?

4

3 回答 3

0

http://lab.polygonal.de/2007/05/10/bitwise-gems-fast-integer-math/

这给出了一般比较......没有指定 64 位或 32 位......但我将使用它作为基线。

于 2010-08-04T20:07:52.613 回答
0

每次乘法可能需要 10 位操作,但这并不是那么简单。

您可以将两者重叠:在进行位运算时进行乘法运算。因此,最快的解决方案可能涉及两者兼而有之。

于 2010-08-04T20:11:07.423 回答
0

我推荐阅读: http: //www.intel.com/Assets/PDF/manual/248966.pdf

(短篇小说:关于针对英特尔处理器进行优化的 PDF。可能出于您的目的非常接近一般情况)

于 2010-08-05T03:32:30.673 回答