Too bad it's CUDA Sooner or later this will become a problem because you are depending on the benevolence of a single manufacturer.
AMD's ROCm 4.0 now supports cooperative groups, which is probably one of the last major holdouts for CUDA compatibility. There's still the 64-wavefront (for AMD CDNA cards) instead of 32-wavefronts (for CUDA). But AMD even has 4x4 half-float matrix multiplication instructions in ROCm (for MI100, the only card that supports the matrix-multiplication / tensor instructions) --------- I think CUDA vs OpenCL is over. ROCm…
And the less said about Intel it's better. Smart, motivated people I know have left Argonne recently because of the Aurora shitshow.