Intel PPGTT Called Upon For Pulling Into The Kernel

PPGTT is short for the Per-Process Graphics Translation Tables. PPGTT is a feature supported by Intel's Ivy Bridge, Haswell, and Broadwell graphics processors for enabling GPU process isolation. This enhances the security by providing a per file descriptor address space / context.
Every context gets its own address space and every open DRM fd gets its own context, which means better security and correctness, while there's some other minor driver-level advantages but the performance isn't expected to be hugely different.
Per-Process Graphics Translation Tables support will also require minor changes to the Intel graphics driver user-space components, which will likely happen only after the kernel-side changes have landed. The PPGTT support looks like it's finally baked for going into the Linux 3.14 kernel so the libdrm, Mesa, xf86-video-intel, and intel-gpu-tools changes will follow.
Landing PPGTT support is quite huge as it's taken several months of work by Ben Widawsky and other Intel Open-Source Technology Center developers. The work is spread across 47 patches that touch more than one thousand lines of the i915 DRM driver code in total.
The pull request with additional information on Per-Process Graphics Translation Tables can be found via the intel-gfx mailing list.
Add A Comment