Open-Source Mesa Drivers Now Supporting OpenGL 4.0+
Five years after the OpenGL 4.0 specification was introduced, the open-source Mesa 3D project has finally moved on to supporting the necessary extensions, the open-source NVIDIA (Nouveau) driver even exposes OpenGL 4.1 support this morning, and OpenGL 4.2 patches are pending.
It's been an interesting past day with tessellation support finally landing last night and in the hours since then the rest of GL 4.0 and other patches landed. While core Mesa exposes OpenGL 4.0 now and nearly OpenGL 4.1/4.2, the state of the hardware drivers isn't all the same.
Building Mesa Git this morning on a NVIDIA Kepler test system revealed OpenGL 4.1 being advertised on a fully open-source software stack.
Nouveau's NVC0 Gallium3D driver for GeForce GTX 400 "Fermi" GPUs and newer has all of OpenGL 4.0 and is even advertising OpenGL 4.1 compliance as shown by the screenshots I took with a GeForce GTX TITAN on Mesa Git this morning. The Intel i965 DRI driver just has a few extensions to enable for OpenGL 4.0 support as does the AMD Radeon R600/RadeonSI Gallium3D drivers. The Softpipe and LLVMpipe software rasterizers are much further behind and will probably be a number of months before these drivers handle OpenGL 4.0.
For a look at what's left to be accomplished for OpenGL 4.1/4.2 and then 4.3/4.4/4.5 further down the road, you can get an easy glance at the situation by visiting MesaMatrix.net that parses the Mesa Git documentation. Besides the newest Mesa development code, RadeonSI users will also need newer LLVM code for supporting GL4 due to changes in the AMD GPU back-end. OpenGL 4.0 / tessellation requires LLVM 3.6.2 while OpenGL 4.1 will require LLVM 3.7, which will be formally released by the end of August.
While OpenGL 4.0+ support will allow more Linux games to run, there still is a need for better performance and other improvements to the open-source driver to improve the usability.
With core Mesa reaching a new major OpenGL revision, the current Mesa version (Mesa 10.7) will be bumped to Mesa 11.0. This next Mesa release is currently planned for release in September and the code will be branched soon, hopefully before then we'll see more GL4 bits land in the hardware drivers.
Those wishing to try out this latest Mesa code can easily run the Git copies if you're using a rolling-release distribution like Arch Linux. If you're using Ubuntu, the Oibaf PPA should be updated soon to incorporate the latest patches in Git.
For questions about the open-source (or proprietary) graphics drivers on Linux, be sure to stop by the Phoronix Forums. Stay tuned for some GL4/tessellation benchmarks and more on Phoronix shortly. Additionally, daily performance benchmarks of the Linux kernel and Mesa are done in a fully-automated manner via our benchmarking software at LinuxBenchmarking.com.
If you enjoyed this article consider joining Phoronix Premium to view this site ad-free, multi-page articles on a single page, and other benefits. PayPal or Stripe tips are also graciously accepted. Thanks for your support.