Teaching Parallel Computing using Beowulf Clusters: A Laboratory Approach Phil Prins Seattle Pacific University October 8, 2004

Slides:



Advertisements
Similar presentations
Secure Operating Systems Lesson 2: OS Fundamentals.
Advertisements

2. Computer Clusters for Scalable Parallel Computing
Beowulf Supercomputer System Lee, Jung won CS843.
SUPERCOMPUTER TO THE RESCUE Justin Curry EKU, Dept. of Technology, CEN/CET)
Software Engineering 1. Introduction 2. Course schedule.
Types of Parallel Computers
NSF/TCPP Early Adopter Experience at Jackson State University Computer Science Department.
Information Technology Center Introduction to High Performance Computing at KFUPM.
Linux Clustering A way to supercomputing. What is Cluster? A group of individual computers bundled together using hardware and software in order to make.
Presented by: Yash Gurung, ICFAI UNIVERSITY.Sikkim BUILDING of 3 R'sCLUSTER PARALLEL COMPUTER.
SHARCNET. Multicomputer Systems r A multicomputer system comprises of a number of independent machines linked by an interconnection network. r Each computer.
Lincoln University Canterbury New Zealand Evaluating the Parallel Performance of a Heterogeneous System Elizabeth Post Hendrik Goosen formerly of Department.
A Comparative Study of Network Protocols & Interconnect for Cluster Computing Performance Evaluation of Fast Ethernet, Gigabit Ethernet and Myrinet.
"Practical Considerations in Building Beowulf Clusters" Lessons from Experience and Future Directions Arch Davis (GS*69) Davis Systems Engineering.
Comparative Study of Beowulf Clusters and Windows 2000 Clusters By Seshendranath Pitcha.
Linux clustering Morris Law, IT Coordinator, Science Faculty, Hong Kong Baptist University.
Cluster Computing. References HA Linux Project – Sys Admin – Load Balancing.
Cluster Computing Slides by: Kale Law. Cluster Computing Definition Uses Advantages Design Types of Clusters Connection Types Physical Cluster Interconnects.
1b.1 Types of Parallel Computers Two principal approaches: Shared memory multiprocessor Distributed memory multicomputer ITCS 4/5145 Parallel Programming,
CLUSTER COMPUTING Prepared by: Kalpesh Sindha (ITSNS)
Lecture 1 Page 1 CS 111 Summer 2015 Introduction CS 111 Operating System Principles.
Computing Labs CL5 / CL6 Multi-/Many-Core Programming with Intel Xeon Phi Coprocessors Rogério Iope São Paulo State University (UNESP)
CLUSTER COMPUTING STIMI K.O. ROLL NO:53 MCA B-5. INTRODUCTION  A computer cluster is a group of tightly coupled computers that work together closely.
1b.1 Types of Parallel Computers Two principal approaches: Shared memory multiprocessor Distributed memory multicomputer ITCS 4/5145 Parallel Programming,
PET Summer Institute Kim Kido | Univ. Hawaii Manoa.
The Cluster Computing Project Robert L. Tureman Paul D. Camp Community College.
Cluster Workstations. Recently the distinction between parallel and distributed computers has become blurred with the advent of the network of workstations.
Taking the Complexity out of Cluster Computing Vendor Update HPC User Forum Arend Dittmer Director Product Management HPC April,
KFUPM-COE Industrial Advisory Council Meeting 31/5/ Department of Computer Engineering (COE) College of Computer Sciences and Engineering (CCSE)
Loosely Coupled Parallelism: Clusters. Context We have studied older archictures for loosely coupled parallelism, such as mesh’s, hypercubes etc, which.
April 26, CSE8380 Parallel and Distributed Processing Presentation Hong Yue Department of Computer Science & Engineering Southern Methodist University.
Jump to first page One-gigabit Router Oskar E. Bruening and Cemal Akcaba Advisor: Prof. Agarwal.
Distributed Computing CSC 345 – Operating Systems By - Fure Unukpo 1 Saturday, April 26, 2014.
CLUSTER COMPUTING TECHNOLOGY BY-1.SACHIN YADAV 2.MADHAV SHINDE SECTION-3.
CMSC104 Problem Solving and Computer Programming Spring 2011 Section 04 John Park.
Computing Resources at Vilnius Gediminas Technical University Dalius Mažeika Parallel Computing Laboratory Vilnius Gediminas Technical University
CS4414 Issues in Scientific Computing Alexey Onufriev Departments of CS and Physics VT.
CMSC104 Problem Solving and Computer Programming Spring 2009 Sections 0201 & 0301 Ms. Dawn Block.
CS6404 Modern Computational Science Alexey Onufriev Departments of CS and Physics VT.
Fall-11: Early Adoption of NSF/TCPP PDC Curriculum at Texas Tech University and Beyond Yong Chen Yu Zhuang Noe Lopez-Benitez May 10 th, 2013.
Design Issues of Prefetching Strategies for Heterogeneous Software DSM Author :Ssu-Hsuan Lu, Chien-Lung Chou, Kuang-Jui Wang, Hsiao-Hsi Wang, and Kuan-Ching.
By Chi-Chang Chen.  Cluster computing is a technique of linking two or more computers into a network (usually through a local area network) in order.
S3.kth.se EQ2430/2440 Lecture 21/3-11 Per Zetterberg.
Comprehensive Scientific Support Of Large Scale Parallel Computation David Skinner, NERSC.
COMP381 by M. Hamdi 1 Clusters: Networks of WS/PC.
Backprojection and Synthetic Aperture Radar Processing on a HHPC Albert Conti, Ben Cordes, Prof. Miriam Leeser, Prof. Eric Miller
Building and managing production bioclusters Chris Dagdigian BIOSILICO Vol2, No. 5 September 2004 Ankur Dhanik.
Understanding Parallel Computers Parallel Processing EE 613.
CS 52500, Parallel Computing Spring 2011 Alex Pothen Lectures: Tues, Thurs, 3:00—4:15 PM, BRNG 2275 Office Hours: Wed 3:00—4:00 PM; Thurs 4:30—5:30 PM;
Distributed Real-time Systems- Lecture 01 Cluster Computing Dr. Amitava Gupta Faculty of Informatics & Electrical Engineering University of Rostock, Germany.
Parallel Programming Henri Bal Vrije Universiteit Faculty of Sciences Amsterdam.
The History of Clustering. What is computer clustering? Computer clustings is when a group of computers are linked together operating as one, sharing.
CS-EE 481 Spring Founder’s Day, 2004 University of Portland School of Engineering Oregon Chub Beowulf Cluster Authors A.J. Supinski Billy Sword Advisor.
By Ronnie Julio Mohammad Alsawwaf.  Using more than two computer systems that are linked together  Handles a larger/more variable workload  Provides.
Constructing a system with multiple computers or processors 1 ITCS 4/5145 Parallel Programming, UNC-Charlotte, B. Wilkinson. Jan 13, 2016.
Unit - III Prototyping.
CLUSTER COMPUTING Presented By, Navaneeth.C.Mouly 1AY05IS037
Constructing a system with multiple computers or processors
Hadoop Clusters Tess Fulkerson.
Foundations of Computer Science
Using Remote HPC Resources to Teach Local Courses
Development of the Nanoconfinement Science Gateway
CLUSTER COMPUTING.
Constructing a system with multiple computers or processors
Constructing a system with multiple computers or processors
CSE8380 Parallel and Distributed Processing Presentation
Constructing a system with multiple computers or processors
Your name here Your institution here
Performance, Applications, Security
Types of Parallel Computers
Presentation transcript:

