20
The Cluster The Cluster Computing Project Computing Project Robert L. Tureman Robert L. Tureman Paul D. Camp Community College Paul D. Camp Community College

The Cluster Computing Project

Embed Size (px)

DESCRIPTION

The Cluster Computing Project. Robert L. Tureman Paul D. Camp Community College. Based on a Funded Grant. TITLE: Integrating Cluster Computing into the Community College Curriculum Funded in Summer 2006 by the Virginia Community College System (VCCS) Extension funded in Summer of 2009 - PowerPoint PPT Presentation

Citation preview

Page 1: The Cluster Computing Project

The Cluster Computing The Cluster Computing ProjectProject

Robert L. TuremanRobert L. Tureman

Paul D. Camp Community CollegePaul D. Camp Community College

Page 2: The Cluster Computing Project

Based on a Funded Grant Based on a Funded Grant

• TITLE: Integrating Cluster Computing into the Community College Curriculum

• Funded in Summer 2006 by the Virginia Community College System (VCCS)

• Extension funded in Summer of 2009• Implemented on the Hobbs Campus of

Paul D. Camp Community College in Suffolk, Virginia

Page 3: The Cluster Computing Project

What is Cluster Computing?What is Cluster Computing?

• Combines several machines together into one usable resource

• Uses equipment that is often called “obsolete”

• “Computer” built as if it were a network with special software to share and use resources across machines

Page 4: The Cluster Computing Project

What Software Runs the Cluster?What Software Runs the Cluster?

• Our cluster is based on Linux.• We found different versions of Linux were better

suited for different tasks.• A message passing program is used to

communicate between a main server and the client computers.– There are two choices we considered, namely Parallel

Virtual Machine (PVM) and Message Passing Interface (MPI).

• Some software is available for use of clusters, but we wrote programs to perform numerical methods problems.

Page 5: The Cluster Computing Project

Why study cluster computing at a Why study cluster computing at a Community College?Community College?

• Cluster computing projects force everyone to redefine “difficult”.

• Students work with interesting content.

• The work requires extensive study of technical material.

• The project is an excellent professional development study for faculty.

• In addition, the work adds to the excitement in the Computer Science department.

Page 6: The Cluster Computing Project

Funding the Cluster at a Community Funding the Cluster at a Community CollegeCollege

• Much of the equipment used was obsolete from the main student computing laboratories.

• Software for the cluster is Open Source and can be downloaded.

• Many books are available on the topic, however, a wealth of information is available online.

• We used the work study program and credit classes to support student work.

Page 7: The Cluster Computing Project

Researching the Cluster DesignResearching the Cluster Design

• We used online sources and a few books.• Many sources were studied, but very few were really

helpful. Implementing the project made them more clear.

• We used Google, the ACM Digital Library, bibliographies, and researcher sites.

• Research led us to experimentation, including exploiting special features in different versions of Linux.

• Early on, it became evident we would choose either PVM or MPI.– We chose PVM because it looked like we would have more

examples to follow.

Page 8: The Cluster Computing Project

Design of the ClusterDesign of the Cluster

• 14 Machines, each running Linux– 2 servers– 1 edge router– 11 client machines

• Uses a private network addressing scheme– Cluster is hidden from the outside world even when it is

connected to the Internet

• 100 Megabit Per Second Switch connecting them• PVM runs on the server and each client• Programs written for a “fully partitioned” process to

run on the set of cluster machines

Page 9: The Cluster Computing Project

Design of the ClusterDesign of the Cluster

Page 10: The Cluster Computing Project

Cluster Performance ResultsCluster Performance Results

• The final performance was 13 Gigahertz equivalent for a large problem (10 billion calculation sets).

• Cluster performance was predictable and consistent with research estimates.

Page 11: The Cluster Computing Project

Cluster Performance ResultsCluster Performance Results

Page 12: The Cluster Computing Project

Project DifficultiesProject Difficulties

• Configuring the cluster was difficult, and changes usually resulted in re-configuration.

• Programs worked better after we had developed several versions and done more study.

• Cluster startup was somewhat inconsistent.– There was a pattern, and we spent much time

studying it.– Ultimately, we decided to accept the inconsistency

and go forward, assuming it will be solved in future implementations of our cluster. The cluster worked well enough for us to complete the study.

Page 13: The Cluster Computing Project

Involving Students in the StudyInvolving Students in the Study

• As soon as we knew we would be doing the projects, students began working on it.

• S. Spargur loaded many of our initial Linux configurations.

• D. Felton worked with Linux and PVM configurations.• We described the project many times to any student who

was interested.• This year’s work study students are beginning the

process of building the next cluster with the networking content.

• The cluster is the object of discussion in several Computer Science (CSC) classes.

Page 14: The Cluster Computing Project

Including the Study in the Including the Study in the CurriculumCurriculum

• Networking content is enhanced in the introduction course (CSC 200) by – Including the hardware for the cluster– Using examples with Linux file management and tasks– Discussion of basic cluster design

• The Architecture Class (CSC 205) is enhanced by– Examining specific cluster design issues– Discussion of breaking the numeric representation boundaries in

the machine– Focus on the “future of architecture”

• Additional Studies Planned include:– A separate Linux Course– A course where students build a cluster

Page 15: The Cluster Computing Project

Project ResultsProject Results

• The Cluster performed well.• The project team learned a great deal.• Results are documented at the web site• One team member was hired as a

computing intern at the Jefferson Laboratory because of his experience in loading machines.

Page 16: The Cluster Computing Project

The 2009 ClusterThe 2009 Cluster

• Based on faster machines, but the goal was not performance

• Goal was implementation of the cluster for use in classes

• Development was much faster– Original networks in 2000-2003 took months– 2006 Cluster took about 6 weeks– Later 2006 revision was done in about 1 week– 2009 Cluster (with limited nodes) took about a week to implement

• Each time the cluster is build we use updated OS, so there is a learning curve

• We use LIVE-CDs to test hardware

Page 17: The Cluster Computing Project

Future Plans Future Plans

• Implementation of a 2012 cluster• Inclusion of MPI• Continual acceptance of “obsolete” machines and

networking equipment as they are available• Build a cluster using ITX form factors and power devices

from mini-box– This may be a single box cluster

Page 18: The Cluster Computing Project

Additional WorkAdditional Work

• Use of the cluster for non-numerical methods programming– Probably physical system simulation

• Determining how to make the cluster a part of the daily life of the department

• Linking our work to the work of scientists who use clusters

• Continued research to help improve the design and understand the tool

Page 19: The Cluster Computing Project

AcknowledgementsAcknowledgements

• VCCS Funding and Local College Support was critical to this project.

• The work of students, especially D. Felton and S. Spargur, made the project a success.

• We used many web resources, including http://www.beowulf.org/.

Page 20: The Cluster Computing Project

Visit the Project Web SiteVisit the Project Web Site

• http://www.pdcfaculty.org/rtureman/Projects/ClusterComputing2/index.htm

• The site is always under development because the work is ongoing