AVX-512技术解封及其对AMD Zen 5性能的影响分析
在Linux内核中,ChaCha对称流密码算法虽然早已具备对AVX-512的支持,但其功能长期以来受到限制。近期,该问题将在即将发布的Linux 7.5版本中得到根本性解决。首先,过去AVX-512的实现仅能一次性利用256位寄存器处理8个数据块,主要是为避免早期Intel Skylake处理器在执行512位指令时所引发的显著降频现象。以此为背景,加密操作在实施中不得不选择一定的妥协,导致性能受限。
其次,随着现代Intel及AMD处理器技术的进步,降频问题已得到有效解决,继续对AVX-512的限制显得毫无必要。为此,StrongSwan的开发者Martin Willi为libcrypto中的ChaCha代码新增了一项处理16个数据块的全宽AVX-512函数,从而使得数据处理能力得到全面提升。
研究表明,在搭载完整512位数据路径的AMD Zen 5平台(例如Ryzen AI Max Strix Halo)上,ChaCha算法的性能提升幅度可高达99%。基准测试结果显示,在处理1KiB以上的数据时,数据吞吐量由原来的约5.2GB/s攀升至约10.2GB/s。即便是在上一代的Zen 4架构上,仅支持256位数据路径的情况下,性能提升也达到了最高39%。 Mksports
此外,ChaCha20算法通常与Poly1305一同使用,作为WireGuard加密协议的关键算法。这一优化对于高负载环境中的网关、加密服务器及需处理大量加密流量的网络设备而言,意味着实际吞吐量的显著提升,进而推动了整体系统性能的改善。目前,该补丁已被纳入libcrypto-next分支,并预计在即将到来的Linux 7.5合并窗口中正式整合至主干代码。
综上,针对经历了长期限制的加密性能瓶颈,相关技术的升级为运维人员带来了新的机遇和解决方案,令其期盼已久的性能回归即将实现。