CUDA 9.0 introduces a new CUDA programming feature named Cooperative Groups. This introduces a new CUDA programming design pattern for CUDA collective operations by specifying group-wise operations. Using this, programmers can write CUDA code that controls CUDA threads explicitly.
To begin with, let's see what Cooperative Groups is and its programming advantages.