Nouveau OpenGL with Zink Replaces Mesa for NVIDIA GPU

Collabora reported on the recent adoption in the code base of the Mesa project, bringing about significant changes by replacing the OpenGL driver used by default for NVIDIA GPUs starting with the TURING microarchitecture. The upcoming Mesa 25.1 release will see the transition from the Nouveau OpenGL Driver (NVC0) to the ZINK OpenGL Driver from the NVK Vulkan Driver for these GPUs. The Zink driver has shown superior performance in various tests compared to Nouveau and does not encounter the issues that arise when operating with newer NVIDIA GPUs.

Zink offers an implementation of OpenGL 4.6 on top of Vulkan, enabling users to experience enhanced OpenGL capabilities on devices that support the Vulkan API. Zink’s performance is akin to that of native OpenGL implementations, allowing developers to focus on robust support for the Vulkan API instead of dedicating resources to individual OpenGL drivers. The Vulkan implementation for NVIDIA is based on the NVK driver, supporting Vulkan 1.4 for various NVIDIA microarchitectures including TURING, AmPere, ADA, and more.

The NVK driver was developed from scratch utilizing information from official header files and open-source modules released by NVIDIA. This initiative aimed to establish a new reference Vulkan driver for Mesa, with the potential for code reuse in the development of other drivers. Care was taken during the development of the NVK driver to incorporate best practices from existing Vulkan driver development, maintain an optimal code base, and minimize code borrowing from other drivers to ensure optimal performance and quality.

/Reports, release notes, official announcements.