Pre-AMD, ATI preps novel server charge
GPGPU for U and me
Even before its merger with AMD closes, ATI plans to charge the server market with a new type of graphics product that could shake up the high performance computing scene. Advocates of ATI's technology say it could create a lucrative new revenue stream for the company and add some weight to the ATI/AMD marriage.
ATI has invited reporters to a Sept. 29 event in San Francisco at which it will reveal "a new class of processing known as Stream Computing." The company has refused to divulge much more about the event other than the vague "stream computing" reference. The Register, however, has learned that a product called FireStream will likely be the star of the show.
The FireStream product marks ATI's most concerted effort to date in the world of GPGPUs or general purpose graphics processor units. Ignore the acronym hell for a moment because this gear is simple to understand. GPGPU backers just want to take graphics chips from the likes of ATI and Nvidia and tweak them to handle software that normally runs on mainstream server and desktop processors.
The GPGPU concept isn't new, but for the first time, hardware and software companies have matured to the point where they can make the technology live up to its promise. And what a promise it is.
The enormous horsepower delivered by ATI and Nvidia's graphics gear could facilitate 10x to 30x performance gains on a fairly wide variety of software loads typically handled by standard processors. Such a performance boost would be of major interest to big spenders in the government lab, oil and gas and bio-tech industries who want all the juice they can get. Even better, the GPGPU products should prove both cost effective and power efficient when compared to current processor options.
"There's this whole change going on right now," said Mike Houston, a PhD student at Stanford's Graphics Lab. "Now, there are companies doing this stuff for real. And, more importantly, there are big businesses that will buy their stuff."
Researchers at Stanford, the University of North Carolina and the University of Waterloo are just some of the folks who have hammered away at the software problems around GPGPUs for years. The computer science crowd has worked with - and in some cases convinced - ATI and Nvidia to open up their hardware and programming interfaces to make it easier to run common software on the GPUs. The University of Waterloo, for example, has a programming language called SH to ease the software translation process, while Stanford has Brook.
A company called RapidMind - formerly Serious Hack - commercialized SH in 2004. At the SIGGRAPH conference this year, RapidMind showed off its software working on the Cell processor developed by IBM, Toshiba and Sony.
PeakStream, another company going after this market, came out of stealth mode this week with a software programming platform meant to make it easier for developers to push code onto GPUs, multi-core processors and the Cell chip. The company turned to Stanford's Brook for inspiration and basically provides a type of shim that goes between a GPU and applications.
Researchers have zeroed in on products such as FPGAs, GPUs and the Cell chip because of their potential to speed up demanding floating-point operations. Most of the action right now has centered around software that relies on what's known as single precision floating point calculations. We're talking about horsepower hungry code for things such as medical imaging, computational fluid dynamics and seismic modeling.
As it turns, some of the biggest spenders in the hardware world use tons of floating-point heavy software. So, the software middlemen along with companies such as ATI and Nvidia could make serious profits if they're able to deliver on the GPGPU potential.
Of course, the software problem is not an easy hurdle to clear.
Up to now, developers have mostly focused on single-core server processors from IBM, Sun Microsystems, HP, Intel and AMD. Savvy types in the Unix world have written lots of multi-threaded software to spread work across large servers with tens and even hundreds of chips. Multi-threaded software has become even more important in recent years with chip makers producing dual-core, four-core and even eight-core chips.
The GPGPU world presents new challenges.