NVIDIA just released its GPGPU technology i.e. the infrastructure for performing general purpose computing on its graphics cards, for Mac OS X. This technology is called “Compute Unified Device Architecture” or simply CUDA and it essentially provides a programmer with a C-compiler that creates executables that run on their GPUs.
CUDA also includes some common optimized libraries like BLAS and FFT and sample code that would help one get started. There is a lot more information and resources available on the NVIDIA CUDA website. CUDA has been available on Windows and Linux for some time, but it was just released for Mac OS X. It supports the MacBook Pro with 256MB NVIDIA GeForce 8600M GT and Mac Pro with either NVIDIA Quadro FX5600 or GeForce 8800 GT. Also, one needs the most current update to Leopard installed i.e. 10.5.2.
There are several applications that use GPU based optimizations, including some very familiar ones, for example: Folding@Home. GPGPU computing is a new trend in scientific computing that leverages the fact that graphics processor performance is increasing at a much higher rate than standard processors. We have discussed this upcoming trend before on MacResearch and hoped for OS X support. And now, we have it! I hope to write more about CUDA once I have had a chance to give it serious try.
In a similar spirit is the design of the Cell processor that powers the PlayStation 3. In many ways, the Cell is sort of like the middle ground between the traditional CPU and GPU, offering advantages of both. And I have experimented with the Cell quite thoroughly over the past year, oftenreporting in detail at MacResearch.