Gallium3D's LLVMpipe Lands NIR Support Plus Radeon R600g NIR Support Is Forthcoming
More Mesa drivers continue to be embracing NIR as the modern intermediate representation shared between these OpenGL and Vulkan open-source implementations.
Besides the Intel drivers leading the NIR transition along with smaller drivers like Freedreno and VC4, RADV has been making use of NIR and now RadeonSI is working on transitioning to it while TGSI currently remains the default. The LLVMpipe Gallium3D software rasterizer is the newest in-tree Mesa driver making use of this IR.
With commits that were merged over night for Mesa 20.0-devel, NIR is now a supported intermediate representation alongside TGSI for this driver that commonly serves as an OpenGL fallback driver on the Linux desktop.
The NIR support is currently wired up in LLVMpipe for compute and fragment shaders, but for now is not enabled by default. The LP_DEBUG=nir environment variable can be used for enabling the LLVMpipe NIR support.
Meanwhile, it looks like R600 Gallium3D will soon see mainline NIR support too. Gert Wollny has been working on NIR support for this Gallium3D driver that supports from the Radeon HD 2000 "R600" series through the Radeon HD 6900 (Northern Islands / pre-GCN hardware). The work has been in development via the r600-nir branch. Gert confirmed that soon he is planning on initiating the merge requests to get this still experimental R600g NIR support into mainline Mesa.
Besides the Intel drivers leading the NIR transition along with smaller drivers like Freedreno and VC4, RADV has been making use of NIR and now RadeonSI is working on transitioning to it while TGSI currently remains the default. The LLVMpipe Gallium3D software rasterizer is the newest in-tree Mesa driver making use of this IR.
With commits that were merged over night for Mesa 20.0-devel, NIR is now a supported intermediate representation alongside TGSI for this driver that commonly serves as an OpenGL fallback driver on the Linux desktop.
The NIR support is currently wired up in LLVMpipe for compute and fragment shaders, but for now is not enabled by default. The LP_DEBUG=nir environment variable can be used for enabling the LLVMpipe NIR support.
Meanwhile, it looks like R600 Gallium3D will soon see mainline NIR support too. Gert Wollny has been working on NIR support for this Gallium3D driver that supports from the Radeon HD 2000 "R600" series through the Radeon HD 6900 (Northern Islands / pre-GCN hardware). The work has been in development via the r600-nir branch. Gert confirmed that soon he is planning on initiating the merge requests to get this still experimental R600g NIR support into mainline Mesa.
19 Comments