Nouveau Now Implements Two More GL4 Extensions, Very Close To OpenGL 4.2

Written by Michael Larabel in Nouveau on 30 January 2016 at 10:00 PM EST. 16 Comments
While the Nouveau NVC0 and RadeonSI Gallium3D drivers were tied for a while in terms of their OpenGL 4 extension coverage, the NVC0 driver for NVIDIA Fermi GPUs and newer has advanced further with two more extensions -- one for OpenGL 4.2 and the other for OpenGL 4.3 -- now being supported by this open-source, reverse-engineered driver.

Work that landed in Mesa Git on Friday by Ilia Mirkin adds shader atomic counters support and shader storage buffer object (SSBO) support as needed by OpenGL 4.2 and 4.3, respectively. Nouveau NVC0 is the second driver after Intel's i965 classic code to support these extensions.

ARB_shader_storage_buffer_object allows shaders to perform random access read/writes and atomic memory operations on variables within a buffer object. ARB_shader_atomic_counters provides a set of atomic counters.

With Ilia Mirkin doing the heavy lifting by adding the atomic counters and SSBO support to the Mesa Gallium3D state tracker, hopefully it won't be long before the RadeonSI driver is also supporting these OpenGL 4.2/4.3 extensions. All NVC0 has left now until hitting OpenGL 4.2 compliance is tackling ARB_shader_image_load_store, which Mirkin is already working on (state tracker patches published, but the NVC0 implementation isn't yet ready) and will be covered in another Phoronix article shortly.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of 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 automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week