Petaflop. Sure it’s just a number, but it’s a big number. On June 10, IBM announced that its Roadrunner supercomputer reached a record-breaking one petaflop — a quadrillion floating point operations per second — using the standard Linpack benchmark. It is the first general-purpose computer to reach this milestone. The new performance record represents more than twice the computational power of the reigning TOP500 champ, Lawrence Livermore’s Blue Gene/L supercomputer.
The $120 million Roadrunner was built, tested, tuned, and benchmarked in Poughkeepsie, New York. Later this summer the 250 ton machine will be shipped to its final designation at Los Alamos National Laboratory in New Mexico, where it will be used by the National Nuclear Security Administration (NNSA) to ensure the safety and reliability of the U.S. nuclear weapons stockpile. It’s been 15 years since the last “live” nuclear weapons test, a period in which the NNSA has relied exclusively on computer simulations to test the nation’s nuclear arsenal.
“In these simulations, there is the confluence of more physics, chemistry and material science than any other scientific enterprise than I’m aware of,” says Demitri Kusnezov, director of the Office of Research, Development and Simulation at the NNSA. “It takes the largest systems to try and simulate very complex questions that the nation depends on every year. Roadrunner is our latest tool in trying to do this. It’s a monumental achievement.”
When not performing weapons simulation duties, Roadrunner will be tapped for unclassified research in astronomy, energy, human genomics, nanoelectronics, and climatology. An IBM application team has already achieved a petaflop (using single precision floating point) on a simulation code for the human brain. Some of the initial testing planned for early 2009 at Los Alamos will involve a number of open science codes. These include applications that simulate the molecular breakdown of cellulose for biofuels, supernova light curves, 3D magnetic reconnection in plasma physics, and time evolution of metallic nanowires.
Roadrunner represents a unique architecture that combines AMD dual-core Opteron processors with the new souped-up IBM Cell (PowerXCell 8i) processors. It is the Cell processors that are doing most of the heavy lifting though. The 6000+ Opterons in the compute blades contribute only 44 teraflops, while the 12,000+ Cell chips contribute 1,332 teraflops. Both numbers reflect peak performance. The sustained Linpack result is 1,026 teraflops, or just over one petaflop.
Drilling down a little, Roadrunner is made up of 17 “connect units (CUs),” each of which is a collection of 180 compute nodes. Each CU sports a 288-port InfiniBand DDR switch that routes 55 miles of optical interconnects throughout the system. A compute node is a “TriBlade,” consisting of a single 2-socket dual-core Opteron LS21 blade connected to two dual-socket QS22 Cell blades. Internally, each Opteron core is connected to one Cell chip over a dedicated PCIe link. While the node-to-node communication for the compute units is all InfiniBand, the machine employs 10GbE to talk to 2 petabytes of external storage, which is supplied by Panasas.
Because most of the compute power relies on the high-performance Cell processor, the system is quite energy efficient. According to IBM, Roadrunner draws 3.9 megawatts, and delivers 376 megaflops/watt, besting even the PowerPC-based Blue Gene/P metric of around 350 megaflops/watt. For comparison, the most energy-efficient Xeon-based supercomputer clusters deliver only about 150 megaflops/watt.
Despite the exotic hardware design, a lot of the effort for the project went into getting all the software in place to make application porting and development easy. Chief IBM Roadrunner engineer, Don Grice believes that multicore/manycore and heterogeneous computing is “the wave of the future,” at least for the next 10 years or so. But, he says, the key to unleashing this power will be developing software that is able to tap into all this processing performance.
IBM uses its internally-developed SDK as well as open source software for the Roadrunner application platform. The software model is based on standard MPI, where each MPI task makes use of one Opteron core and a Cell processor. Custom MPI implementations could presumably change that mix, depending upon the needs of specific workloads. IBM’s SDK DaCS library provides the low-level glue between the Cell and the Opteron pieces, while at the outer level, Red Hat Linux and xCAT cluster management supplies the application’s operating environment.
The ability to optimize memory flow across the system will be the critical factor in unleashing the performance from these hybrid machines. “This feels very similar to the change we made when we went from shared memory to distributed memory…,” observed Grice. “Now we have to figure out how to get around this memory bandwidth wall and heterogeneous cores.”
Grice admits that the software model they have constructed is just a start for making hybrid systems, like Roadrunner, easily programmable. When you combine multiple computing technologies (i.e., heterogeneous instruction sets, multicore processors, vector SIMD units, local memory stores, explicit DMA, on-chip CPU/memory networks, remote accelerators and cluster computing) the developer is going to need a framework that provides some level of hardware independence. For the first cut at this, IBM decided to go the library route as a relatively easy way to glue together the different binaries and help take the complexity out of the heterogeneity. Later versions could involve new programming languages and compiler/runtime technologies.
Roadrunner is part of a larger trend in which supercomputing performance has grown a thousand-fold every ten years. That’s about an order of magnitude greater than could be attributed to Moore’s Law alone. It forces HPC researchers and industry users to constantly rethink the kinds of applications that can be run on the top systems as older machines are made obsolete. The greater performance means simulations can use higher resolutions or longer time periods to develop ever more accurate models. Says Grice: “A job that would take you about a week to run on Roadrunner would have taken you 20 years to run on a machine just 10 years ago.”