Check out my first novel, midnight's simulacra!

Intel QAT

From dankwiki
Revision as of 11:45, 8 April 2023 by Dank (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

QuickAssist Technology is a family of Intel PCIe and on-die accelerators, plus associated software. It's available on some Xeon Scalable 4th Gen processors, and QAA 8960/QAA 8970 PCIe cards. It covers cryptography and compression.

On Linux, QAT requires (out-of-tree as of 2023) kernel modules, firmware, and a userspace component. qat_service is a systemd service responsible for loading necessary kernel modules and enabling endpoints via the adf_ctl binary. VFIO/UIO are used together with a standard TX/RX ringbuffer (or alternately callbacks) to submit work and get results from the QAT endpoints, typically through the QuickAssist API.

Shared Virtual Memory

QAT hardware 2.0 and above support shared virtual memory, rather than requiring work be submitted in physically contiguous, pinned memory. This requires Linux 6.2 or above, and the kernel command line parameter intel_iommu=on,sm_on.

External links