Btrfs - best results with xxhash

Hi all,

if anyone use btrfs, here are some results of the hash-benchmark (shipped with btrfs-progs) (mainstream kernel 6.8.1)


CPU flags: 0x1
CPU features:
Block size:     4096
Iterations:     100000
Implementation: builtin
Units:          CPU cycles

      NULL-NOP: cycles:            0, cycles/i        0
   NULL-MEMCPY: cycles:            0, cycles/i        0,      548.632 MiB/s
    CRC32C-ref: cycles:            0, cycles/i        0,       84.784 MiB/s
     CRC32C-NI: no CPU support
        XXHASH: cycles:            0, cycles/i        0,      698.001 MiB/s
    SHA256-ref: cycles:            0, cycles/i        0,       11.974 MiB/s
     SHA256-NI: no CPU support
    BLAKE2-ref: cycles:            0, cycles/i        0,       54.445 MiB/s
   BLAKE2-SSE2: no CPU support
  BLAKE2-SSE41: no CPU support
   BLAKE2-AVX2: no CPU support

So if you create a new filesystem, use parameter

mkfs.btrfs --checksum xxhash

3 Likes

I guess that because we don’t have CPU helper on RISC-V.

Thanks, I had never heard of xxhash before. This link for mote info about it https://github.com/Cgyan4973/xxHash and https://xxhash.com/