Skip to content

Commit

Permalink
MDEV-33817: AVX512BW and VPCLMULQDQ based CRC-32
Browse files Browse the repository at this point in the history
This is based on https://github.com/intel/intel-ipsec-mb/
and has been tested both on x86 and x86-64, with code that
was generated by several versions of GCC and clang.
GCC 11 or clang 8 or later should be able to compile this,
and so should recent versions of MSVC.

Thanks to Intel Corporation for providing access to hardware,
for answering my questions regarding the code, and for
providing the coefficients for the CRC-32C computation.

crc32_avx512(): Compute a reverse polynomial CRC-32 using
precomputed tables and carry-less product, for up to 256 bytes
of unaligned input per loop iteration.

Reviewed by: Vladislav Vaintroub
  • Loading branch information
dr-m committed May 3, 2024
1 parent 611cd6b commit 9ec7819
Showing 1 changed file with 390 additions and 0 deletions.

0 comments on commit 9ec7819

Please sign in to comment.