ARB_shader_ballot Posted For RadeonSI, Can Be Used For AZDO Techniques
The latest RadeonSI OpenGL extension work done by AMD developer Nicolai Hähnle is on the useful ARB_shader_ballot extension.
ARB_shader_ballot was one of the new extensions in the OpenGL 2015 update and can be used for AZDO "Approaching Zero Driver Overhead" techniques, at least on AMD GCN hardware. There was previously the AMD_shader_ballot extension for which this OpenGL ARB extension is based.
Implementing ARB_shader_ballot took over 500 lines of code spread over 19 patches and some AMDGPU LLVM patches will be needed for properly vetted support. As explained with the OpenGL registry, "this extension provides the ability for a group of invocations which execute in lockstep to do limited forms of cross-invocation communication via a group broadcast of a invocation value, or broadcast of a bitarray representing a predicate value from each invocation in the group."
RadeonSI is currently the first Mesa/Gallium3D driver with patches pending for ARB_shader_ballot support.
ARB_shader_ballot was one of the new extensions in the OpenGL 2015 update and can be used for AZDO "Approaching Zero Driver Overhead" techniques, at least on AMD GCN hardware. There was previously the AMD_shader_ballot extension for which this OpenGL ARB extension is based.
Implementing ARB_shader_ballot took over 500 lines of code spread over 19 patches and some AMDGPU LLVM patches will be needed for properly vetted support. As explained with the OpenGL registry, "this extension provides the ability for a group of invocations which execute in lockstep to do limited forms of cross-invocation communication via a group broadcast of a invocation value, or broadcast of a bitarray representing a predicate value from each invocation in the group."
RadeonSI is currently the first Mesa/Gallium3D driver with patches pending for ARB_shader_ballot support.
6 Comments