Teaching Parallel Computing using Beowulf Clusters: A Laboratory Approach Phil Prins Seattle Pacific University October 8, 2004

Why Use Beowulf Clusters to Teach Parallel Computing? is inexpensive to buy or build is inexpensive to buy or build the concept of a cluster is understandable to students the concept of a cluster is understandable to students the coarse granularity makes for ease in teaching concepts of parallelism the coarse granularity makes for ease in teaching concepts of parallelism Beowulf clusters are becoming increasingly important in the workplace Beowulf clusters are becoming increasingly important in the workplace

Why force students to use the cluster directly? Using a hands-on approach allows students to use and understand both the hardware and the software of parallel systems Using a hands-on approach allows students to use and understand both the hardware and the software of parallel systems

Background Information 40 hours in-class per term 40 hours in-class per term About 10 students who are Computer Science or Computer Engineering majors About 10 students who are Computer Science or Computer Engineering majors Have dedicated lab Have dedicated lab Have development PCs Have development PCs

Pre 2001 Lecture-based Lecture-based Time on remote supercomputer Time on remote supercomputer Archaic architectures Archaic architectures Not “real” Not “real”

2001/2 Student put together a cluster for an independent study Student put together a cluster for an independent study Then had class do it Then had class do it 2 teams 2 teams Hardware team put together another cluster Hardware team put together another cluster Software team explored parallel programming Software team explored parallel programming

