英特尔快速辅助技术

关注
义项:英特尔快速辅助技术
英特尔快速辅助技术

英特尔快速辅助技术(Intel QuickAssist Technology,简称英特尔 QAT)是英特尔推出的硬件加速技术,用于加速数据压缩与解压缩、对称加密与非对称加密等计算密集型任务,把这些工作从中央处理器核心卸载到专用加速单元上[1]。它最初以独立 PCIe 加速卡和通信芯片组的形式出现,后来被集成进英特尔至强可扩展处理器,成为片上加速器,用于云、数据中心、网络与存储等场景[2]。

百科 图文
目录
  1. 定义
  2. 原理
  3. 发展历程
  4. 应用
  5. 局限
  6. 参见

定义

英特尔快速辅助技术是英特尔提供的硬件加速能力,用来分担中央处理器在压缩与加密方面的负载。它面向数据压缩与解压缩、对称加密、非对称加密及解密这几类运算,把原本由通用处理器核心执行的运算密集型任务转移到专用加速器上完成[1]。

该技术以多种形态存在,既可以是独立的 PCIe 扩展卡,也可以作为片上系统或至强可扩展处理器内部的集成单元[3]。在集成形态下,部分至强可扩展处理器单颗芯片上可配置多达 4 个加速器实例[1]。

原理

应用程序通过英特尔 QAT 的接口库提交待处理的数据载荷。用户态库把这些请求转换成描述符,写入传输队列,也就是硬件辅助环形缓冲区;固件解析描述符后配置相应加速引擎,运算完成后把结果与响应消息写入响应环[4]。

队列以环形缓冲区实现,内存位于系统内存中,设备通过配置寄存器设定基地址、条目大小与条目数量。软件把请求描述符写入请求队列的下一个可用位置并更新尾指针,设备固件读取描述符后更新头指针,处理完成后将响应描述符写入响应队列[5]。

加速器支持的对称加密算法包括 AES、DES、3DES、ARC4,散列与认证包括 SHA-1、MD5、SHA-2 系列、HMAC,非对称运算包括 RSA、Diffie-Hellman、椭圆曲线签名与密钥交换;压缩方面支持基于 Lempel-Ziv 77 的 DEFLATE,以及 LZ4、LZO 等算法[6][2]。压缩级别越高,压缩比越好,但延迟上升、吞吐下降[2]。

片上版本与早期独立卡版本在连接方式上不同。独立卡以 PCIe 端点设备形式接入,片上加速器则以根复合体集成端点形式出现,并与处理器通过缓存一致性互连直接相连;片上版本还引入了共享虚拟内存与可扩展 I/O 虚拟化等特性,前者让加速器可直接用虚拟地址访问共享数据,省去内存固定与数据拷贝的开销[2]。

发展历程

第一代 QAT 于 2007 年公布,出现在代号 Tolapai 的英特尔 EP80579 产品中,当时被视为把加密等工作负载放到加速器上执行比通用核心更高效的早期尝试。

随后出现了以芯片组和扩展卡为主的几代产品。以 Granite Hill 为代号的 8920 与 Walnut Hill 的 8950 属于较早的板卡世代,分别对应英特尔通信芯片组 8920 与 8955,常见于 Atom C2000 等平台。再往后是以 Lewisburg 芯片组为基础的世代,对应的适配卡为 QAT 适配器 8960 与 8970[7]。

集成形态的推进使加速器进入处理器。第四代英特尔至强可扩展处理器(代号 Sapphire Rapids)首次把 QAT 作为片上加速器直接集成到数据中心处理器架构中,通过缓存一致性互连与核心相连[2]。按英特尔的支持说明,片上硬件版本 2.0 的驱动适用于第四代、第五代至强可扩展处理器以及英特尔至强 6 处理器,硬件版本 2.2 则对应至强 6 处理器中的 Granite Rapids-D[7]。

