Another week has passed, and time has come to write some more updates from the Intel Linux Graphics land.
As the major news, as you all already know, Mesa 8.0 was released, bringing GL 3.0 and GLSL 1.30 support combined with multitude of fixes and enhancements all over the place. For Intel i965-based graphics cards, for instance, this means a very nice boost in performance (specially on Ivy Bridge platform), lots of stability fixes and, of course, complete GL 3.0 feature set.
Besides Mesa, Kernel project was also amazingly active for the past few weeks.
- Daniel Vetter has updated his drm-intel-next tree, with a nice set of changes. Most notable of those is the support for PPGTT – which stands for Per-process Graphics Translation Table. In other words, this means that each process is able to map his own region of the GPU memory, and should not interfere with all the other ones using the GPU at the same time. This results in better performance (due to the reduced need to re-mapping addresses, and due to the fact that PPGTT entities are GPU-cacheable) and, of course, much enhanced stability.
- This new round of patches also includes a much improved interlaced modes support. These patches represent a very nice thing in our open-source community – they started with a simple request on the mailing list, which then transformed into a bugzilla entry, and after weeks of Daniel, Paulo, and many other developers working on those fixes, resulted in a amazing series of patches which greatly enhances the support for interlaced modes in Intel GPUs. This is how Open-Source community works – and this is awesome!
- Swizzling support for Sandy and Ivy Bridge architectures, which can also improve the performance for many use cases.
- Lots of bugfixes and improved debugging support.
Besides those patches, the notable patch-sets of the past weeks were:
- Ben Widawsky’s logical context switching patches. On a high-level overview of this feature, we can describe is at a feature which adds support for having a per-context set of GPU items the processes have access to. So it adds the possibility of having a different context id for each set of operations. This way, what processes in one context_id do should not affect the processes in another set. For GL_ARB_Robustness OpenGL extension, for example, it could prevent one WebGL applications from taking down all the other users of the GPU for example; and for GL_EXT_Transform_feedback it would allow each process to have a way to store its own feedback data for different stages of the pipeline – such as vertex shaders, geometry shaders, and so on.
- I have sent some patches for RC6 feature debugging, and apparently they have solved all the remaining problems with RC6 support on Sandy Bridge. So hopefully, one year after the platform launch, its remaining ghosts are finally being put to rest.
On other projects, the most notable news I managed to catch in the past weeks were some xrandr patches from Bryce Harrington from Canonical, some DRI2 enhancement patches from Mario Kleiner and input and synaptics patches from Chase Douglas on the X.org development project.
And finally, on Wayland, lots of development activity has been going on as well – most notable patches were from Ander about drag and drop icons, and patches from Juan Zhao which added support for window maximization to the core protocol.