1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking Benchmarking Platform
Phoromatic Test Orchestration

The New Linux OpenGL ABI Is Nearing Reality

Mesa

Published on 28 September 2013 10:23 AM EDT
Written by Michael Larabel in Mesa
15 Comments

One year ago a new Linux OpenGL ABI was proposed to make dealing with Linux OpenGL libraries easier and cleaner, among other benefits. The Linux OpenGL changes that will ultimately affect all Linux graphics drivers is nearing fruition.

The new Linux OpenGL ABI was originally proposed by NVIDIA but has wide support among developers and even for its implications on desktop end-users. The new Linux OpenGL ABI is set to define better interaction between applications and the OpenGL libraries (including EGL and GLX) and to allow for multiple OpenGL vendor drivers (e.g. the binary NVIDIA and AMD drivers along with the different Gallium3D/Mesa drivers) to all co-exist and work happily on the same file-system, and even to allow for multiple vendor OpenGL drivers to work/function together from the same application process. The new OpenGL ABI will still maintain backwards compatibility for existing applications and drivers.

With this new ABI the common libOpenGL.so.1 and libGLESv2.so.1 files will now be vendor-neutral client API libraries, along with libGLX.so.1 and libEGL.so.1. These driver/vendor-neutral files will in turn query and use the appropriate GL/GLES/EGL/GLX library that is then installed in a post-fixed form, e.g. libGLX_NVIDIA.so.1. This is a huge advantage as there's no longer any collision about different Linux OpenGL drivers trying to install to /usr/lib/libOpenGL.so.1, etc. This is easier on driver developers, distribution vendors, and end-users -- it should be a clear-cut win once fully implemented.

NVIDIA and others working on this new ABI are hoping these vendor-neutral libraries will require little maintenance, will become widely distributed by Linux distributions, and will be contributed to Khronos for hosting. NVIDIA is already making plans to ship their driver under this new ABI. For dealing with distributions that don't yet ship the vendor-neutral libraries, NVIDIA's Linux driver installer will ship its own copy of the vendor-neutral libraries to install when detected they're missing.

The code for the vendor-neutral dispatch libraries was published a few weeks ago via NVIDIA's libglvnd project. The GLVND project right now implements OpenGL and GLX support while EGL, OpenGL ES 1.0, and OpenGL ES 2.0/3.0 support is still to be implemented.

More details on this ongoing work surrounding the new Linux OpenGL ABI can be found by Andy Ritger's PDF slides from his presentation this week at the XDC2013 conference.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Articles & Reviews
  1. Trying Out The Modern Linux Desktops With 4 Monitors + AMD/NVIDIA Graphics
  2. Turning A Basement Into A Big Linux Server Room
  3. NVIDIA's $1000+ GeForce GTX TITAN X Delivers Maximum Linux Performance
  4. OS X 10.10 vs. Ubuntu 15.04 vs. Fedora 21 Tests: Linux Sweeps The Board
  5. The New Place Where Linux Code Is Constantly Being Benchmarked
  6. 18-GPU NVIDIA/AMD Linux Comparison Of BioShock: Infinite
Latest Linux News
  1. Fedora 22 Alpha Now Available For AArch64 & PowerPC64
  2. Systemd Developers Did NOT Fork The Linux Kernel
  3. PulseAudio 7.0 To Enable LFE Remixing By Default
  4. Features & Changes Coming For Mir 0.13
  5. How Far Valve Has Come: Three Years Ago They Needed OpenGL Linux Help
  6. Audacity 2.1 Improves Noise Reduction, Adds Real-Time Effects Preview
  7. Linux 4.0-rc6 Kernel Released
  8. Automatically Managing The Linux Benchmarks Firing Constantly
  9. The Big Features Of The Linux 4.0 Kernel
  10. Mesa's Android Support Is Currently In Bad Shape
Most Viewed News This Week
  1. Introducing The Library Operating System For Linux
  2. Improved OpenCL Support For Blender's Cycles Renderer
  3. Allwinner Continues Jerking Around The Open-Source Community
  4. Open-Source Driver Fans Will Love NVIDIA's New OpenGL Demo
  5. GNOME 3.16 Released: It's Their Best Release Yet
  6. Systemd Change Allows For Stateless Systems With Tmpfs
  7. Ubuntu 15.04 Final Beta Released
  8. Red Hat Is Rolling Out A VirtIO DRM/KMS GPU Driver