It's Official: Mesa 8.0 With OpenGL 3.0

Posted by Michael Larabel on January 09, 2012

Mesa, the heart of the open-source 3D graphics drivers for Linux, will see its 8.0 release in February with OpenGL 3.0 compliance.

It's been known for a year that when OpenGL 3.0 support is ready it will be released as Mesa 8.0. Intel announced in September at XDC2011 Chicago it aimed to have GL3.0 support done by the end of 2011. They've nearly achieved this, and now what was to be known as "Mesa 7.12" is now Mesa 8.0.

We've known for a few weeks now, and mentioned in several Phoronix articles already, that this Mesa 8.0 release was likely to happen. Only today though did Kenneth Graunke of Intel make the commit announcing Mesa 8.0-devel (rather than 7.12-devel) and saying within the release notes that Mesa implements OpenGL 3.0 rather than OpenGL 2.1.

While Mesa now basically has OpenGL 3.0 support in place, don't leap for joy just yet. The OpenGL 3.0 / GLSL 1.30 support in Mesa 8.0 basically comes for the Intel Sandy Bridge / Ivy Bridge hardware. In November is when Intel began advertising GLSL 1.30 as the shading language supported for current-generation Sandy Bridge and next-generation Ivy Bridge graphics hardware. Older Intel hardware isn't GL3-capable.

Outside of Intel hardware, the Gallium3D drivers for the recent generations of ATI/AMD Radeon GPUs is still fighting for GL3 compliance. They have made progress in the direction of handling full OpenGL 3.0 support, but it doesn't have quite the same coverage that the Intel DRI driver does at the moment. For the NVIDIA driver, the Nouveau driver stack for modern GeForce graphics processors is also still fighting for OpenGL 3.0 compliance. This support though will likely come after the Radeon driver though considering the limited community manpower working on open-source NVIDIA support.

Within Mesa 8.0 there might be OpenGL 3.0 support in Softpipe as a CPU-based software driver implementation used for reference. However, this driver is extremely slow and not even as useful as the LLVMpipe software driver.


Open-source OpenGL 3.0 support is finally here... Prost!

While OpenGL 3.0 is now advertised, this achievement for open-source graphics drivers comes three and a half years after the Khronos Group released the OpenGL 3.0 specifications. The proprietary Windows/Linux drivers from AMD and NVIDIA have supported OpenGL 3.0 / GLSL 1.30 for over three years while the open-source drivers are now only catching up.

OpenGL 3.0 introduced OpenGL Shading Language 1.30 (GLSL 1.30), vertex array objects, improved frame-buffer objects (FBOs), floating-point textures and render buffers, texture arrays, and floating-point depth buffers, among other new features. On the AMD side, a Radeon HD 2000 series or newer graphics card is needed for hardware support. NVIDIA GeForce 8 series and later is capable of GL3.

After OpenGL 3.0 there is still OpenGL 3.1/3.2/3.3 and OpenGL 4.0/4.1/4.2 to tackle. And there's also still OpenCL 1.0/1.1 support that's needed too. By the time Mesa is caught up with handling these industry specifications, chances are there will be several new versions ratified.

OpenGL 3.0 support in Mesa also doesn't mean you can magically go play the latest games now on the open-source drivers, but there's still some inherent limitations. Mesa still doesn't have S3TC (S3 Texture Compression) support enabled by default nor other features like floating-point textures (an OpenGL 3.0 feature) since they are covered by patents. These features can be enabled if rebuilding Mesa with non-default build switches and pulling in the external S3TC library, but no major distribution vendor (unless counting Arch) is doing so out of legal concerns.

These patented features are critical for some games, but alas it's not happening for now in Mesa. The use of open-source Linux graphics drivers have even been criticized by Ryan Gordon and others, with vendors treating these drivers as being ready when they are not fully baked and without parity to the closed-source alternatives.

Also hindering Mesa's adoption is the performance, which for the Nouveau and Radeon drivers is much slower than the feature-rich proprietary drivers. See The Most Comprehensive AMD Radeon Linux Graphics Comparison and A 14-Way Comparison Of NVIDIA vs. Nouveau Drivers, among many other Phoronix articles to see the current state of these open and closed-source Linux drivers.

Details about the implementation state of some specific GL3/GL4 features in Mesa are documented in GL3.txt and the Intel DRI work queue.

Look for Mesa 8.0 to be released in early February (in time so that Intel's OpenGL 3.0 support will be here for Ivy Bridge). The Mesa 8.0 release will be found in Ubuntu 12.04 LTS, Fedora 17, and other distribution releases beginning in Q2'2012.

Mesa 8.0 will eventually play a role on other operating systems too. Mesa is employed by Solaris, *BSD, and even niche operating systems like Haiku (BeOS) and AROS as an open-source graphics library. However, most of these non-Linux platforms currently lack the kernel-side bits (the Direct Rendering Manager code with GEM/TTM memory management and KMS) as needed by modern Mesa drivers.

Besides the OpenGL 3.0 support upbringing, Mesa 8.0 brings many other updates to core Mesa, Gallium3D and its state trackers, and the various hardware drivers. There's new hardware support, bug-fixes, and a lot of new functionality.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  2. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  3. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
  4. AMD Radeon Gallium3D More Competitive With Catalyst On Linux
Latest Software Articles
  1. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  2. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  3. F2FS File-System Shows Regressions On Linux 3.10
  4. Previewing The Radeon Gallium3D Shader Optimizations
Latest Linux News
  1. DNF Still Advancing As Experimental Yum For Fedora
  2. Logitech Begins Supporting Linux Users
  3. Modern Intel Gallium3D Driver Still Being Toyed With
  4. Linux 3.10 Kernel Benchmarks On A Core i7 Laptop
  5. GCC 4.8.1 Compiler Due To Be Out Next Week
  6. Linux 3.10 Kernel Benchmarks For Intel Ivy Bridge
  7. Linux's "Ondemand" Governor Is No Longer Fit
  8. Firefox 22 Beta Enables WebRTC Support
  9. OpenSUSE 13.1 Milestone 1 Released
  10. DRM Graphics Driver Comes For Dove/Cubox
  11. JADE: An LLVM-Based Video Decoder For MPEG RVC
Latest Forum Talk
  1. Linux's "Ondemand" Governor Is No...
  2. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  3. X3: Albion Prelude Released For Linux Gamers
  4. DNF Still Advancing As Experimental Yum For Fedora
  5. Modern Intel Gallium3D Driver Still Being Toyed...
  6. Greater Radeon Gallium3D Shader Optimization Tests
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite