By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
World of SoftwareWorld of SoftwareWorld of Software
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Search
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
Reading: Linux Kernel Patches Speed-Up CRC32 Performance For CPUs With “Good” AVX-512
Share
Sign In
Notification Show More
Font ResizerAa
World of SoftwareWorld of Software
Font ResizerAa
  • Software
  • Mobile
  • Computing
  • Gadget
  • Gaming
  • Videos
Search
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Have an existing account? Sign In
Follow US
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
World of Software > Computing > Linux Kernel Patches Speed-Up CRC32 Performance For CPUs With “Good” AVX-512
Computing

Linux Kernel Patches Speed-Up CRC32 Performance For CPUs With “Good” AVX-512

News Room
Last updated: 2025/07/20 at 7:36 AM
News Room Published 20 July 2025
Share
SHARE

Google engineer Eric Biggers who has been responsible for many great Linux cryptography subsystem performance optimizations in recent years has another exciting patch series. Biggers has done some great work for optimizing various functions for modern Intel/AMD CPUs especially around AVX-512 implementations and now he has another big optimization coming for the CRC32 checksum performance.

On Saturday was the new patch series by Eric Biggers working to improve CRC32C performance on lengths at least 512 bytes. The strategy here is relying on AVX-512’s VPCLMULQDQ vector carryless multiplication on capable CPUs.

With this patch series on the Linux kernel mailing list he explained:

“Improve crc32c() performance on lengths >= 512 bytes by using crc32_lsb_vpclmul_avx512() instead of crc32c_x86_3way(), when the CPU supports VPCLMULQDQ and has a “good” implementation of AVX-512. For now that means AMD Zen 4 and later, and Intel Sapphire Rapids and later. Pass crc32_lsb_vpclmul_avx512() the table of constants needed to make it use the CRC-32C polynomial.

Rationale: VPCLMULQDQ performance has improved on newer CPUs, making crc32_lsb_vpclmul_avx512() faster than crc32c_x86_3way(), even though crc32_lsb_vpclmul_avx512() is designed for generic 32-bit CRCs and does not utilize x86_64’s dedicated CRC-32C instructions.”

The end result? Some pretty nice speed-ups for the CRC32 performance on modern Intel and AMD CPUs that sport the “good” AVX-512 implementations:

CRC32C benchmarks

Eric Biggers did go on to note though that even with recent Intel Xeon CPUs, AMD’s AVX-512 implementation does still have a lower warm-up time compared to using AVX-512 with recent Intel processors:

“That being said, in the above benchmarks the ZMM registers are “hot”, so they don’t quite tell the whole story. While significantly improved from older Intel CPUs, Intel still has ~2000 ns of ZMM warm-up time where 512-bit instructions execute 4 times more slowly than they normally do. In contrast, AMD does better and has virtually zero ZMM warm-up time (at most ~60 ns). Thus, while this change is always beneficial on AMD, strictly speaking there are cases in which it is not beneficial on Intel, e.g. a small number of 512-byte messages with “cold” ZMM registers. But typically, it is beneficial even on Intel.

Note that on AMD Zen 3–5, crc32c() performance could be further improved with implementations that interleave crc32q and VPCLMULQDQ instructions. Unfortunately, it appears that a different such implementation would be optimal on *each* of these microarchitectures. Such improvements are left for future work. This commit just improves the way that we choose the implementations we already have.”

The performance results are nice and hopefully this VPCLMULQDQ-optimized crc32c() code will make it to the mainline Linux kernel soon for further enhancing modern x86_64 AVX-512-capable processors.

Sign Up For Daily Newsletter

Be keep up! Get the latest breaking news delivered straight to your inbox.
By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
Share This Article
Facebook Twitter Email Print
Share
What do you think?
Love0
Sad0
Happy0
Sleepy0
Angry0
Dead0
Wink0
Previous Article Legendary discount retailer with over 3,000 stores launches 50% off sales
Next Article AI Product Photo Editor for Beginners | Unlocking Pro Results 
Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

248.1k Like
69.1k Follow
134k Pin
54.3k Follow

Latest News

Congratulations pour in for Patrick Mahomes after being named best NFL QB
News
Forget Prime Day — You can still save on these 21 running shoe deals on Brooks, Skechers, Asics and more at Amazon
News
Linux 6.16-rc7 Bringing Fix For Possible Bogus/Miscalculated Load Averages
Computing
AI Coding Tools Underperform in Field Study with Experienced Developers
News

You Might also Like

Computing

Linux 6.16-rc7 Bringing Fix For Possible Bogus/Miscalculated Load Averages

3 Min Read
Computing

Your One-Stop Guide to All the Type Promotion Changes in TensorFlow 2.15 | HackerNoon

11 Min Read
Computing

Walking You Through WASI Support in Go | HackerNoon

9 Min Read
Computing

Unleashing LLM Speed: Multi-Token Self-Speculative Decoding Redefines Inference | HackerNoon

1 Min Read
//

World of Software is your one-stop website for the latest tech news and updates, follow us now to get the news that matters to you.

Quick Link

  • Privacy Policy
  • Terms of use
  • Advertise
  • Contact

Topics

  • Computing
  • Software
  • Press Release
  • Trending

Sign Up for Our Newsletter

Subscribe to our newsletter to get our newest articles instantly!

World of SoftwareWorld of Software
Follow US
Copyright © All Rights Reserved. World of Software.
Welcome Back!

Sign in to your account

Lost your password?