>>22
The oldest gpu that nvidia suppports CUDA on is the G80 series, which includes the Geforce 8000 series. This is also the oldest gpu upon which OpenCL is available, so your concerns here are moot.
Furthermore, how is OpenCL not low level? The OpenCL compute language
is C99. In fact, both nVidia and AMD use the same underlying compiler for OpenCL--Clang/LLVM. This is also the same compiler nVidia has used for CUDA's C and C++ compilers. OpenCL produces just as optimized code on nVidia Gpus as CUDA. CUDA has no additional performance potential.
So what does CUDA have that OpenCL doesn't? C++ and Fortran language support for compute kernels. But it seems you are not interested in those anyway.
I posted this from my GNU/linux arm based tablet in the hottub, so I apologize for any grammatical or punctual errors.