Hacker News new | ask | show | jobs
by wyldfire 3613 days ago
CUDA is not [unqualified] "faster than OpenCL". NVIDIA does design software better than AMD, without a doubt. I think it's likely that NVIDIA decided to push CUDA and lag OCL support if their customers balked at having to port between the two. It's not that hard to port IMO, they're extremely similar.
1 comments

OpenCL IMO is an ugly API born of the equivalently ugly CUDA driver API because Steve Jobs got butthurt at Jensen Huang for announcing a deal with Apple prematurely. Downvote all you like, but as John Oliver would say "That's just a fact." I witnessed it secondhand from within NVIDIA.

In contrast, OpenCL could have been a wonderful vendor-independent solution for mobile, but both Apple and Google conspired independently to make that impossible (ironic in Apple's case because of OpenCL's origin story and idiotic in the case of Google and its dreadful Renderscript, a glorified reinvention of Ian Buck's Ph.D. thesis work, Brook).

Fortunately, AMD appears to have figured out OpenCL has no desktop traction and they have embarked on building a CUDA compiler for AMD GPUs called R.O.C (Radeon Open Compute). They have also shown dramatically improved performance at targeted deep learning benchmarks. It's early, but so is the deep learning boom.

The wildcard for me is what Intel will decide to do next.

The big win IMO is vendor-unlocking all the OSS CUDA code out there.

https://github.com/RadeonOpenCompute https://techaltar.com/amd-rx-480-gpu-review/2/

Jobs might've been butthurt and it might've made better incentive but nobody likes to sole-source critical technology elements.
It would have been fantastic if Intel had stopped beating the linpack horse a lot sooner and built a viable competitor to GPUs by now. Not this timeline though alas... Maybe 2020?