backtop


Print E-mail del.icio.us 38 comment(s) - last by R0B0Ninja.. on Aug 8 at 7:42 AM

NVIDIA says its GPUs are in fact programmable in C language

Yesterday, DailyTech ran a story about details on Intel's upcoming Larrabee architecture for the graphics market. One of Intel's most important talking points when it plays up the benefits of Larrabee over NVIDIA's GPUs is the fact that NVIDIA's GPUs require developers to learn a new programming language called CUDA.

Intel says that with its Larrabee architecture developers can simply program in C or C++ languages for just as they would for any other x86 processor. According to Intel, the ability to program Larrabee with C or C++ makes it much easier for developers to port applications from other platforms to the Larrabee architecture.

After DailyTech ran the story, NVIDIA wanted to address what it considers to be misinformation when it comes to CUDA. NVIDIA says:

CUDA is a C-language compiler that is based on the PathScale C compiler. This open source compiler was originally developed for the x86 architecture. The NVIDIA computing architecture was specifically designed to support the C language - like any other processor architecture. Competitive comments that the GPU is only partially programmable are incorrect - all the processors in the NVIDIA GPU are programmable in the C language.

NVIDIA's approach to parallel computing has already proven to scale from 8 to 240 GPU cores. Also, NVIDIA is just about to release a multi-core CPU version of the CUDA compiler. This allows the developer to write an application once and run across multiple platforms. Larrabee's development environment is proprietary to Intel and, at least disclosed in marketing materials to date, is different than a multi-core CPU software environment.

Andrew Humber from NVIDIA distilled things a bit further saying, "CUDA is just our brand name for the C-compiler. They aren't two different things."

Humber also pointed out that at NVIDIA's financial analyst day in April it showed an astrophysics simulation running on integrated graphics with an eight-core GPU, a GeForce 8 series GPU with 128 cores and a quad-core CPU. NVIDIA says that the demonstration used exactly the same binary program across the range of GPUs and the exact same source code for the CPU and GPU.



Comments     Threshold


To quote myself from yesterday....
By DanoruX on 8/5/2008 1:41:39 PM , Rating: 2
http://www.dailytech.com/article.aspx?newsid=12567...

quote:
1. Cuda is based on C.
2. Computer graphics (today) is mostly done in HLSL and GLSL which are both also based on C.
3. Above languages are really easy to learn.


:-)




RE: To quote myself from yesterday....
By Master Kenobi (blog) on 8/5/2008 4:12:58 PM , Rating: 3
I would like to point out that "Based on C" and "C/C++" are not the same thing. I can say C# is "Baced on C" but anyone who has ever programmed in C# would know that my statement is half baked at best.


RE: To quote myself from yesterday....
By Master Kenobi (blog) on 8/5/2008 4:14:25 PM , Rating: 2
That should be Based* wow I can't spell today. Ready to go home and relax eh?


By chmilz on 8/5/2008 4:43:10 PM , Rating: 2
Quick, someone program Tuesday to be the new Friday!


By JakLee on 8/5/2008 4:55:00 PM , Rating: 5
All your BASED are belong to us.


RE: To quote myself from yesterday....
By DanoruX on 8/5/2008 4:39:29 PM , Rating: 2
Let me correct the semantics then - "closely related" to C, C-like, etc.

Better? :P

Oh and yes, C# is very different (though very awesome in its own way).


By jvillaro on 8/6/2008 12:31:49 AM , Rating: 1
C# is more "closely related" to JAVA actually :) with a little bit of C++

But it's the most "awesomest" of them all ;)


By DeepBlue1975 on 8/5/2008 5:18:10 PM , Rating: 2
I'm sure I wouldn't wanna touch one of those half baked arguments even with a 10 meter pole, have enough digestive disorders by the moment :D


By MisterAnderson42 on 8/5/2008 5:23:45 PM , Rating: 5
CUDA is MUCH closer to C than you are assuming. The only additions NVIDIA made to C were some built in variables and a new syntax to call a function specifying the grid of threads it executes on the GPU.

Basically, any C code goes in the kernel: enums, structs, pointer arithmetic, switch statments, etc... everything in the C syntax just works. NVIDIA wasn't joking when they said as quoted in the article above that nvcc is just a modified C compiler :) C# definately is not that.

If you don't believe me, check out the programming guide: http://www.nvidia.com/object/cuda_get.html

As for Larabee: I'll wait and see when they release their programming guide before I make a judgment. If they just provide a C language with big 16-wide SSE instructions for math operations I will be very disappointed because that will be an absolute pain to program compared to CUDA which has one thread working on each SP and automatically handles divergences.


RE: To quote myself from yesterday....
By Flunk on 8/5/2008 7:53:09 PM , Rating: 5
I don't think Microsoft ever claimed C# was based on C. I think the term "C-like syntax" is what they were marketing.


By drmo on 8/6/2008 7:37:56 AM , Rating: 2
Intel's compiler will also contain the much loved feature of: if not GenuineIntel then suckass.


By TomZ on 8/7/2008 9:03:50 AM , Rating: 2
quote:
I don't think Microsoft ever claimed C# was based on C. I think the term "C-like syntax" is what they were marketing.

C# is clearly based on Java, C++, and C before it. To deny that is like denying the existance of gravity.


You sure about that?
By marsbound2024 on 8/5/2008 1:38:05 PM , Rating: 5
quote:
and a quad-core CPU with four cores...


Pretty revolutionary, that.




RE: You sure about that?
By Sulphademus on 8/5/2008 1:42:18 PM , Rating: 5
Department of Redundancy Department.


RE: You sure about that?
By Brandon Hill (blog) on 8/5/2008 1:42:29 PM , Rating: 5
Not as revolutionary as a dozen of Krispy Kreme doughnuts which come 12 to a box.


RE: You sure about that?
By Oregonian2 on 8/5/2008 6:04:01 PM , Rating: 2
144 doughnuts are a lot of doughnuts!

:-)

Although I know what you meant to say...

:-)


RE: You sure about that?
By killerroach on 8/5/2008 10:16:27 PM , Rating: 5
quote:
144 doughnuts are a lot of doughnuts!

:-)

Although I know what you meant to say...

:-)


That's just [a] gross. :)


RE: You sure about that?
By JonnyDough on 8/7/2008 12:02:29 AM , Rating: 2
Not to a cop! Nothing against cops, unless they're here on behalf of the RIAA. Then I might not be too happy with them.


RE: You sure about that?
By tmouse on 8/6/2008 3:49:32 PM , Rating: 2
Thats why I always prefer a bakers dozen. ;)


RE: You sure about that?
By Amiga500 on 8/5/2008 1:49:45 PM , Rating: 2
Could have been saved with an emergency switch to:

and a quad-core CPU with four threads

But alas, it was too late - the sentence was confined to the grammatical underworld where half of my posts belong.


I'd be more happy