Tag Archive for 'GPU'

Stream – ATI’s response to CUDA

As their alternative to CUDA  by nVidia, ATI shows Stream. Same idea but on ATI processors. The initial rections among developers seem to be rather positive. I am not much a fanboy of ATI nor nVida, but I am somehow more attracted to the Stream (although I may be a victim of the whole “open” buzzword marketing brainwashing thing)

There are differences in terms of standards used to provide access to the GPU SIMD power (extract from Stream offical FAQ):

AMD is focused on providing the tools necessary to help our customers succeed with our AMD FireStream products, and we believe the open systems approach is a critical component of this philosophy. Open systems enables AMD along with partners and 3rd party vendors to collaborate closely when developing highly integrated solutions as well as work independently when targeting a niche solution. 

AMD’s open systems philosophy includes: 

* Open IL and ISA specifications to ensure developers can optimize system performance 
* Support for AMD Brook+ along with other 3rd party high-level tools to provide a choice of familiar development environments 
* Open source Linux drivers and AMD-enhanced Brook+ enabling developers to modify and retarget tools as needed 
* AMD partnership opportunities with system vendors and integrators to deliver customer-focused solutions 

What is important is that now there is a competion and choice – this is the best wide adoption driver you could imagine. There is however a problem of CUDA/Stream compatibility – writing seprate code for nVida and ATI cards is not what we would like to do it long term. I hope that nVidia will go towards industry standards as If we want to see mass adoption, the CUDA/Stream must by as transparent to the end user as using todays CPUs.

CUDA by NVIDA – will it rock the computing world?

I always thought that this time will come sooner or later. The race for super photo-realistic gaming with dozens of FPS enabled some of us to have a real computational monsters inside our PC’s. But those big guns fired only when some app used DX10. Now NVidia gave the tools to go beyond just graphics programming. Of course some will still stay in virtual world to get the in-game physics into the higher level, but this is a great chance to go beyond.

Current GPUs are a decade ahead in means of paralleling that any CPU. Why? Graphics computing is the natural place where multiple threads are just a must. Now we are able to unleash this GFLOPs onto our desktop applications.

What is CUDA™ actually?

Lets cite the source here as they know it best:

NVIDIA CUDA™ technology is the world’s only C language environment that enables programmers and developers to write software to solve complex computational problems in a fraction of the time by tapping into the many-core parallel processing power of GPUs. With millions of CUDA-capable GPUs already deployed, thousands of software programmers are already using the free CUDA software tools to accelerate applications—from video and audio encoding to oil and gas exploration, product design, medical imaging, and scientific research.

If you got some C skills, GeForce 8xxx on board (I’m lacking both…) come on and give it a try – go ahead and visit NVIDIA’s CUDA™ zone to learn more.  You can see there that some types of computations achieved even 100x or more speed improvement.