Talking about the idea of stream computing is easy, and getting one or two programs to run on your graphics card is simply the norm but AMD has a plan using open standards to get GPU computing into the mainstream.
AMD/ATI has always been the one to offer nearly "to the metal" access to their GPU hardware in order to allow programmers to get as much performance out of their GPGPU programming as possible. However, most users won't actually want access to that but instead want to see open programming languages and models. Brook+ was a high level language aimed at getting people easy access to the power of the GPU, was much like CUDA, but was completely open source.
With the new ATI Stream SDK 1.3 developers will be able to write one set of code and have it run on pretty much all compatible ATI GPUs.
Even though ATI Stream SDK has had some success, AMD sees the value in moving on to open, cross-platform models that will truly pave the way for ubiquitous parallel computing. Using programming languages like OpenCL, DirectX and OpenGL a single program should be able to run on AMD GPUs and "other" GPUs as well, something we saw at work with the Adobe software (most of it at least).
OpenCL is probably the most promising of these interfaces as it has significant partner backing and will be supported by AMD, Apple, Intel and NVIDIA. The model should be completely finalized by the end of this year and 100% compliant hardware will be available shortly thereafter.
Microsoft has their own hat in the ring with the DirectX-based compute shader model that is another option to map compute-intensive programs to a wide range of hardware. I would expect any upcoming DirectX physics discussion to be really based around this model.
Into the Enterprise
Much as NVIDIA brought the world of GPGPU to the enterprise with Tesla
, AMD plans to accomplish the same goal with a new set of FireStream products and partners to bring systems to the enterprise market.
Based on the same technology as the AMD Radeon HD 4870 card, the FireStream 9270 has the same compute power (1.2 TFLOPS) but features 2GB of memory and a hefty price tag of $1499.
By partnering with Aprius, AMD has built a custom system design that will allow for eight (8!!) of these cards to be installed in a single 4U rack installation that will offer up 9.6 TFLOPS of total compute performance and 16GB of high speed GDDR5 memory.
We can see that AMD is serious about its ATI Stream Computing initiative even if they were a bit later to the party than the other team. If their Avivo Video Converter program is as fast and useful as Badaboom, and yet still completely free to AMD 4000-series users, I could see that software being adopted an order of magnitude faster than NVIDIA's partnered product. The difference in amount of people will to pay $30 for a program and those will to pay $0 for one is pretty dramatic. With the majority of Adobe's CS4 software compatible with ATI Stream technology NVIDIA also loses a slight edge though Elemental's available support for Premiere Pro CS4 might sway some professional editors one way or the other.
It is these third party applications, from CyberLink and ArcSoft, that will really test the waters and see if GPGPU computing will catch on with our readers as quickly as both AMD and NVIDIA hope. What I am most afraid of is getting the same result we have with the Blu-ray/HD video playback offloading on GPUs: a fragmented group of software that only works sometimes with certain GPUs; incompatibility and competing standards is the quickest way to kill an impressive new compute model like this.
Be sure to use our pricing engine to find the best prices on NVIDIA and AMD graphics cards and anything else you might need: