ARB_gl_spirv Is The Main Obstacle For Mesa Drivers Supporting OpenGL 4.6
While covered in our OpenGL 4.6 overview from when the embargo expired this morning on this updated graphics API, the Mesa feature list has been updated to reflect the state of OpenGL 4.6 support.
Of the 11 new extensions for OpenGL 4.6, six of them are currently considered done: ARB_pipeline_statistics_query, ARB_indirect_parameters, ARB_shader_atomic_counter_ops, ARB_shader_draw_parameters, ARM_shader_group_vote, and ARB_transform_feedback_overflow_query. But in the case of the last extension, only Intel's Mesa driver is currently supported and in the case of indirect parameters, RadeonSI is supported but not i965. With the other extensions, i965 and RadeonSI are at least supported.
Meanwhile, Valve developers have been busy working on KHR_no_error support and that probably won't be too much longer before they mark that as completed. ARB_gl_spirv is the other extension in the works.
Two extensions not yet started are ARB_polygon_offset_clamp and ARB_texture_filter_anisotropic, but they probably won't be too much work to do since they are similar to the EXT versions of them that the Mesa drivers already support.
So with all that said, Intel and RadeonSI on Mesa Git are close to supporting OpenGL 4.6 with the big item being the ARB_gl_spirv item to tackle. Both Intel and AMD have developers working on said support, but it's invasive adding SPIR-V / Vulkan shader consumption into their OpenGL drivers. Just today AMD landed their experimental NIR in RadeonSI support as a stepping stone towards this goal. That NIR support was more than 60 patches alone and more work is still needed for being able to flip on ARB_gl_spirv but at least it's being worked on. Seeing Nouveau support OpenGL 4.6 is much more challenging as they don't yet officially support GL 4.4~4.5 pending compliance and their lack of Vulkan/SPIR-V support being another big ticket item on top of other open-source NVIDIA driver challenges like re-clocking / power management.
It will be interesting to see if this work can all be squared away in time for the Mesa 17.3 release in about three months. See this morning's OpenGL 4.6 coverage for more details on the new extensions if unaware.
Of the 11 new extensions for OpenGL 4.6, six of them are currently considered done: ARB_pipeline_statistics_query, ARB_indirect_parameters, ARB_shader_atomic_counter_ops, ARB_shader_draw_parameters, ARM_shader_group_vote, and ARB_transform_feedback_overflow_query. But in the case of the last extension, only Intel's Mesa driver is currently supported and in the case of indirect parameters, RadeonSI is supported but not i965. With the other extensions, i965 and RadeonSI are at least supported.
Meanwhile, Valve developers have been busy working on KHR_no_error support and that probably won't be too much longer before they mark that as completed. ARB_gl_spirv is the other extension in the works.
Two extensions not yet started are ARB_polygon_offset_clamp and ARB_texture_filter_anisotropic, but they probably won't be too much work to do since they are similar to the EXT versions of them that the Mesa drivers already support.
So with all that said, Intel and RadeonSI on Mesa Git are close to supporting OpenGL 4.6 with the big item being the ARB_gl_spirv item to tackle. Both Intel and AMD have developers working on said support, but it's invasive adding SPIR-V / Vulkan shader consumption into their OpenGL drivers. Just today AMD landed their experimental NIR in RadeonSI support as a stepping stone towards this goal. That NIR support was more than 60 patches alone and more work is still needed for being able to flip on ARB_gl_spirv but at least it's being worked on. Seeing Nouveau support OpenGL 4.6 is much more challenging as they don't yet officially support GL 4.4~4.5 pending compliance and their lack of Vulkan/SPIR-V support being another big ticket item on top of other open-source NVIDIA driver challenges like re-clocking / power management.
It will be interesting to see if this work can all be squared away in time for the Mesa 17.3 release in about three months. See this morning's OpenGL 4.6 coverage for more details on the new extensions if unaware.
7 Comments