The CUDA 5.0 RC is finally available not only to registered CUDA developers, but the public. So we can now talk about it in public.
There are quite a number of depreciating functions. Particularly, cudaFuncGetAttributes(...), cudaLaunch(...), cudaFuncSetCacheConfig(...) and cudaFuncSetSharedMemConfig(...) functions now do NOT work with function name in string.
These gives quite an impact to the Ruby CUDA Runtime API. We can no longer reference the kernel function by name in string. We'll have to provide the kernel function prototype for the template of these functions. As a result, it becomes much more difficult to invoke the kernel function without going through the CUDA compiler.
A potential solution might be using a CUDA compiler to build a C wrapper around the kernel function, in Ruby we then bind to the wrapper function instead of invoking the kernel function directly.