An attempt to transform a motley collection of laptops into the first ad-hoc supercomputer is about to go ahead, thanks to software written at the University of San Francisco.
On Saturday 3 April, over 1000 laptop owners will converge on the university gym in an attempt to build a 鈥渇lash mob鈥 supercomputer. The project鈥檚 organisers hope that FlashMob will run fast enough to beat supercomputers in the list of the world鈥檚 top 500 supercomputers.
鈥淲e are attempting to popularise supercomputing,鈥 says John Witchel, the USF graduate student running the project. 鈥淥rdinary individuals, people with good ideas will now be empowered to put a flash mob together to solve a specific problem.鈥
Advertisement
The majority of the supercomputers in the top 500 are billion-dollar custom-made machines, available only to governments and researchers at top institutions. In contrast, FlashMob鈥檚 only costs are 1000 CDs containing the software and cables to wire the laptops together over a local area network (LAN).
Tightly coupled
A supercomputer is an array of processors that work in parallel to solve a computationally challenging problem. Examples include modelling weather systems to improve forecasts and global warming predictions, protein folding to discover new drugs or oil flow through the Earth to locate oil fields.
The processors鈥 memories must be 鈥渢ightly coupled鈥 so that each one can update itself continuously according to its peers鈥 calculations. Ordinary LANs used in offices and homes allow computers to share saved files of about 3 megabytes in size. But a supercomputer requires processors to share hundreds of megabytes a second, so FlashMob will require some clever software.
Researchers at Virginia Tech wrote software to link a 1100-strong cluster of identical off-the-shelf Apple computers in October 2003, and 鈥淏ig Mac鈥 subsequently entered the top 500.
But Witchel and his colleagues have an additional problem: 鈥淵ou essentially don鈥檛 know anything about the computers until they show they up that day.鈥 The team therefore had to write code that not only allows the computers to share lots of data quickly, but also determines each processor鈥檚 speed and memory as it goes. This allows the computational tasks to be allocated in the most efficient way possible.
Floating point
To beat the slowest computer in the top 500, FlashMob will have to perform a rigorous mathematical calculation called Linpack at a rate of at least 403 billion flops (floating point operations per second).
Because nothing like FlashMob has ever been attempted, it is not clear how the project will fare.
鈥淚f just one of those computers fails or loses power 鈥 the whole computation will be lost,鈥 says Jack Dongarra of the University of Tennessee, who is responsible for maintaining the top 500 list. 鈥淭hat鈥檚 a tremendous challenge 鈥 I don鈥檛 know that they can do it to be honest.鈥
Even if Flashmob does not perform on Saturday, Witchel say it is only a matter of time before people start using ad-hoc arrays to solve tough computational problems. The software has been posted online, so anyone could in theory assemble their own flash mob at any time.