2001/2 (cont) Hardware team failed because didn’t know Linux Hardware team failed because didn’t know Linux Software team did OK but the learning curve was too high Software team did OK but the learning curve was too high End result was disappointing End result was disappointing Would have been better to do the regular lecture class Would have been better to do the regular lecture class

2002/3 Bladed Beowulf idea was born Bladed Beowulf idea was born Bought Plexiglas and aluminum and computer parts Bought Plexiglas and aluminum and computer parts Put them together and ran MPI Put them together and ran MPI Great class feedback! Great class feedback!

2002/3 (cont) What the students learned using this approach: What the students learned using this approach: The fundamentals of parallel processing The fundamentals of parallel processing Cluster computing Cluster computing Programming in a parallel environment Programming in a parallel environment Hardware design Hardware design But, what is in a way more telling, is what the students didn’t learn: But, what is in a way more telling, is what the students didn’t learn: Formal theory of parallel algorithms Formal theory of parallel algorithms Classic supercomputer and parallel architectures Classic supercomputer and parallel architectures Distributed and shared memory concepts Distributed and shared memory concepts Formal load balancing theory Formal load balancing theory

2003/4 Received a grant and decided to go semi- pro Received a grant and decided to go semi- pro Bought 2 real servers and 4 kits Bought 2 real servers and 4 kits Dual Xeon processors Dual Xeon processors Connected with gigabit Ethernet Connected with gigabit Ethernet One team assembled the cluster while the other team learned to program it One team assembled the cluster while the other team learned to program it Wrote documentation to support the cluster Wrote documentation to support the cluster Presented at the end of the school year Presented at the end of the school year

2003/4 (cont) What the students learned using this approach: What the students learned using this approach: The fundamentals of parallel processing The fundamentals of parallel processing Cluster computing Cluster computing Programming in a parallel environment Programming in a parallel environment Hardware design Hardware design Formal theory of parallel algorithms Formal theory of parallel algorithms Distributed and shared memory concepts Distributed and shared memory concepts Formal load balancing theory Formal load balancing theory What the students didn’t learn: What the students didn’t learn: Classic supercomputer and parallel architectures Classic supercomputer and parallel architectures

This year Expanded the cluster over the summer Expanded the cluster over the summer Is used by a computational chemist Is used by a computational chemist Now learning more about parallel programming Now learning more about parallel programming Not doing much hands-on with the hardware Not doing much hands-on with the hardware

Conclusion We are headed in the right direction We are headed in the right direction Student interest in and retention of parallel processing concepts is enhanced by utilizing good laboratory projects. Those projects need to track the state of the industry and to be designed to increase student enjoyment and knowledge. Student interest in and retention of parallel processing concepts is enhanced by utilizing good laboratory projects. Those projects need to track the state of the industry and to be designed to increase student enjoyment and knowledge.