软件层面,英特尔为 Linux 提供用户态库与插件,例如 QATzip 与 QATlib,它们把应用调用转换为描述符交给内核态驱动,再由固件解析并提交给硬件;相应的内核驱动在 Linux 内核 6.2 及以上版本支持共享虚拟内存与可扩展 I/O 虚拟化[2]。

应用

网络场景是较早的应用方向。加速器可用于移动网关的加密算法卸载、VPN 流量加速以及压缩解压,也被用于软件定义网络与网络功能虚拟化实现中,为应用与加速器之间提供统一的抽象层[6]。

TLS 与负载均衡场景中,OpenSSL 的 QAT 引擎可把握手与批量加密运算交给加速器处理;开源负载均衡软件 HAProxy 自 1.8 版起支持把安全运算卸载到英特尔 QAT[8]。

存储与内存管理方面,对象存储系统 Ceph 可借助 QAT 插件和 QATzip 库加速加密与 zlib 压缩[9]。研究工作中还把 Linux 内核的 zswap 机制改为调用 QAT 加速的 Deflate 函数,把换出页面的压缩与解压交给硬件,从而减少对同机运行应用的干扰[2]。

此外,该技术也被用于指纹计算等场景,通过把数据块下发给加速器实例完成运算以减轻中央处理器负担[10]。

局限

使用该技术必须配备相应硬件,没有加速器就没有可用的加速服务;同时需要在内核态加载 QAT 驱动才能真正驱动硬件[9]。这意味着它无法在缺少对应硬件的既有系统上以纯软件方式获得同等效果。

软件生态的适配并不完整。加速功能通常要经由已被支持的上层框架才能被应用使用,例如 OpenSSL 的 QAT 引擎在很长一段时间内只支持链式操作,导致部分依赖该插件的功能无法直接调用硬件加速,需要另写基于原生接口的插件[9]。

参数配置上存在取舍。压缩级别提高会带来更好的压缩比,但延迟增加、吞吐下降;同步模式下主机提交任务后需等待完成,异步模式则通过并行处理取得更低延迟,因此延迟敏感的场景不宜采用高压缩级别与同步模式[2]。

公开资料还记录了一些具体限制,例如零长度的压缩请求在无状态、多次压缩操作的情形下不被支持,非正常的强制关闭带未完成操作的虚拟机可能导致设备挂起[11]。

参见

  • 中央处理器 —— 加速器所卸载压缩与加密任务的来源。

  • OpenSSL —— 可借助 QAT 引擎把 TLS 加解密运算交给加速器的密码学库。

  • Ceph —— 采用 QAT 插件加速对象存储加密与压缩的分布式存储系统。

  • 软件定义网络 —— 常与 QAT 配合实现加密与压缩加速的网络架构。

  • 片上系统 —— QAT 集成形态之一,加速器可直接嵌入其中。

参考资料

  1. 英特尔® 数据保护与压缩加速技术是什么?- 英特尔 - 使用英特尔® 数据保护与压缩加速技术加速压缩 [引用日期2026-10-14]
  2. pdf [引用日期2026-10-14]
  3. intel-quick-assist-technology-overview [引用日期2026-10-14]
  4. Architecture [引用日期2026-10-14]
  5. Queues and Queue Pairs [引用日期2026-10-14]
  6. how-intel-quickassist-technology-accelerates-nfv-use-cases [引用日期2026-10-14]
  7. intel-quickassist-technology-intel-qat [引用日期2026-10-14]
  8. Accelerating HAProxy* with Intel® QuickAssist Technology [引用日期2026-10-14]
  9. QAT Acceleration for Encryption and Compression [引用日期2026-10-14]
  10. CN115509763A(PDF) [引用日期2026-10-14]
  11. Driver Version: 1.13.0 [引用日期2026-10-14]
词条评价
词条统计

浏览次数:3 次

阅读量:0 次 · 阅读完成量:0 次

最近更新:2026-10-13T21:21:06Z

历史版本

本条目引用的词条
英特尔 OpenSSL 中央处理器 Ceph 软件定义网络 片上系统