AMD's RadeonSI Driver Finally Enables OpenGL 4.6 But You Need To First Enable NIR
The OpenGL 4.6 extension is nearly two and a half years old while finally the open-source Mesa OpenGL drivers are catching up to this latest OpenGL revision that offers Vulkan/SPIR-V interoperability and other additions.
Last quarter's Mesa 19.2 release brought OpenGL 4.6 for core Mesa and Intel's i965/Iris drivers while tonight in Mesa 20.0-devel Git is support for RadeonSI! The AMD open-source OpenGL Linux driver can finally have GL 4.6!
But before getting too excited, the OpenGL 4.6 support for RadeonSI requires use of the NIR intermediate representation due to some code sharing with RADV around the SPIR-V ingestion support and reusing existing code-paths. But, unfortunately, the NIR code-path for RadeonSI isn't yet ready to flip on by default. So only if manually enabling RadeonSI NIR does OpenGL 4.6 support get exposed for AMD Radeon GCN/RDNA graphics hardware.
There still is close to two months left until Mesa 20.0 will go into feature freeze, so we'll see if that is enough time for the RadeonSI NIR support to stabilize where this OpenGL 4.6 support could be advertised by default. It's important to confuse the enablement with not being for Mesa 19.3 that is releasing soon.
RadeonSI has long supported most extensions of OpenGL 4.6 like ARB_indirect_parameters, ARB_shader_draw_parameters, ARB_shader_group_vote, ARB_texture_filter_anisotropic, KHR_no_error, and others, but like the Intel driver had been held up by the ARB_gl_spirv and related ARB_spirv_extensions due to all of that work involved in opening up SPIR-V support to OpenGL drivers.
Update: For those wanting to try the NIR+GL4.6 support, radeonsi_enable_nir=true is the environment variable to use.
Last quarter's Mesa 19.2 release brought OpenGL 4.6 for core Mesa and Intel's i965/Iris drivers while tonight in Mesa 20.0-devel Git is support for RadeonSI! The AMD open-source OpenGL Linux driver can finally have GL 4.6!
But before getting too excited, the OpenGL 4.6 support for RadeonSI requires use of the NIR intermediate representation due to some code sharing with RADV around the SPIR-V ingestion support and reusing existing code-paths. But, unfortunately, the NIR code-path for RadeonSI isn't yet ready to flip on by default. So only if manually enabling RadeonSI NIR does OpenGL 4.6 support get exposed for AMD Radeon GCN/RDNA graphics hardware.
There still is close to two months left until Mesa 20.0 will go into feature freeze, so we'll see if that is enough time for the RadeonSI NIR support to stabilize where this OpenGL 4.6 support could be advertised by default. It's important to confuse the enablement with not being for Mesa 19.3 that is releasing soon.
RadeonSI has long supported most extensions of OpenGL 4.6 like ARB_indirect_parameters, ARB_shader_draw_parameters, ARB_shader_group_vote, ARB_texture_filter_anisotropic, KHR_no_error, and others, but like the Intel driver had been held up by the ARB_gl_spirv and related ARB_spirv_extensions due to all of that work involved in opening up SPIR-V support to OpenGL drivers.
Update: For those wanting to try the NIR+GL4.6 support, radeonsi_enable_nir=true is the environment variable to use.
18 Comments