|
Department of Electrical and Computer
Engineering |
|
|
ECE496Y
Final Report “Building computer
clusters using surplus computer systems” Project # 1442000 |
|
|
Prepared
by: |
Davison Avery
<davery@aquezada.com> David Cheung
<cheungd@sympatico.ca> Julian Dunn
<jdunn@aquezada.com> Edward Son
<son@ophelia.aquezada.com> |
|
Supervisors: |
Prof. Raymond Kwong Prof. Angelos Bilas |
|
Project
Coordinator: |
R. Gillett |
|
Section
Number: |
4 |
|
Date: |
April
11, 2001 |
In this report we describe the results of an eight-month long project whose objective was to build a distributed computing cluster out of a collection of obsolete Sun SPARCstation computers owned by the Department of Electrical and Computer Engineering at the University of Toronto. We begin by outlining the contributions of each group member to the project, as well as both our original and revised schedules. We then give a condensed summary (from our original technical proposal) of the paradigms of cluster computing with reference to some of the published literature on the topic. This is followed by detailed information about each of the software packages we tested, the qualitative and quantitative results obtained from those tests, and a description of the methodology used for obtaining those results. We end by giving specific suggestions for the use of these machines, as well as ideas for future research. In particular, we see the need to develop a systematic methodology for performance testing of cluster computers, and we outline how our results from the performance testing of the Beowulf cluster could be used as the foundation to develop such a methodology.
I contributed to this project with my research into Transparent Parallel Computing (TPC), and then further with TPC application and benchmark surveys. After this phase of the project was completed, I assisted in the operating system, software installation and configuration for the LVS package. I assisted in the evaluation of the Webstone data collection and final analysis. I also assisted in the evaluation of the LHA package.
I participated in the Oral Presentation preparation and delivery. After this, the MPV Package Evaluation phase was started, where I assisted in the installation and configuration of the operating system for the Beowulf cluster. I installed the PVM libraries and setup the PVM environment, after which I assisted to install our PVM benchmarking application.
During the course of the project, my major responsibilities were set up and testing for the High-Availability Linux Project (LHA), building a regression model to assess the performance of our IPC Beowulf cluster, and research on initial benchmark, WebStone. In this report, I am responsible for the LHA and the Performance Assessment of Beowulf Cluster chapters and its Appendices.
During the month of January and February, I concentrated on setting up and testing the various features of LHA. This process was rather straightforward.
During the month of March, I had been working on assessing the performance of our Beowulf cluster. After my colleagues have successfully set up the Beowulf cluster and installed the required components, I started my assessment process. My plan was to generate thirty data points with a few different configurations; due to our limited resources, I decided to perform the rendering with a Beowulf cluster with SPARC IPC workstations only, and a Beowulf cluster with a SPARC Classic as the dispatcher and SPARC IPC workstations as internal nodes. Then, regression models are created for both of the configurations, and I was able to come up with the following hypothesis:
The performance of a Beowulf Cluster is inversely related to the number of nodes in the Beowulf cluster.
I
contributed to the project in many different areas, but my primary role was as
the architecture/infrastructure support person. Since I have substantial
systems administration experience, I assisted with the hardware and software
setup during the various phases of the project.
Early
in the project it became evident that we would need more than one machine for
support purposes. As such, I decided to assemble a group of support machines,
each of which would have a small number of roles. Their setup and roles will be
detailed later on in the report, but I was responsible for setting up the
machines named fs, vader, metaxa and muon. The first three were support
machines, and muon was a machine we used
as our Beowulf dispatcher. I maintained the machines throughout the life of the
project.
I
helped with setting up some of the Linux installations on our cluster machines
(the IPCs), as well as helping in the various ways with the different projects:
Linux
Virtual Servers: Set up Apache web server on cluster machines, and performed runs
of Webstone benchmarking program.
Beowulf: Compiled POV-Ray
benchmark on orpheus, our baseline test
machine. Collected results from uniprocessor POV-Ray runs on orpheus. Assisted
Davison and David with setup of multiprocesor PVM-POV on cluster, particularly
with set up of X terminal display for poster presentation demo.
My contributions to the design project involved both background support, setup of applications and hardware, and installation of operating systems. I also played a large role in terms of documentation and public relations. Specifically, I was partly responsible for compiling and editing the technical proposal, final report, poster board, and the presentations that our group ran. I also composed different versions of our technical proposal for various paper competitions, the Ontario Engineering Competition and the Canadian Conference of Electrical and Computer Engineers.
· Researched applications and benchmarks that could be implemented on our cluster
· Assisted David with the hardware configuration survey
· Assisted Julian with the test machine(s) setup
· Acquired Solaris operating system CDs from Peter Pereira
· Acquired Design Centre Space and Cabinets from Norm Baccari
· Performed some Linux operating system installations
· Assisted in the setup and installation of Beowulf software
· Assisted in the installation of PVM/MPI libraries
· Assisted in setting up POV-Ray for the Beowulf cluster
· Installed Solaris operating system
· Assisted with setup of cluster for EnFuzion
· Performed EnFuzion application setup
The
following table will describe each team member’s contributions to this report.
|
Team Member |
Contribution |
|
Davison Avery |
·
Wrote
Section 8.2: LVS ·
Co-wrote
Section 8.4: Beowulf ·
Wrote
Appendix A |
|
David Cheung |
·
Wrote
Section 8.3: LHA ·
Co-wrote
Section 8.4: Beowulf ·
Wrote
Appendices B & C |
|
Julian Dunn |
·
Wrote
Executive Summary ·
Wrote
Section 8.1: Infrastructure ·
Co-wrote
Conclusions ·
Wrote
Appendix D |
|
Edward Son |
· Wrote Introduction · Wrote Section 8.5: EnFuzion ·
Co-wrote Conclusions ·
Wrote References |
Because
it may be difficult to discern from the following Gantt chart the
responsibilities of each group member, we summarize them in point form here as
well, sorted by group member.
Davison
Avery:
Parallel package, application and benchmark research. Operating system and
package setup for transparently parallel cluster software (e.g. Linux Virtual
Servers). Assist with setup of Beowulf Linux.
David
Cheung:
Hardware configuration survey. Installation of operating system and test suite
for some transparently parallel software (e.g. Linux High Availability).
Performance testing of Beowulf cluster.
Julian
Dunn:
Operating system selection, installation and support. Hardware requirements
research, setup of test machine(s). Benchmark setup for Parallel Virtual
Machine (PVM) data-gathering.
Edward
Son:
Assist with hardware configuration and test machine setup. Setup of some PVM
packages. Beowulf performance testing.
Gantt Chart: Old Milestones

Thanks
to:
2.2.1 High-Availability Linux Project
2.2.2 Performance Assessment of Beowulf Cluster
2.3.1 Setup of Support Machines