我们是否需要考虑 python 平台位或 Linux 平台位来找到合适的 pyhash - murmur3_x**_128 函数?

Do we need to consider python platform bits or Linux ones for finding the suitable pyhash - murmur3_x**_128 function?

我想在我的程序中使用 pyhash murmur3 128 位算法。
它有 2 种不同的变体,即 murmur3_x64_128murmur3_x86_128.
指的是python平台还是Unix平台?

例如用法: (两者都在我的系统上工作,但我的 python 和 Linux 都是 64 位的。)

hasher = pyhash.murmur3_x86_128()
print(hasher("foo"))
hasher = pyhash.murmur3_x64_128()
print(hasher("foo"))

# Output:
# 21517627922880161342356693896102748869
# 323517048543817317219522474765345119020

是指你机器的平台,不是Python。正如您所注意到的,它们不是相同的哈希值,不能互换使用。

murmur3_x64_128 在 64 位平台上的性能优于 murmur3_x86_128,但在没有本机 64 位操作的 32 位平台上的性能相当差。

murmur3_x86_128 在两个平台上具有相同的性能。