Re: btrfs hash algorithm (should xxhash be the default?)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jan 31, 2021 at 11:57 AM Matthew Miller
<mattdm@xxxxxxxxxxxxxxxxx> wrote:
>
> 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?

I'm seeing:

[    1.179693] Btrfs loaded, crc32c=crc32c-generic, zoned=yes

Someone adventurous might want to figure out how to get it to use
crc32c_intel instead. I think it might need to be compiled into the
kernel.

CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32C_INTEL=m

And then retest.

But also, the difference in performance between xxhash and crc32c is
pretty tiny. I'm using all four hashes on various file systems, and up
until there's a heavy IO workload, there's no performance difference
among them.


-- 
Chris Murphy
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux