<< Chapter < Page | Chapter >> Page > |
Supercomputers achieve astounding speed on scientific computations by using amazing numbers of processors. The Roadrunner system at Los Alamos National Laboratory ( ) is currently the world’s fastest computer, with over 100,000 processor cores combining to reach 1 PetaFLOPS ( floating point operations per second).
Servers use multiple processors to handle many simultaneous requests in a timely manner. For example, a web server might use dozens of processors to supply hundreds of pages per second. A 64-processor server ( ) could supply an average university department’s need for computation, file systems, and other support.
Grid computing combines distributed computers (often from different organizations) into one unified system. One vision ( ) is that a scientist working at her desk in Houston can send a problem to be solved by supercomputers in Illinois and California, accessing data in other locations. Other grid computing projects, such as the World Community Grid, seek to use millions of idle PCs to solve important problems, such as searching for candidate drug designs.
Multicore chips include several processor cores on a single computer chip. Even a laptop (or other small system) that uses a multicore chip is a parallel computer. For example, the Quad-core AMD Opteron processor ( ) is one of a family of chips with 4 cores. As another example, the IBM Cell processor chips used in the Roadrunner supercomputer have 8 “Synergistic Processing Elements” (i.e. fast cores) each, plus 1 Power Processing Element (which controls the others).
Graphics processors (often called GPUs) are a special type of chip originally designed for image processing. They feature massive numbers of scalar processors to allow rendering many pixels in parallel. For example, The NVIDIA Tesla series ( ) boasts 240 processors. Such special-purpose parallel chips are the basis for accelerated computing.
In effect, all modern computing is parallel computing.
Getting the most out of a parallel computer requires finding and exploiting opportunities to do several things at once. Some examples of such opportunities in realistic computer applications might include:
Notification Switch
Would you like to follow the '2008-'09 open education cup: high performance computing' conversation and receive update notifications?