Linux Clusters - Using Linux for Power Computing

06/15/2000

If there weren't enough reasons to use Linux in the enterprise these days -- besides the cost savings, speed, performance, and the growing list of open source applications that range from embedded applications like the TiVO personal video server though enterprise RDBMSs like DB2 and Oracle -- Linux has now firmly established itself in the rarefied air at the top of the computing world in bleeding-edge supercomputers.

Pioneered by Thomas Sterling and Donald Becker while both were at NASA's Center of Excellence in Space Data and Information Sciences (CESDIS), several of the fastest computers in the world are "parallel clusters" composed of large arrays of off-the-shelf Linux systems.

Parallel Linux clusters, better known by the name "Beowulf clusters" (after a middle-English mythic hero), are being used for weather prediction, high-energy physics, code breaking, as well as more down-to-earth applications such as data-mining, computer-generated animation, and massive multiuser games.

How are they built?

Linux clusters are, in their simplest form, a pile of machines running Linux with some specialized software that allows a program to be spread out over all of the computers in the cluster simultaneously and allows all of the computers in the cluster to be kept as close to 100 percent busy as possible all of the time.

A simple cluster can be constructed out of three Intel-based PCs connected with a 10BaseT hub and clustering software. One machine acts as the "master server" where data is stored, and the other computers act as "slave" or "compute" nodes that work on some portion of the problem being solved and return their results to the master server, where they are integrated into the final result.

More complex clusters can range from dozens of nodes up to thousands of nodes; be connected together with dozens of sophisticated network switches; and sport specialized, dedicated networks just for moving the data that keeps the compute nodes 100 percent busy. Several of these monster machines have shown up on the Top500 Supercomputer list, which represents a new achievement for Linux-based systems.