AMD Lands Experimental NIR Support In RadeonSI

Written by Michael Larabel in Mesa on 31 July 2017 at 10:07 AM EDT. 9 Comments
MESA
Adding to the exciting morning about OpenGL 4.6 and the Radeon RX Vega launch is the massive patch series adding NIR support to RadeonSI having been merged to Mesa Git.

Open-source AMD developer Nicolai Hähnle has landed the 60+ patches wiring in initial NIR support in the RadeonSI Gallium3D driver. NIR is the driver intermediate representation supported by the RADV Vulkan driver and is the preferred IR these days by the Intel Mesa driver and is also used by Freedreno and VC4 Gallium3D drivers. NIR is also used by the RADV Vulkan driver. The RadeonSI implementation is converting NIR to LLVM IR and onward to the AMDGPU LLVM back-end for execution.

Nicolai has been working on this RadeonSI NIR support as part of SPIR-V / ARB_gl_spirv support inside this AMD GCN OpenGL driver. With today's OpenGL 4.6 release, the ARB_gl_spirv support for OpenGL drivers being able to invest Vulkan SPIR-V shaders is now a requirement.

These patches merged today do not land the OpenGL SPIR-V extension. Using this experimental NIR support for RadeonSI OpenGL can be turned on currently via the R600_DEBUG=nir environment variable. Hopefully by next quarter's Mesa 17.3 release, we'll see this NIR / SPIR-V support in RadeonSI in good shape with ideally OpenGL 4.6 compliance.
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