The rise and rise of the GPGPUs

Francis Wray, Concertant

It all started as a game! The emergence of computer gaming has been one of the defining social phenomena of the last thirty years. The transition from Space Invaders to photo-realistic action games has both captivated generations and driven a break-neck pace of innovation within the computer industry.

The rapidly evolving home computers of the 1970s and 80s allowed their owners to program simple games. User groups for the new computers soon formed and game software started to be published. At about the same time games consoles appeared where specialist devices were hardcoded with games. Both PCs and consoles have been used for gaming ever since: the former offering flexibility of use and the latter offering high performance at a lower cost.

The high demand for computer gaming has been a continuous driver of innovation. In the 80s VGA colour graphics appeared in IBM PC compatible systems. Sound cards such as those from Creative Labs, although developed at the end of that decade, only dropped in price and came into widespread use in the 90s. This decade also saw increasing power and decreasing cost in microprocessors such as the Intel 80386 and the Motorola 68030. With these came the development of 3D graphics. But this still wasn't enough!

The NVIDIA NV1 was a multimedia PCI card released in 1995. It featured a complete 2D/3D graphics core, an integrated sound card and a joypad port. It was positioned to replace the 2D graphics card, Sound Blaster-compatible audio solutions, and joystick ports used in IBM PC compatibles. Launched on August 31, 1999, the GeForce 256 (NV10) was the first PC graphics chip with hardware transform, lighting, and shading. Based on the GT200 graphics processor comprising 1.4 Billion transistors, the GTX 200 series was launched in June 2008. The GT200 has a single-precision performance of 1 Tflops. In just over a decade and a few generations of hardware, GPGPUs have evolved from relatively simple shading engines into desktop supercomputers that not only support photo-realistic gaming, but which are now having a profound effect on scientific and general purpose computing. GPGPUs are much more that graphics devices and through the CUDA API can be used as highly programmable number crunching systems. Significant use of GPGPUs for numerically intensive computations is now being made by a range of communities

Driven by the impact of NVIDIA on numerically intensive computing, both AMD and Intel have developed or announced products, drawing on the architectural innovations of GPGPUs. AMD have Firestream in production. Intel have announced Larrabee. These will compete head on with NVIDIA products in the high-performance attached processor area. All these devices will have performances in excess of 1 Tflops and price tags of less than $1,000. This is going to stimulate a competitive battle royal where the user will see falling prices and rising performance on a scale not experienced before. Monday's announcement of OpenCL, a common API for programming GPGPUs, involving NVIDIA, AMD and Intel does not herald an uneasy peace between these manufacturers. Rather it presages the start of hostilities. It's going to be an exciting year or so.