ARB_gl_spirv / NIR Support Being Worked On For RadeonSI
Nicolai Hähnle is looking at adding support for ARB_gl_spirv to the RadeonSI Gallium3D driver and as part of that support for the NIR intermediate representation.
NIR support for RadeonSI is now being looked at so that RadeonSI could reuse RADV's SPIR-V to NIR to LLVM compiler pipeline, rather than writing a new SPIR-V to LLVM stack.
This isn't a trivial task due to differences between RADV and RadeonSI, but Nicolai has formulated a plan for adapting the support as well as an optional GLSL-to-NIR path within RadeonSI. RadeonSI isn't preparing to abandon Gallium3D's TGSI intermediate representation in favor of NIR, but they are evaluating different approaches for making this all become a reality.
ARB_gl_spirv is the OpenGL extension that allows SPIR-V modules to be inserted and used for OpenGL consumption. SPIR-V, of course, being the Khronos-developed intermediate representation used by OpenCL 2.1+ and Vulkan.
The plans and initial discussion over this big effort can be found via this mailing list thread.
NIR support for RadeonSI is now being looked at so that RadeonSI could reuse RADV's SPIR-V to NIR to LLVM compiler pipeline, rather than writing a new SPIR-V to LLVM stack.
This isn't a trivial task due to differences between RADV and RadeonSI, but Nicolai has formulated a plan for adapting the support as well as an optional GLSL-to-NIR path within RadeonSI. RadeonSI isn't preparing to abandon Gallium3D's TGSI intermediate representation in favor of NIR, but they are evaluating different approaches for making this all become a reality.
ARB_gl_spirv is the OpenGL extension that allows SPIR-V modules to be inserted and used for OpenGL consumption. SPIR-V, of course, being the Khronos-developed intermediate representation used by OpenCL 2.1+ and Vulkan.
The plans and initial discussion over this big effort can be found via this mailing list thread.
1 Comment