Curtis R. Nielson and Professor C. Richard G. Helps, Electronics and Information Technology
A supercomputer may be defined as a computer that leads the world in processing capacity, particularly in terms of calculation speed. Historically, the processing power of a supercomputer has been reserved for government or scientific research agencies; however, advances in computing technology have made the supercomputer an obtainable tool for academia. The Information Age has generated enormous amounts of data, which often require the processing capacity of a supercomputer for proper analysis. Modern supercomputers are well equipped to handle the demands of most data manipulations, but their cost is usually in the millions. A supercomputer design growing in popularity is Clustered Computing. Clustered Computing produces supercomputer capabilities by networking the processing power of inexpensive, off-the- shelf computer components. One of the most affordable Clustered Computing implementations is known as a Beowulf cluster. The intent of this research is to build and analyze the performance of Beowulf clusters and identify potential applications for Beowulf clusters in higher education.
A Beowulf cluster consists of a master computer that controls the operation of the cluster and one or more slave computers, or “nodes”, interconnected by networking hardware. The master computer controls the slave nodes’ resources (memory, CPU cycles, etc) by transmitting messages over the network. The economic advantage of a Beowulf cluster is that the master computer and the slave nodes may be inexpensive personal computers running free software, such as Linux, instead of the expensive, specialized hardware and software typical of other supercomputer architectures. A Beowulf cluster may be developed using older computers as they are replaced by faster and better systems. Software for a Beowulf cluster can be downloaded from the Internet without cost.
Three Beowulf clusters were built and tested during this research. Each cluster included a master computer and two, four, or six slave nodes. The master computer was an 800MHz Pentium III with 384MB of RAM. Each slave node was a 300MHz Pentium II with 128MB of RAM. The Beowulf software packages used during the research were Scyld’s Beowulf Scalable Computing and O’Reilly’s Building Linux Clusters. Both software packages are based on the open source operating system Red Hat 6.2.
One important step in analyzing the performance of a Beowulf cluster is to identify the parts of the system that slow it down the most, also known as bottlenecks. The first bottleneck was identified while attempting to install the slave nodes over the network. Multiple message collisions were reported by the master computer when installing more than one slave node over a 10 Mbit network hub. Replacing the hub with a 10/100 Mbit switch removed the message collisions and two slave nodes were installed simultaneously. Attempts to install more than two nodes over the network required all of the master computer’s available memory. Installing multiple nodes also indicated that the network was functioning beyond its rated capacity. Another bottleneck in the system is the master computer’s memory. The master computer’s memory was increased and the installation speed of two simultaneous nodes improved, but high demands on the network continued to limit the installation of cluster nodes to two at a time.
Once the Beowulf clusters were fully installed, their performance was compared to the performance of the master computer without the slave nodes. Compared to the master computer the 2-node Beowulf cluster averaged 93% of the master computer’s performance. This indicates that dividing tasks between machines does not always improve performance. The poor performance of the 2-node cluster also indicates that the network played a role in slowing down the system. The 4-node cluster produced better results, but was not nearly twice the speed of the 2-node cluster as expected. The 4-node cluster was able to produce 167% of the processing power of the master computer. The 6-node cluster produced 212%. It is uncertain at this time how many factors affect a cluster’s performance, but it is certain that the network speed of a cluster is a major factor. Further research has indicated that commercial Beowulf clusters are rarely built without a high-speed network. Current high-speed networks include Gigabit and Fast Ethernet. Both of these network architectures are considerably more expensive than the networking equipment available for this project. Even with a slow network, it is clear that a properly configured Beowulf cluster may be constructed from older computers to produce significant processing capabilities.
Not all institutions of higher education have the funding to purchase a high-end supercomputer, but it is doubtful that there are schools that do not have used desktop computers. These computers have the potential to provide educational opportunities to students who would not otherwise have access to supercomputing capabilities. Beowulf clusters are currently used in academia by universities, colleges, and high schools including Indiana University, Duke University, Harvey Mudd College, Calvin College, Clinton High School in Michigan, and Wayne City High School in Illinois. Beowulf clusters are being used for graphic design, molecular and genetic modeling, and other applications that normally require an expensive supercomputer.
This research has demonstrated the potential of Beowulf clusters in academia. One point not identified was a method of predicting the processing capacity of a Beowulf cluster before it is actually built. It should be theoretically possible to predict the abilities of a Beowulf cluster if the hardware and software characteristics are known before the cluster is built. Having such a method of measurement would enable a school to identify how powerful the cluster would be using equipment they already have. If the cluster is not powerful enough, this method should also be able to identify the additional equipment required to achieve the processing power desired. Research to determine this method will continue during a future graduate program.