The "what" and the "why"

Aug 7, 2007 15:14 GMT  ·  By

The entire computer manufacturing industry floats on an almost endless sea of acronyms that users learned to embrace and use when talking about various technologies and hardware parts. One of the latest acronyms to surface is the GPGPU and before too long users will meet it on an every day basis as it reflects the current technological trends in the industry.

While a modern central processing unit, processor for short, or CPU for the acronym lovers, is a clever designed piece of silicon that must be able to resolve a huge class of problems, the GPU, the graphical processing unit, sometimes referred to as a graphics or video chip is a processor that has been constructed and optimized to address only a small fraction of computing problems. The GPU is only interested in displaying related work and it can perform those tasks much more faster than a general use processor as it has a number of very specialized technologies available. Once upon a time a graphics chip was designed to do only one thing: render a 3D scene as fast as possible using a given quality preset. As they evolved and became more and more powerful, GPUs can now address other problems as well (see Nvidia's CUDA technology). So, the General Purpose computation on GPUs, or GPGPU for short concept was born.

It is based on the fact that every computing task that can be broken down in repetitive algorithms can be sent to a graphics chip to process, freeing the main processor and letting it address other problems, overall increasing the performance of the system. The most suited for processing on a graphics chip are function like physics calculation, scientific modeling, financial forecasting and other intensive data-processing tasks.

Among the first users of this concept were the engineers from ATI with their Stream Computing initiative that led the way to the large scale usage of graphics chips in the processing of proteins assemblies. GPGPU is not an entirely ATI concept or invention as Nvidia-made chips can perform these functions equally well, while Intel is still only at the beginning of the road with its integrated graphics chips.

Among the GPGPU capable ATI and Nvidia chips there are those of the latter generation like the GeForce 8800 and Radeon X1000 and HD 2000s, but older chips can too be used but as they are slower don't hold your breath waiting for results. Unlike the processors that are capable only of a limited degree of parallelism, being able to execute a few SIMD instructions per clock cycle, the latest graphics chips can process hundreds. This feature is hardware implemented in all newer video chips and it is related to the fact that such a chip is made up by many identical processing units like the pixel shading units. For example, ATI's Radeon X1900 chip has 48 such units, while the GeForce 8800 numbers 128, so their parallel processing capabilities are very high.