Nvidia: It's Time to Kill CUDA
Why are we talking about this today? Because Nvidia stands at a crossroads, with two closed, proprietary APIs that have mainstream potential: the general-purpose computing CUDA API, and the PhysX physics-acceleration API, which sits on top of CUDA. These are both promising technologies, but only owners of Nvidia hardware can harness their power. Meanwhile, there are two emerging open standards that mirror what Nvidia is doing with its proprietary development. One is OpenCL 1.0, and the other is a general-purpose GPU computing API, which Microsoft will include in DirectX 11.
There are a relatively small number of consumer applications that use CUDA, PhysX, or OpenCL right now, but the possible applications for the tech are endless—grossly simplified, these APIs let graphics chips perform CPU-like functions. The question Nvidia needs to be asking is simple: Will developers write their general-purpose GPU computing apps using a proprietary API that works on only a subset of PCs—those stuffed with Nvidia hardware—or will they use an open API that will work on every PC on the market?
Nvidia’s path is clear: It needs to stop trying to convince us that closed APIs are good, and instead embrace OpenCL and Microsoft’s yet-to-be-named solution. It needs to port PhysX to run on one of the open APIs, then use PhysX as a platform to advertise the kind of power that Nvidia delivers (with the recipients of all this messaging being ATI diehards and anyone considering the forthcoming Larrabee GPU from Intel).
By focusing on what its always done well—building kick-ass hardware—instead of force-feeding us closed APIs, Nvidia will thrive. As for CUDA? It’s served its purpose, but its time has passed. It’s time to kill CUDA.
More. . .