In addition to Intel recently upstreaming Linux support for new QAT “Gen 6” hardware as their next-generation QuickAssist Technology IP, Intel today began posting Linux kernel driver patches for a new version of their Data Streaming Accelerator (DSA). It looks like upcoming Xeon processors will be rolling out a lot of new accelerator IP.
Coming out today is the first time I have seen any patches concerning Intel DSA 3.0. Intel introduced their Data Streaming Accelerator block with Sapphire Rapids and is preparing for a new-generation of DSA capabilities with future server processors.
The Intel DSA allows offloading data movement from the CPU cores to this accelerator block for achieving better performance and efficiency. Intel DSA software support for making use of this block and their other accelerator IP is still fairly limited but looks like they are remaining committed to their accelerator approach given this new DSA 3.0 IP surfacing.
This patch series posted a short time ago to the Linux kernel mailing list begins preparing the IDXD accelerator driver for Intel DSA 3.0. Intel DSA 3.0 is described as:
“This patch series introduces foundational support for DSA 3.0 features, exposing hardware capability registers to userspace in the IDXD driver.
DSA 3.0 introduces several new features that require awareness and configuration from both kernel and userspace. It is necessary to understand the hardware’s capabilities for userspace tools (e.g., idxd-config, libraries, and applications) to the features
properly, such as supported features, memory layouts, and opcode compatibility.Patch 1/2 exposes the three new capability registers (dsacap0-2) introduced in the DSA 3.0 specification through a new sysfs entry. This allows tools and users to query hardware capabilities such as supported SGL formats, floating-point options, and maximum supported sizes.
Patch 2/2 enables configuration of the maximum SGL size for DSA 3.0 devices. Some DSA 3.0 opcodes (e.g., Gather Copy, Gather Reduce) require that the workqueue’s SGL size is explicitly configured. This patch sets that value based on hardware capabilities at initialization time, allowing these opcodes to function without additional user configuration.”
These initial Intel DSA 3.0 patches for the IDXD driver are now under review and could be potentially upstreamed for Linux v6.17. We’ll see if the DSA 3.0 and QAT Gen 6 accelerator IP will be debuting with upcoming Intel Diamond Rapids or its successor. Much of the rest of the Diamond Rapids Linux support has already been settled and upstreamed into the Linux kernel.