CUDA is like OpenCL, but only works on NVIDIA hardware.
It can be fully tuned on NVidia hardware, adding some extra percentages in performance. CUDA can be written in C, C++ and Fortran
NVidia hardware, being GeForce GPUs, Tesla accelerators and Tegra mobile GPUs.
It works with CPUs using a special compiler.
AMD has made a tool to convert CUDA-code to work with their hardware.