CSCI 598 Project:
Mini-Beowulf

Separator.gif (1602 bytes)
 
Project Type and Status:
Research and Development, Fulfillment of Class Credit for CSCI 598

Proposer and Student:
John K. Joachim
Supervisor/Advisor:
Omran Bukhres, Computer Science Dept., Indiana University - Purdue University of Indianapolis (IUPUI)

Description:

The goal of this project was to build a super-computer using commodity computer components. Computer Scientists were able to take ordinary Intel x86 processor based computers and Ethernet them together. Using the Linux Operating System (a free software, POSIX compliant implementation of UNIX) and additional software (specifically Parallel Virtual Machine (PVM) and Message Passing Interface (MPI)), they created a computer which operated as one supercomputer (not as a network). Their success was quickly followed by other projects both within other NASA departments, and at various universities. Noted early examples include the supercomputer at Los Alamos National Laboratory (LOKI - see http://loki-www.lanl.gov/ 16 Nodes) and one at Caltech. (see http://www.cacr.caltech.edu/research/beowulf/ 114 Nodes!)

The first Beowulf was created in the summer of 1994 at the Center of Excellence and Information Sciences (CESDIS) at the NASA Goddard Space Center in Maryland. (see http://www.beowulf.org/).

The typical Beowulf consists of between 16 and 32 nodes of the fastest .x86 computers which were available at the time. The typical cost was $50 000 which is orders of magnitude cheaper than other supercomputers such as the IBM SP-2 and with comparable results in terms of Gigaflops) The same Beowulfs only two years later would cost abou $25 000.

My project proposal is to build a mini-beowulf consisting of 7 to 8 nodes (estimated cost to date: $846.28).
 
 
 
 

The project would consist of three parts.

Part 1. This part consists of acquiring the equipment, configuring and optimizing it. Software configuration of parallel machines is not a trivial task, but NASA has used the Linux model of software development and made their implementations of PVM and MPI freely available and distributable. Building on this foundation and that of others such as LOKI should facilliate the completion of this part. (completed 9/18/99)

Part 2. This part is related to part 3. The goal here to to use and extend benchmarking software to compare the performance of my machine with that of (a) an ordinary PC, (b) a Silicon Graphics Machine and (c) IUPUI's 4 processor Silicon Graphics parallel machine. The results would be expressed as both a pure performance analysis and as a cost/performance measurement.  (tentative completion: 10/29/99)

Part 3 is to take a computationally intensive algorithm, adapt it to the use of my parallel machine and demonstrate its use.  A presentation will be schedueled, pending the completion of this project. Also to be completed for this project is an annotated blibliography pertaining to parallel computing. (tentative completion: 11/18/99)

Part 4 (not officially a part of this project, but will likely be executed nonetheless): Estimation of optimal performance upon the addition of two more CPU's, and then benchmarking the performance. (to be executed at the IUPUI Autum Plug-Fest, 11/20/99)
 
 

Support for this project has been found. Before my project was proposed, John Levay of the Computing and Communications Services was already thinking of employing a Beowulf to meet the computing needs of the chemists and physicsts at Indiana University (Bloomington). He has generously offered me the use of his computer room at IUPUI and enough equipment to create a mini-beowulf of eight computers with a real ethernet switch for the purposes of doing a "proof of concept". The use of a real ethernet switch is especially important, as the communication between nodes is one of the bottlenecks in a parallel computer.

Thanks also to my Employer, Telamon Corporation, for providing very inexpensive computer systems for use in this project

Separator.gif (1602 bytes)

 
1