An Introduction to PC Clusters for High Performance Computing

The halcyon days of specialized supercomputers—built and acquired at any cost to deliver orders of magnitude greater floating-point performance than contemporary mainframes on grand-challenge (often defense-related) applications—are rapidly diminishing into the past along with the Cold War to be replaced by a more pragmatic cost-constrained reality that today permeates the community of high performance computing. Once the stars and vanguard of advanced computing, in appearance at least, supercomputers have been eclipsed by an Internetenabled Web-driven future of opportunity and challenge. High-end computing has been perceived as having become just too hard, too expensive, and of too narrow interest to justify a self-sustained industry. Yet, despite statements to the contrary by a number of authority figures, performance or capability computing is important and in fact may matter very much. In no uncertain way, the futures of many of the pathfinding fields that will determine the evolution of civilization throughout this new century will themselves be determined in their contributions by the degree to which they exploit the possibilities of trans-teraflops (even petaflops) scale computation. Energy (including controlled fusion), medical science and molecular biology (including genetic engineering), space exploitation and cosmology, climate, and Earth science, materials (including semiconductors and composites), machine intelligence, and robotics, financial modeling and commerce, and information communication and human-machine interface will all be governed in their rate of progress and degree of impact on human culture by the magnitude of computational performance they are able to engage. In fact, many of the strategic problems that plague our planet and species may only be solved through our ability to harness the most powerful computing engines possible and the capabilities of those machines. Unfortunately, the market value of such extreme performance systems appears to be, in the short term at least, well below that required to justify industry investment in the development of these specialty class supercomputer architectures. Fortunately, this conflict between the requirements for high performance and the availability of resources needed to provide it is being addressed through an innovative synergy of some old ideas from the parallel computing community and some new low-cost technologies from the consumer digital electronics industry. The legacy concepts are the physical clustering of generalpurpose hardware resources and the abstract message-