Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
oh great another standard. how long until nvidia, ati, & microsoft have board members who will slow everything to a crawl, and bicker over everything possible.

I guess by 2015 we will have our first beta program in the wild :rolleyes:
 
Here's to hoping it will push Apple to stick a video card in MacBook's again.

Good point!

But it isn't clear how well on-board video would be able to "play" in the OpenCL environment. It may well be able to donate some useful resources as well (not as many as a real video card, mind you, but some).
 
So will Snow Leopard be supporting an unofficial version of OpenCL?

If OpenGL is a measure to go by, it seems to take months or even years for them to get everyone to agree to a standard, certify it and then implement it. If they are just announcing the working group now, I can't see how they'll have an official standard with production drivers ready if Snow Leopard is supposed to ship early 2009. Apple might release based on a draft version of OpenCL, but that doesn't seem to be very beneficial to an open standard.
 
So will Snow Leopard be supporting an unofficial version of OpenCL?

If OpenGL is a measure to go by, it seems to take months or even years for them to get everyone to agree to a standard, certify it and then implement it. If they are just announcing the working group now, I can't see how they'll have an official standard with production drivers ready if Snow Leopard is supposed to ship early 2009. Apple might release based on a draft version of OpenCL, but that doesn't seem to be very beneficial to an open standard.

Officially it would probably be a draft version.
 
oh great another standard. how long until nvidia, ati, & microsoft have board members who will slow everything to a crawl, and bicker over everything possible.

I guess by 2015 we will have our first beta program in the wild :rolleyes:

NVidia and ATI are already on board as founding members, and they are not going to slow down anything because the whole thing is in their best interest. It will help them selling lots and lots of high-end GPUs.

And I think Apple will be in a very good position to prevent anyone from Microsoft slowing anything down. Remember that any committee that has Apple on board cannot be just paid off by Microsoft, so their best strategy won't work.
 
I've been on a Khronos commitee. There are alot of smart people on these committees (I fluked into it) that know what they are doing and what the companies represent want.

What this ends up being is a design by committee, and in my experience this does not always end up creating the best API and typically is not on time!

I think we may be lucky to have a finalized OpenCL within a year, which would be the timeframe to get it into Snow Leopard.
This isn't being designed by committee, Apple has already designed OpenCL (likely with help from NVidia) and they are taking the specification that they have already developed and are submitting that to Khronos. There will likely be some refinements from there, but the grunt work is already done. And regardless of what Khronos thinks or does OpenCL will be shipping in Snow Leopard - even if the standard hasn't been finalized.
 
I think any improvement to make apps and files load quicker will be good.
OpenCL has nothing to do with making applications or files load faster. It is designed to make it easier for applications that process large amounts of data in parallel to take advantage of multi-core CPUs and GPUs. For example: image/video editing, physics, scientific number crunching, etc. It's designed for a very specialized set of problems and won't help (or even make sense for) many applications.
 
It's performance per watt

the current high end video cards draw too much power, upto 235w for the new nvidia gt200 gpus.

A high end GPU may require 3x the power (wattage) of a mid-high end cpu but a GPU has 10-20x the performance of a mid-range multi-purpose CPU.
Video cards today can push 500GigFlops of single precision FP work.
A very high end Quad Core Xeon 3GHz chip benched at 81GFlops in Linpack:
http://www.intel.com/performance/server/xeon/hpcapp.htm
I've got the 2.8s in my XServe. They're fast.
Sure GPUs run hot.. but they don't as hot as 6+ 3Gig Xeons (a 120W part).

