On my Intel i7 laptop, xxhash is a small but clear performance win over
crc32c:
$ ./hash-speedtest 10000000
Block size: 4096
Iterations: 10000000
Implementation: builtin
NULL-NOP: cycles: 1372543560, c/i 137
NULL-MEMCPY: cycles: 2844174884, c/i 284
CRC32C: cycles: 9673117404, c/i 967
XXHASH: cycles: 7129819594, c/i 712
SHA256: cycles: 649914613520, c/i 64991
BLAKE2b: cycles: 153513008046, c/i 15351
And I'm given to understand that this is even more the case on newer CPUs.
Plus, it's 64 bit instead of 32 bit. The 256-bit algorithms are obviously
much, much slower and probably not right for a default, but should we
consider making xxhash the default for Fedora Linux systems with btrfs?
--
Matthew Miller
<mattdm(a)fedoraproject.org>
Fedora Project Leader