CUDA is currently the only vendor technology from NVIDIA and therefore does not support multi-vendor support, OpenCL does.
However, it is more mature than OpenCL , has excellent documentation , and acquired skills will be easily transferred to other tools for processing parrallel data.
As an example, read Parallel data algorithms from Steele and Hillis, and then look at Nvidia Tutorials - there is a clear connection between them, but Steel / Hillis's article was written over 20 years before the introduction of CUDA.
Finally, FCUDA Projects is working to allow CUDA projects to focus on nvidia hardware (FPGA).
Robert Christie
source share