NVIDIA Publishes Vendor-Neutral GL Dispatch Library

Written by Michael Larabel in NVIDIA on 28 August 2013 at 02:54 PM EDT. 22 Comments
NVIDIA
Proposed nearly one year ago was a new Linux OpenGL ABI by Andy Ritger of NVIDIA. Among the reasons for this proposal of a new ABI included EGL becoming the future over GLX, OpenGL advancing greatly, and issues surrounding each vendor/driver shippimg their own libGL.so.1 file. As part of making this work finally become a reality, NVIDIA has published the code to libglvnd, an OpenGL vendor-neutral dispatch library.

The libglvnd project is a new work-in-progress version of a vendor-neutral library for arbitrating OpenGL calls between multiple drivers/vendors on a per-screen basis. Basically this allows each driver to ship its own OpenGL library but to not overwrite the main system libGL file or cause any collisions with other OpenGL drivers present on the system.

Bryan Nguyn of NVIDIA announced the new vendor-neutral OpenGL dispatching library on the Mesa-dev mailing list today.
Last September, Andy Ritger proposed updating the Linux OpenGL ABI to allow for multiple vendors to co-exist within a single process and OpenGL applications to dispatch commands to different vendors with per-context granularity. The current proposal calls for a vendor-neutral "API library" which acts as an intermediate layer between the application and OpenGL vendor implementations that manages this dispatching.

I have written a work-in-progress library based on this proposal which implements this API library for GLX. This library leverages some code from Mesa's glapi module to handle TLS and core OpenGL dispatching, as well as the BSD-licensed uthash library and the X.org Xserver's list.h.

The library in its current form is hosted on GitHub.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week