GSoC/GCI Archive
Google Summer of Code 2011

X.Org Foundation

Web Page:

Mailing List:




X.Org develops the X Window System, the standard window system for open source operating systems and devices.

Today, as the result of more than 20 years of work by teams of leading open source developers, most of the graphical user interfaces for Unix and Linux systems rely on X.Org. X.Org is responsible for the design of the X libraries which interface with applications, the acceleration architectures used for graphics, and the graphics and input drivers. In particular, it has been at the center of the recent restructuring of the Linux graphics driver stack.

Our code repository can be found here:


  • An OpenCL State Tracker for Gallium based on Clover Gallium3D can be used to implement many client APIs on top of hardware- or software-accelerated pipe drivers. This proposal is about implementing the OpenCL API on top of Gallium 3D, to enable user to enjoy GPU-accelerated computing using Free Software technologies and no proprietary drivers or pieces of code. The project will be built on the Clover branch of Mesa, and will use Clang as the compiler.
  • Hardware Accelerated VP8 Video Decoding for Gallium3D The goal of this project is to write a Gallium3D state tracker capable of hardware accelerated VP8 video decoding through the VDPAU API. This would allow every graphic card with a Gallium3D driver to be able to decode VP8 videos, and every VDPAU enabled multimedia software to play these videos. Hardware acceleration will be built upon graphic card’s shaders units.
  • Integrate MLAA to Mesa To the sadness of many, there is not and has never been any form of AA supported in any of the free drivers. This project aims to change that, by making MLAA available to all Gallium drivers.
  • Remote display for Wayland In order for Wayland to replace it will need to be able to run remote clients like can. The proposed project will pair a proxy compositing server with the client, a psudeo-client with the real compositing server, and enable communication over a network between the psuedo-client and proxy compositor. This will allow normal Wayland clients to be run remotely.