Intel Linux Graphics Driver Developers Working On More Efficient Display Presentation For GVT
Local Display Direct Flip is a feature being worked on by the Intel developers working on the GVT-g graphics virtualization technology for Linux for more efficient display handling.
The "Local Display Direct Flip" feature that is proposed would allow the virtual GPUs from KVM/Xen to control a subset of the Intel graphics hardware's display engine resources. This would end up allowing the vGPUs to make use of the display engine for composing their frame-buffer and displaying to the assigned output.
Intel's Tina Zhang explained, "GVT-g upstream support local display based on dma-buf. For example, with dma-buf, GTK UI can compose the guest framebuffers and post the final framebuffer to the local display monitor. Although this dma-buf solution is flexible for both local display and remote display, this solution has to involve userspace when the guest framebuffer is updated. And usually, this happens every frame. Meanwhile, local display direct flip feature doesn't need to involve userspace for the guest plane update. Userspace just needs to do the assignment once (although the feature supports the dynamic assignment), and planes on the assigned pipe can be leveraged by the guest to compose its framebuffers w/o involving host userspace any more. That's why it's considered more efficient."
There are tentative Linux kernel and QEMU patches for implementing this Local Display Direct Flip capability for the Intel Linux driver. The work is still experimental but for those interested you can learn more via the aforelinked mailing list post.
It looks like Intel GVT will be even more exciting in 2019 and this timing is ideal for hopefully having the graphics virtualization support in great shape by the time Intel rolls out their discrete GPUs aiming for 2020.
The "Local Display Direct Flip" feature that is proposed would allow the virtual GPUs from KVM/Xen to control a subset of the Intel graphics hardware's display engine resources. This would end up allowing the vGPUs to make use of the display engine for composing their frame-buffer and displaying to the assigned output.
Intel's Tina Zhang explained, "GVT-g upstream support local display based on dma-buf. For example, with dma-buf, GTK UI can compose the guest framebuffers and post the final framebuffer to the local display monitor. Although this dma-buf solution is flexible for both local display and remote display, this solution has to involve userspace when the guest framebuffer is updated. And usually, this happens every frame. Meanwhile, local display direct flip feature doesn't need to involve userspace for the guest plane update. Userspace just needs to do the assignment once (although the feature supports the dynamic assignment), and planes on the assigned pipe can be leveraged by the guest to compose its framebuffers w/o involving host userspace any more. That's why it's considered more efficient."
There are tentative Linux kernel and QEMU patches for implementing this Local Display Direct Flip capability for the Intel Linux driver. The work is still experimental but for those interested you can learn more via the aforelinked mailing list post.
It looks like Intel GVT will be even more exciting in 2019 and this timing is ideal for hopefully having the graphics virtualization support in great shape by the time Intel rolls out their discrete GPUs aiming for 2020.
8 Comments