OpenCL 1.0 spec released, GPUs everywhere to get a workout
How time flies -- it was just a few weeks ago that the OpenCL spec was finalized and sent out for final legal review, and now it's here and ready to go. Over 20 partner companies (including AMD, NVIDIA, and, somewhat surprisingly, Intel) have signed on to the parallel programming standard originally proposed by Apple as part of Snow Leopard, and the final spec should allow apps to tap into multi-core CPUs, GPUs, DSPs and even variants of the Cell chip for everything from raw number crunching to interfacing with OpenGL. Sounds hot -- now we'll just have to see how Microsoft counters with the GPU acceleration expected to be built into Windows 7.






















does this mean i can almost taste my screen? :P
No, but you can definitely smell it!
sounds good. can hardly wait for a gpu-equipped macbook pro with snow leopard. Daamnn!
I assure you, that which you call a GPU isn't even close to being one.
Mark... are you saying the NVIDIA GeForce 9600M GT with 512MB of VRAM in the Macbook Pro isn't a good card?
If so... you are very uninformed.
Yeah, the 9600M GT in the Macbook Pro is liek just as fast as the 9600GT in desktop computers!
No wait, it's like way faster because it's in an Apple computer!!!!!!!!
@ eggo
hyuk hyuk
X6XX series from any manufacturer was never released as a GFX card, its a Video Card..
and theres a huge difference between X6XX series and the real GPUs or the X8XX series like 9800 9800gx2 gtx280.. now these are GFX cards.. 8600 9600 are just video cards..
and if apple needs to step in the game they need to step up the game..
not again, every day there is a pc-mac battle. Its gettin old
@ihater
I don't want a laptop that doubles as a space heater, kthx.
do you think 8600gt on MBP runs cool..
try reading macrumours mr.fanboy..
Exactly. Even 8600GT on MBP is a space heater. So, I dont think it equates right (correct me if Im wrong) less power and more heat is good or more power and same amount of heat is good.
@everyone above
Uh... Isn't that why the MBP has 2 video cards? A 9400M for low-power stuff, and a 9600M for more intensive stuff...?
A 9600 is crap no matter what kind of computer it is installed in!
Worky on a networked cluster?
The spec only covers processors attached to the MoBo.
if you're comfortable working with Open CL chances are you can whip up cross platform distributed networking code in a day and fine tune it the next
Anyone know if it'd be a pain to port all my C base code employing MPI to this system and maintain parallelization?
yes.
I wonder if any existing GPUs will be able to use OpenCL, or if it will require new graphics chips designed to the spec.
What does OpenCL have to do with graphics cards? Perhaps you're confused and thinking this is about OpenGL.
It is you who are confused elliot, and no we won't need new GPU's although the current generation of GPU still isn't full precision math in all circumstances so improvements can and will come in that regard I expect.
"now we'll just have to see how Microsoft counters with the GPU acceleration expected to be built into Windows 7."
Please, God, no. How about they just USE THE STANDARD THIS TIME. Can we do that please?
...PLEASE?!
Why? If the standard sucks, why should they use it?
Who cares? It doesn't.
Idiot. Standards don't come out of thin air. As of the moment, there is no industry standard for GPU computing. We still don't know which one is better, OpenCL or DX11, until both come out and programmers have had enough time to work with them.
Besides, the two standards could coexist. OpenGL and Direct3D are still alive and healthy after many years. You also forget that Microsoft is instrumental in forcing GPU manufacturers to create decent cards by forcing minimum requirements for DirectX certification.
OpenGL 2.0 2.1 3.0. I think they also require a minimum card to run.
superJC, I'm not talking about standards coming out of thin air, I'm talking about OpenCL..... and OpenGL, POSIX, W3C, OD--
/anyways/, if DX11 is bound to Windows, then BAM, OpenCL is better.
...and we don't need their certification, we have benchmarks.
"if DX11 is bound to Windows, then BAM, OpenCL is better"
I fail to follow the logic of your argument here. For a start, define "better". Besides, all DirectX releases have been Windows-only, yet it hasn't deterred game developers programming with that API.
And what's there to make OpenCL a "standard"? It doesn't look ISO certified, or certified by any other independent body for a start.
It has something to do with the fact that I can name four superior operating system kernels off the top of my head....
It may not have deterred the game developers, but it's sure given me and the market a heck of a lot of trouble.
This is a 'standard' because it is an open specification endorsed by over 20 companies including all three major personal chip manufacturers.
@r3loaded
ISO certified? Because we all saw how easy it was to get something certified, if you have the money. ISO is losing all credibility as an international standards organization.
On the other hand, DX is as much of a standard as OpenGL/OpenCL, since it is the de-facto standard on the Windows platform. Only applications that need to work on other platforms target OpenGL. However, since Kronos is also responsible for OpenCL as well, it can be treated as a standard as much as OpenGL is.
"...and, somewhat surprisingly, Intel"
I don't think its surprising at all- Intel needs a competitor to CUDA for its Larabee chip, and why do all the work yourself when you can piggyback off of an open-source standard?
Larabee's highly parallel x86 structure will make it ideal for this kind of computing.
Exactly. Larrabee is very parallelised, and great for this sort of computing. That's _why_ Intel is there, because if Larrabee doesn't support the spec, all that power will be worthless.
And, if Larrabee supports OpenCL, there's a good chance of getting more customers - Apple, for one. Supercomputer clusters would be another market that would appreciate a very fast GPU supporting OpenCL.
A "standard" with limited buyin (read mac) is not worth its while..well, other than in "inspiring" more mass market acceptance (read pc). Another way to look at it is - a spec is piece of paper (well, can be several pieces), whereas an implementation is something else... it can be good or bad or outright ugly, but it is more than paper. So, while I welcome with half-open arms, OpenCL and all other such pieces of paper, they dont make my day. Afterall, the (good or bad or ugly ?) thing about standards is that there are always so many to choose from. OpenCL has only probably started the GPU standards rat-race.
Might be worth noting that all the players indicated supporting it, and on windows too obviously, and that tomorrow AMD will release drivers with (their own 'stream computing' so far) support included with the graphics drivers themselves, so in short you will see OpenCL in a month or 2 top from both AMD and nvidia I expect, they do both support OpenGL too after all and already went OpenGL3.0 very shortly after the specification for 3.0 came out.
Since OpenCL is managed by the Kronos group, it's a good guess that it will appear on other platforms, besides OSX, in the near future. Any nVidia, CUDA-supporting chipsets can be updated with a driver to support OpenCL.
This is great news. CUDA is nice, but it's vendor-specific. Now that there's a vendor-neutral standard, accelerated computing (be it GPU or co-processor) is really going to take off.
Hardware-accelerated video decoding is a good example. Right now it's doable, but it's tricky and there's a lot of vendor-specific stuff going on. With a universal standard, we could see great advances in that regard.
You think the new standard will work on the consoles like the 360 and the PS3?
what for ? do you use other non-game apps on your consoles ?
I guess the proof will be in the pudding. like how fast video/3d editing apps run on snow leopard or windows 7.
Of course Windows 7 will still run on my P4, but Snow Leopard will be intel only, and not one iLover will mind one little bit. Like candy from a baby eh Steve ?
But what I'm wondering is how much will it help the programmer? Yes its great that there is a standard, and I'm sure end-users will benefit from some fast software, but what about non-experts trying to use OpenCL to write fast simulation applications (i.e. scientists in the area of scientific computing)? From the looks of the spec. it will just still be a lengthy, tedious drag, fraught with bugs and inaccuracy errors, for many programmers trying to apply the language to parallelise their programs. It is a positive step, but it is not the solution all our woes. Perhaps it will make a great intermediate language for more abstract languages to translate to? (http://dorchard.co.uk)