The X Window System has seen great change over the past year with low-level device handling moving from userspace to the kernel. Now that this important but low-level infrastructure is in place, it is time to look at a higher level of the Linux graphics stack.
And who better to bring us to a higher level than Keith Packard, project lead for the freedesktop.org Xserver and for the official reference implementation of the X Window System? Keith has put together a can’t-miss lineup that covers three important topics, each with a pair of potential solutions and a moderated Q&A session.
The first topic is the “Video API Deathmatch: VDPAU vs. VAAPI”, where “VDPAU” is NVIDIA’s Video Decode and Presentation API for Unix, and “VAAPI” is the Video Acceleration API led by Intel, and (not surprisingly) supported by recent Intel integrated graphics hardware, but also supported by recent S3 Graphics hardware. Stephen Warren will be putting on the gloves for VDPAU and Jonathan Bian will be defending VAAPI’s honor. Keith will then moderate the Q&A session, with questions taken from any surviving members of the audience.
The second topic is a more placid discussion of compositing architecture, featuring “Wayland – A New Display Server for Linux” by Kristian Høgsberg and “Compositing, OpenGL, Double-Buffering, and Dragons” by Jesse Barnes. The reason we expect this discussion to be more placid is that Kristian asserts that Jesse’s work will always be relevant. On the other hand, Kristian also compares Jesse’s work to FORTRAN, so you be the judge. Kristian will show us how moving functionality (including fonts, OpenGL, Cairo 2D rendering, GEM, and kernel mode setting) into the kernel and libraries paves the way for small special-purpose display servers such as Wayland. Wayland promises to enable Linux GUIs to run efficiently on yet-smaller embedded devices. Jesse will show us how OpenGL and other pre-existing APIs are affected by a compositing environment. This discussion is critically important: although compositing promises to provide much-needed flexibility to system designers, we need compositing to work efficiently for all applications, while at the same time solving persistent problems with buffer tearing and memory usage.
The third and final topic is 2D acceleration on modern GPUs, with “The Battle for 2D Acceleration” by Chris Wilson and “2D X State Tracker for Gallium” by Jakob Bornecrantz. Chris will show us a direct-to-DRM implementation in Cairo, after which Jakob will present recent work in Gallium. Given that our current 2D architectures (EXA/XAA/UXA) all fail to provide credible acceleration for sophisticated 2D applications, a new direction is clearly needed. Perhaps Chris’s or Jakob’s work will show the way to a fully accelerated tesselator for these applications.
Our new Linux graphics architecture provides the infrastructure required for fantastic new systems, so please join us to work out video APIs, compositing, and 2D acceleration at this year’s Linux Plumbers Conference!