Neil Trevett on OpenCL
The Khronos Group gave some talks on their technologies in Shanghai China on the 17th of March 2012. Neil Trevett did some interesting remarks on the position of NVidia on OpenCL I would like to share with you. Neil Trevett is both an important member of Khronos and employee of NVidia. To be more precise, he is the Vice President Mobile Content of NVidia and the president of Khronos. I think we can take his comments serious, but we must be very careful as these are mixed with his personal opinions.
Regular readers of the blog have seen I am not enthusiastic at all about NVidia’s marketing, but am a big fan of their hardware. And exactly I am very positive they are bold enough in the industry to position themselves very well with the fast-changing markets of the upcoming years. Having said that, let’s go to the quotes.
All quotes were from this video. Best you can do is to start at 41:50 till 45:35.
At 44:05 he states: “In the mobile I think space CUDA is unlikely to be widely adopted“, and explains: “A party API in the mobile industry doesn’t really meet market needs“. Then continues with his vision on OpenCL: “I think OpenCL in the mobile is going to be fundamental to bring parallel computation to mobile devices” and then “and into the web through WebCL“.
Also interesting at 44:55: “In the end NVidia doesn’t really mind which API is used, CUDA or OpenCL. As long as you are get to use great GPUs“. He ends with a smile, as “great GPUs” refers to NVidia’s of course.
At 45:10 he puts NVidia’s plans on HPC, before getting back to : “NVidia is going to support both [CUDA and OpenCL] in HPC. In Mobile it’s going to be all OpenCL“.
At 45:23 he repeats his statements: “In the mobile space I expect OpenCL to be the primary tool“.
What does it mean?
The main question in the viral video “double rainbow” is a good one. Specially because it is always a hard question.
For me these statements mean that at NVidia they have been thinking it through very well. I like that for two reasons. First that they are long term thinkers, second that they get the competition at the ARM-market on hardware-capacities and pricing.
Maybe not emphasised enough, but the market is going to change a lot. In short: the “middle market” (PC desktops and laptops) are going to disappear and/or being replaced. NVidia is anticipating a lot by focusing on two areas at both sides: HPC and mobile.
Know Cobol and Fortran? Those are ancient languages that is still used a lot in HPC. I don’t know who’s law it is, but “The more security they want it, the more ancient the methods”. Another example of an industry that is prey of that law is the space-exploration – “better to have fully tested code than anything else”. CUDA would be a very welcome add to these industries, and they know it.
NVidia mostly aims for the (incredibly growing) cloud-part of the future world. It’s most direct competitor: Intel.
Mobile & ARM
NVidia sees that the faster they get to a standard, the faster ARM gets accepted as the next X86. The slower AMD moves, the bigger the market share. Also the “old world” of ARM-companies are not used to the ways of the consumers very well knows in the X86 world – ARM vendors are mostly not directly tied to consumers, but have one (or more) vendors between consumers and themselves. So NVidia has all the space to get big as they have all the stage for their own marketing.
If NVidia is backing OpenCL, then this could give a good push in the right direction to get one standard for compute on mobile devices.
Desktop & Laptop
While AMD and Intel go hybrid with X86, NVidia keeps making discrete GPUs. The result: losing market share each quarter. But if you look at the decreasing sales of these devices, the only growth is by harsher competition. I don’t think it is a bad choice at all.
The 2012 GPUs are split in two groups: gaming and HPC. The differences between these two will give more answers on the path NVidia takes.
Also note that Trevett did not say anything about computers – neither ARM nor X86.
OpenCL in the browser
He was very explicit on WebCL as a standard for computing on the HTML5 web. It is still working draft, but things must go really strange if this standard will be replaced by another standard, such as Intel’s RiverTrail. There are no similar competing products based on CUDA, DirectCompute or RenderScript.
Neil Trevett said that a standard in the mobile industry is very important. To get quick acceptance of ARM as replacement for X86, standards (such as OpenCL) would need to get in place soon. NVidia is ready for a quickly shifting market, so some quotes could be seen differently in that light. Say demands for ARM-based computers will raise after the release of Windows 8, and games recompiled on ARM get released, then NVidia will have a better quarter than Intel or AMD for sure.
As these games-on-ARM and other software that needs processing power must start using OpenCL, StreamComputing does not mind.