Comment by em500
I thought OpenCL was supposed to be the "standard"? From the Wikipedia page, it's largely vendor neutral and not that much younger than CUDA (initial release Aug 2009 vs Feb 2007). Maybe some more knowledgeable people can comment why it seems to have been outcompeted by the proprietary CUDA?
CUDA has a comparatively nicer user experience. If you would like to understand tacitly and have an nvidia GPU, try writing a simple program using both. (Something highly parallel, like nbody, for example)