That all said..
GPUs do a few things REALLY well. Some things they simply don't do at all.
Right now, not all of the GPUs (most) don't support double-precision floating point. They might not support the same IEEE standards for FP either. it'd probably be bad if your CPU and your GPU rounded FP numbers differently when you use them for parts of the same calculation. ;-)
GPU streams also don't do a good job talking to each other so there are issues with scheduling.
I'm glad to hear that ATI is on board already. They've got double-precision FP support in some GPUs already. They even sell a computation card that uses GPUs (though it doesn't appear to be for sale anywhere). http://ati.amd.com/products/streamprocessor/specs.html

As I understand it, OpenCL will be an abstraction layer for programmable GPUs. There should be no reason why it couldn't also support other math processors, like gaming Physics chips. The big vendor (in that small market) was recently purchased by Nvidia. :) Physics chips are designed for a different set of tasks, and they run cooler. I'd love to see a card with a mess-o physics chips on it.
http://www.nvidia.com/object/nvidia_physx.html

GPUs are essentially scores, soon to be hundreds, of relatively discrete processing units. The current high-end GPUs have over a hundred "streams".
These are designed to run in parallel and therefore they can get a phenomenal amount of work done in a given time.
If you task can be broken up into lots of little pieces AND if your task requires an acceptable set of math functions, it'll scream on your OpenCL system. You can literally get the performance of a half-rack of cluster from your desktop [likely more due to lower latency].. certainly more if you put in a several video cards.

Most common applications won't see a lick of OpenCL acceleration. We should (hopefully) see some acceleration in apps that apply filters to digital streams. I could potentially see GarageBand, iPhoto, and iMovie running like 'a bat out of hell'. They're kind of made for this type of thing.
Where OpenCL should really pay off is in custom apps, like Computational Fluid Dynamics programs that someone like NASA might use to design a replacement for the Space Shuttle. OpenCL will probably be a huge boon for tasks like protein folding. Professional 3d rendering will likely get much faster.

None of this is new stuff mind you. A lot of people have been doing GPU programming for a long time ( I know some of them ). There are commercial apps out that do GPU programming already (not MS Office and the like.. but usually professional apps in Vertical markets like medical imaging and such).
OpenCL is cool because it's GPU programming for the masses. It's really the first time consumers can see this kind of benefit because it'll be much easier .. Way easier for developers to wrap OpenCL acceleration into Apps. In particular, Apple technologies will be OpenCL accelerated. If you embed something like Quartz Composer or if you leverage Quartz Extreme in some way.. it should just be faster. (this all depends on which Apple technologies lend themselves to OpenCL.. I'm not saying either of the previous will be accelerated but they're good candidates) :)
 
Nice to see ATI and Nvidia jump in early with their support. Of course, if this pans out and gets adopted as a standard they both stand to sell lots of higher end video cards as computing power enhancements, instead of just to gamers.

I have impression that they - ATI and nVidia - treat Apple separately. After all nobody on Windows cares about OpenGL anymore. Yes, it is supported - but M$ forced everybody into Direct X chains.

Essentially, only open source OSs and Apple are those who would see any benefits of the new standard. Windows market would likely be torn apart by nVidia and ATI proprietary solutions to only later be "put in place" by next version of Direct X.

Also to the "they both stand to sell lots of higher end video cards" statement. It is quite ambiguous at the moment. At least ATI tries clearly to find solution for low-end. nVidia never really cared about low-end - they have fat enough margin from high end market they own at the moment. Adding such feature (CUDA) to their high end offering only adds to the exclusivity of newer video cards.
 
OpenCL has nothing to do with making applications or files load faster. It is designed to make it easier for applications that process large amounts of data in parallel to take advantage of multi-core CPUs and GPUs. For example: image/video editing, physics, scientific number crunching, etc. It's designed for a very specialized set of problems and won't help (or even make sense for) many applications.

Scalable Database servers requiring millions of connections will most certainly leverage the crap out of it. Companies like Oracle, Sybase, PostgreSQL DB and more will take advantage of it.

Large Enterprises like AT&T that have to deploy regional call centers will want to see how to leverage it.

Any Engineering firm dealing with Finite Element Analysis [Fracture analysis, Heat Transfer, Wave Fields, et.al], Nurbs Modeling, Real-time rendering updates for time based control systems simulations, non-linear Weather modeling, Geophysics, etc.
 
Scalable Database servers requiring millions of connections will most certainly leverage the crap out of it. Companies like Oracle, Sybase, PostgreSQL DB and more will take advantage of it.

Unless those millions of DBs are doing transforms, OpenCL really won't be that useful. DB's are more hindered by IO and Bus than they are by CPU cycles.
 
I have impression that they - ATI and nVidia - treat Apple separately. After all nobody on Windows cares about OpenGL anymore. Yes, it is supported - but M$ forced everybody into Direct X chains.

Essentially, only open source OSs and Apple are those who would see any benefits of the new standard. Windows market would likely be torn apart by nVidia and ATI proprietary solutions to only later be "put in place" by next version of Direct X.

Also to the "they both stand to sell lots of higher end video cards" statement. It is quite ambiguous at the moment. At least ATI tries clearly to find solution for low-end. nVidia never really cared about low-end - they have fat enough margin from high end market they own at the moment. Adding such feature (CUDA) to their high end offering only adds to the exclusivity of newer video cards.

1) Sorry, but Nvidia's CUDA system (and therefore OpenCL most likely) supports ALL 8-series cards and higher, even the lowly 8400M GS. http://www.nvidia.com/object/cuda_learn_products.html How much benefit you would receive from such weak graphics cards is something else entirely. Although, ANY graphics chip from Nvidia or ATI, even their integrated motherboard chipsets are better than anything that has ever come from Intel.

2) OpenCL and Grand Central look great, but don't think that Microsoft is just twittling their thumbs in Redmond. Their primary feature of the new .NET version and C# will be a parallel processing library. I'm sure they are also working on new parallel processing and GPGPU features for Windows 7. I'm no fan of theirs, but it would be stupid to underestimate the amount of resources they have in development and research.

Scalable Database servers requiring millions of connections will most certainly leverage the crap out of it. Companies like Oracle, Sybase, PostgreSQL DB and more will take advantage of it.

Large Enterprises like AT&T that have to deploy regional call centers will want to see how to leverage it.

Any Engineering firm dealing with Finite Element Analysis [Fracture analysis, Heat Transfer, Wave Fields, et.al], Nurbs Modeling, Real-time rendering updates for time based control systems simulations, non-linear Weather modeling, Geophysics, etc.

Your last sentence is surely correct, but how are you thinking that database servers will benefit from the data-parallel/SIMD speedup of OpenCL? My guess would be that they are limited by hardware I/O and network I/O.
 
OpenCL and Grand Central look great, but don't think that Microsoft is just twittling their thumbs in Redmond. Their primary feature of the new .NET version and C# will be a parallel processing library.

But it won't sound as cool as Grand Central. :D
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.