4 ms·
Apart from the initialization code which I'd agree is significantly less painful for CUDA, I haven't seen that much difference in terms of exploiting a GPU's co
by levesque 13y ago
Apart from the initialization code which I'd agree is significantly less painful for CUDA, I haven't seen that much difference in terms of exploiting a GPU's compute units. I never wrote complex applications though, so am I missing something?
The bulky initialization is no longer a problem with a library like PyOpenCl - everything becomes much more elegant...
- qb45 13y agoFirst of all, nobody is going to port few KLOC of CUDA to OpenCL or vice versa because of one developer's whim. Hence no choice of GPU is bad for developers. And there are some differences which may be relevant for large projects: CUDA supports ahead-of-time compilation of GPU code down to the lowest level assembly (compilation of several KLOC project takes minutes), direct data transfers between GPUs or even GPUs and network adapters, some subset of C++ (classes without virtual methods, function/class templates, operator overloading) and probably few more useful features I haven't listed.