Proposal Details
hash64.go currently implements wyhash
wyhash owner recognized rapidhash as the official new version.
Several measurements showed rapidhash as faster and of better quality than wyhash.
It is currently the best recomended hash function by both SMHasher and SMHasher3
Integrating rapidhash may be an opportunity to easily improve hash64.go without any drawbacks.
Cheers, Nicolas
Comment From: seankhliao
I think we'd like to see the performance of a Go implementation first?
Comment From: randall77
The hash used in hash64.go is inspired by wyhash, it isn't an actual copy of it. So I'm not sure exactly what changes are being proposed here.
Also, this is the fallback hash. Popular architectures don't use this hash, they use assembly implementations that use things like AES instructions. Rapidhash claims better performance on amd64 and arm64, but those are both platforms where hash64.go doesn't matter.
That said, I'm happy to look at CLs. I'm going to close this issue, as it doesn't need to be part of the proposal process. Make sure we see some performance data with the CLs (you can force use of the fallback hash by doing things like GODEBUG=cpu.aes=off
).