]> git.proxmox.com Git - mirror_zfs.git/commit - module/zcommon/zfs_fletcher.c
Add AVX512BW variant of fletcher
authorRomain Dolbeau <romain.dolbeau@atos.net>
Wed, 30 Oct 2019 19:26:14 +0000 (20:26 +0100)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 30 Oct 2019 19:26:14 +0000 (12:26 -0700)
commit0b2a642351f375cb9be3d2569a0ac0417340c741
tree5c5e58e318f33f44220293d35690314eaec85e7a
parentbae11ba8dc1dd992643dd0ab0b5cc3b3cc197fe9
Add AVX512BW variant of fletcher

It is much faster than AVX512F when byteswapping on Skylake-SP
and newer, as we can do the byteswap in a single vshufb instead
of many instructions.

Reviewed by: Gvozden Neskovic <neskovic@gmail.com>
Reviewed-by: Chunwei Chen <tuxoko@gmail.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Romain Dolbeau <romain.dolbeau@atos.net>
Closes #9517
include/zfs_fletcher.h
man/man5/zfs-module-parameters.5
module/zcommon/zfs_fletcher.c
module/zcommon/zfs_fletcher_avx512.c