2009 top underreported technology stories:4. GPU computing: Graphics accelerators aid mainstream, even business, PCs
Adding a discrete graphics card to an enterprise PC seems awfully silly. After all, why support the game-playing habits of your users, right? Not so fast, says Nathan Brookwood, a principal analyst at Insight64. "Performance-constrained applications will be taking advantage of the GPU for operations that have nothing to do with graphics," he says.
The longtime chip analyst is referring to a quietly emerging technology known as GPU computing. While a typical CPU has two to six cores, graphics processing units may have hundreds crunching away at numerical calculations. Single-core CPUs were basically designed to tackle one problem and move onto the next problem, and software for those chips has been designed accordingly. By contrast, GPUs break up a problem into very small bits and process it in parallel with other problems at a very high rate of speed.
Generally, GPUs are used for games and other graphics-intensive applications. But given their power -- discrete graphics processors can deliver up to a teraflop (1 trillion calculations per second) of computing power from the same silicon area as a comparable microprocessor -- why not let them do other things?
Indeed, they already are. Brookwood notes that moving and converting a video file on a Windows 7 machine is excruciatingly slow. It might take 30 minutes to move a 30-minute file. But with the aid of a garden-variety GPU from Nvidia or ATI, the operation speeds up by three to five times.
Not surprisingly, there is a catch of sorts. Only applications that have a substantial amount of parallelism can benefit from GPUs. GPUs also require a fresh approach to programming. The programming model used on GPUs is different from the conventional serial processor programming model, according to the National Center for Supercomputing Apps. (Read NCSA's take on GPU computing.)
Even so, some existing applications can take advantage of the GPU's power. They include drag-and-drop transcoding (changing the format of a file), face tagging for photo management, video upscaling for improved DVD viewing, and faster video editing, says Brookwood.
Meanwhile, the new OpenCL standard makes parallel programming easier and less proprietary. Windows 7 supports it, as do Linux and Apple's Snow Leopard. Apple's Grand Central Dispatch technology (now open source) allows programmers to distribute workloads across multicore CPUs and GPUs.
Nvidia and AMD, which owns ATI, see GPU computing as a great marketing tool and are (no surprise) hyping it rather hard. But puffery aside, this is a technology to watch and give you pause before you say no to putting PCs equipped with discrete graphics processors on company desks.