This how-to guide provides step-by-step instructions for building a Beowulf-type computer, including the physical elements that make up a clustered PC, the software required, and insights on how to organize the code to exploit parallelism.
Use of Beowulf clusters (collections of off-the-shelf commodity computers programmed to act in concert resulting in super-computer performance at a fraction of the cost) has spread far and wide in the computational science community. Many application groups are assembling and operating their own private supercomputers rather than relying on centralized computing centers. Such clusters are used in climate modeling, computational biology, astrophysics, and materials science, as well as non-traditional areas such as financial modeling and entertainment. Much of this new popularity can be attributed to the growth of the open-source movement.
The second edition of Beowulf Cluster Computing with Linux has been completely updated; all three stand-alone sections have important new material. The introductory material in the first part now includes a new chapter giving an overview of the book and background on cluster-specific issues, including why and how to choose a cluster, as well as new chapters on cluster initialization systems (including ROCKS and OSCAR) and on network setup and tuning. The information on parallel programming in the second part now includes chapters on basic parallel programming and available libraries and programs for clusters. The third and largest part of the book, which describes software infrastructure and tools for managing cluster resources, has new material on cluster management and on the Scyld system.
About the Editors
William Groop is an Associate Division Director and Senior Computer Scientist and Ewing Lusk is Senior Computer Scientist, MCS Division, both at Argonne National Laboratory. Thom Sterling is Senior Staff Scientist in the High Performance Computing Systems Group at he Jet Propulsion Laboratory.