The interest in this thread tells me there are a lot of people who are not cool with the CUDA monopoly.
replies(2):
CUDA shouldn't exist. We should have hardware manufacturers working together, using common APIs and standardizing instead of going for the throat. The further platforms drift apart, the more valuable Nvidia's vertical integration becomes.
Meanwhile NVidia was adding C++, Fortran, PTX, supporting other programming language communities trying to target GPUS (Java, .NET, Haskell,..).
Making it as easy to debug GPUs as modern graphical debuggers for CPUs, building libraries,...
Intel, and AMD together with Khronos did this to themselves.