News: 0001510846

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

UMD Direct Submission "Proof Of Concept" For The Intel Xe Linux Driver

([Intel] 5 Hours Ago User-Space Direct Submission)


One of the interesting Intel Xe Linux kernel graphics driver patches that was volleyed for discussion last month is working on user-mode driver (UMD) direct submission support for allowing work to be directly submitted from user-space to the GPU hardware and avoiding some of the overhead of the kernel driver interactions.

This Intel Xe driver work is similar to [1]the AMDGPU user direct submission work with user-mode queues as well as the Arm Panthor driver's user submission handling for letting the queue ring buffers be exposed directly to user-space. Back in mid-November Intel engineer Matthew Brost posted the [2][RFC PATCH 00/29] UMD direct submission in Xe patch series albeit with the Linux 6.13 merge window and all I have been slow to get around to writing about it.

These request for comments (RFC) patches are also described as "possibly even a proof of concept" for user-mode direct submission support with the Xe driver. Brost explained with the patches:

"The target for this series is Mesa, with the goal of enabling UMD direct submission and removing the submission thread that currently handles future fences. I've discussed this with Sima and the Intel Mesa team, and it seems like a reachable target. Most synchronization will be handled in user space via memory writes and semaphore wait ring instructions, with only legacy cross-process synchronization (e.g., compositors) requiring kernel synchronization (DMA fences).

...

This is a public checkpoint on the KMD (Kernel Mode Driver) work, which will be tabled until Intel's Mesa team has the bandwidth to begin the UMD work. That said, the uAPI is very preliminary and likely to change. One idea that was discussed is a common user fence interface based around DRM syncobjs, which will likely be explored further as UMD engagement begins. Some work for syncing VM binds (kernel operation) with UMD direct submission is also likely required.

Testing has been done with [UMD direct submission tests], and the main features—such as basic submission, dynamic memory management, user-to-kernel sync conversion, and protection against endless user fences—are working on BMG and LNL."

Interesting work and hopefully Intel's Mesa team will get around to working on the UMD direct submission side soon so the uAPI can be sorted out and the Xe kernel driver improvements hopefully upstreamed in the not too distant future.



[1] https://www.phoronix.com/news/Mesa-25.0-AMDGPU-User-Queue

[2] https://lists.freedesktop.org/archives/intel-xe/2024-November/059500.html



phoronix

Never trust anybody whose arm is bigger than your leg.