Open pbadari opened 5 months ago
We are working on adding support for AVX512 https://github.com/awslabs/aws-checksums/pull/79 https://github.com/awslabs/aws-checksums/pull/81
We are working on adding support for AVX512 #79 #81
Right now, there are 2 different AVX512 implementations of CRC32 and CRC32c. One is written by me (in Jonathan's AVX512 branch and #89) and other is written by Marco #90. Both versions perform similar (Marco's version is common across crc32 and crc32c). Please review and let me know which one you prefer. I can provide any help needed to merge them.
Describe the bug
aws_checksums_crc32c_avx512() is doing an extra bit flipping on the previousCRC causing incorrect checksums
Expected Behavior
aws_checksums_crc32c_avx512() computed checksum matches sse4.2 or sw computed versions.
Current Behavior
aws_checksums_crc32c_hw() has bit flips previousCRC value and has this comment:
aws_checksums_crc32c_avx512() is a subfunction and it should NOT bit flip again.
Reproduction Steps
Compute crc32c checksum on the same buffer with and without AVX512 code and compare the results.
Possible Solution
Additional Information/Context
No response
aws-checksums version used
AVX512 branch
Compiler and version used
gcc version 11.4.0
Operating System and version
Ubuntu 22.04