皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

Intel QAT 驱动在 Linux 7.1 中加入 Zstd 卸载支持

Intel QuickAssist(简称 QAT)驱动程序即将为主流 Linux 7.1 内核添加对 Zstd 加速的支持,适用于 QuickAssist Gen 4、Gen 5 和 Gen 6 加速器,支持 Zstandard 压缩和解压缩(其中解压缩功能仅限于最新的 Gen 6 硬件)。

该功能已通过 Linux 加密子系统中的 “cryptodev” 分支提交,预计将在即将到来的 Linux 7.1 合并窗口中被接纳。此 Intel QAT Zstd 支持为现有的 Gen4/Gen5 QAT 加速器提供了基本的压缩卸载功能。而新一代 Xeon 处理器中采用的最新 Gen6 IP 则提供了更清晰的原生 Zstd 压缩与解压缩卸载路径。Intel 上一年首次在其 Linux 内核驱动中引入了对 QAT Gen6 的支持。

Intel QAT 驱动在 Linux 7.1 中加入 Zstd 卸载支持

该补丁总结了 QAT 对 Zstd 加速的支持如下:
“通过 acomp API 为 QAT GEN4、GEN5 和 GEN6 添加对 ZSTD 算法的支持。

对于 GEN4 和 GEN5,压缩操作通过硬件使用 LZ4s(QAT 特有的 LZ4 变体)执行。压缩输出随后经过后处理以生成 ZSTD 序列,并使用 ZSTD 库通过 zstd_compress_sequences_and_literals() 生成最终的 ZSTD 流。只有大小在 8 KB 到 512 KB 之间的输入会被卸载到设备上。一旦加入轮询支持,最小尺寸限制将会放宽。最大尺寸受限于预分配的每个 CPU 的临时缓冲区。在这些版本中,仅压缩被卸载到硬件;解压缩始终回退到软件处理。

对于 GEN6,压缩和解压缩均可卸载至加速器,因为其原生支持 ZSTD 算法。输入缓冲区大小无限制。然而,由于 GEN6 限制了 64 KB 的历史窗口大小,使用更大历史窗口压缩的帧在解压缩时会回退到软件处理。”

很高兴看到 Zstandard 压缩支持终于来到了 Intel QAT 驱动中,而 Gen6 将提供更为强大的硬件加速 Zstd 压缩与解压缩能力。

转自 Intel QAT Driver With Linux 7.1 Adding Zstd Offload Support – Phoronix