Is it time for Nvidia to ditch CUDA?
Santa Clara (CA) – Nvidia had some interesting news today and announced the first Open CL 1.0 drivers for its GPUs today. For now, however, the drivers are only available to registered Nvidia developers, but Nvidia’s effort to support Open CL as a way to exploit graphics processors for general purpose applications is apparent. So, who needs CUDA?
We may be a long way from Nvidia in fact reducing or even dropping CUDA, but the increasing importance and support for Open CL as a general purpose GPU software development platform for all GPUs and future cGPUs should be perceived as good news by all users. Given Nvidia’s focus on CUDA as development environment for its GPGPUs, today’s news may come somewhat unexpected: The company is first to actually offer a Open CL 1.0 drivers for its GPUs - which is impressive, even if those drivers are limited to Windows XP and Linux at this time.
Our sources tell us that AMD also has Open CL drivers in the works, but is apparently cannot talk openly about its software, because of non disclosure agreements (NDAs) with the iPod company in Cupertino. Which, of course, sounds a bit strange, given Nvidia’s currently very close relationship with Apple – one would assume that Nvidia should be the one under Apple NDAs at this time. Nevertheless, Nvidia is clearly ahead of the game here and if we think about the soon-to-be-released Apple Snow Leopard OS, which will support GPU acceleration through Open CL, it seems that Nvidia has an advantage at this time.
The impact on CUDA remains to be seen. The reach of GPGPU computing is very limited today and is mainly used in specific science applications in industries such as oil and gas as well as well as academia. Developers usually take the route of the least resistance and the most efficient programming environment. In that view it is too early to say if Open CL offers more of a free lunch than CUDA.
AMD isn’t standing still either. We don’t have an AMD Open CL driver yet, but the company has released a beta plug-in for Adobe Premiere Pro CS4 – software that is promised to “enhance performance across a range of video editing tasks to accelerate workflows.” AMD claims that with the plug-in installed, a Phenom X4 test system encoded an H.264, 1440x1080i 29.97 frames-per-second, High Quality file in 47.3 seconds. Without the plug-in, Adobe Premiere Pro encoded the same file in 372.5 seconds.
What are your thoughts? Is there still room for CUDA or should Nvidia simply drop it?
Update 7:20pm: As a small addition to the article, I did have a chance to briefly chat with Nvidia spokesman Andrew Humber about the state of CUDA and the general notion about a declining importance of CUDA in fact is true. While CUDA is not going anywhere and while the platform will remain important to vertical industries, especially in the high performance computing space and if those customers have invested substantial time into their own proprietary CUDA application, Open CL is likely to do well in the consumer space. Nvidia currently considers CUDA as a mature software environment to take advantage of GPUs, while Open CL has clearly a few years to go. To answer the question whether it is time to ditch CUDA, the answer I got was, "as long as we continue to see demand from the industry, we will continue to develop the platform and support it."