>> Wednesday, May 25, 2011
It's been a big week for GPU computing. Cray recently announced their first supercomputer with GPUs: the XK6. Mathworks announced that their new Parallel Computing Toolbox will support GPU-based applications. And the University of Michigan has developed a GPU-based version of R, the popular language for statistics.
This is major progress for GPGPU programming, but all three of these projects are exclusively based on CUDA, which only runs on Nvidia hardware. OpenCL runs on many more types of devices, but if anyone's doing anything exciting with it, they're doing a great job keeping it under their hat.
My hopes for OpenCL rest on AMD's Fusion processor, which should be released in the next month or so. I think this will spur interest in OpenCL, but Nvidia has already worked hard to position itself as the GPU vendor for high-performance computing. It will be hard for the Khronos Group to convince people otherwise.
The Fusion embodies a revolution in computing, but AMD isn't getting the word out. I always wonder what might have happened if Intel had developed the Fusion instead. We'd be bombarded with commercials and advertisements and sales pitches. We'd see engineers dancing in their pastel bunny suits as they made chips, and what would they be dancing to? Fusion, of course.
My favorite piece of Intel marketing came around in 1996. After making minor improvements to the Pentium P5, they released an updated device that supported additional instructions for vector computing. No existing software could execute these instructions, but that didn't bother Intel. They called the new device Pentium with MMX, and it was a huge success. I mean, who wants a vanilla Pentium when you can have a Pentium with MMX? The acronym (as I understood it) stood for MultiMedia eXtension, but it didn't matter. It was so catchy that people upgraded from Pentiums to Pentiums/MMX just because of the name.