Thursday, May 22, 2008

CUDA Shouda Woulda

Nvidia is known as the leading graphic chip (GPU) company. Their chips are in high performance PCs and video game cards. The complexity of a GPU surpassed the Intel Pentium processor several years ago. Today's Intel chips have two cores soon going to four. Nvidia GeForce8 GPUs have 128 stream processor cores running at clock rates exceeding 1GHZ. Nvidia has recently created an open programming environment to allow 3rd party development for new applications. This platform, named CUDA, for Compute Unified Device Architecture, is available for free from the Nvidia website accompanied by with numerous application notes and benchmarks.

CUDA solutions will soon move into the SuperComputer domain like approaches based on IBM Cell, Intel Pentium and AMD Operon. IBM expects to regain the spot of the Top 500 when they attain PetaFlop performance on LinPack benchmarks in the next few days. (One peta equals a quadrillion, or one million billion). According to EE Times, May 12, 2008, the IBM solution is based on 12,000 Processors and consumes 4MegaWatts.

Stanford has a program for configuring a compute cloud from individual PS3s (like the SETI program). These solutions offer a potentially higher parallelism (think of 1 million Sony PS3 crunching the same problem), but inter-node communication is limited to DSL/Cable Modem bandwidths. The IBM supercomputer bandwidth is ~1 billion times higher.

The next milestone after Peta is Exa, one billion billion floating point calculations per second. That threshold could be reach in four years. It would be like everybody on the planet using a Pentium CoreDuo computer to crunch the same problem. How about World Peace for a start?

No comments: