CS 550: Distributed Computing Systems

 

Zizhong Chen --- Spring 2008

 

 

 

 

Instructor:      Zizhong Chen

                        238 Ayers Hall

                        Phone: 782-8457

                        Email:  zchen@jsu.edu

 

Text:               Foundations of Multithreaded, Parallel, and Distributed Programming, by Gregory Andrews, Addison-Wesley, 2000 Web link

 

Other  References:

 

                        Articles/papers from books/conferences/journals/web-sites       

 

Objectives:     Fundamental concepts and issues related to the design and analysis of concurrent computing which includes multithreaded, parallel, and distributed computing. Discussion of programming techniques, applications, implementations, and performance issues. In addition, selected topics from the following list will also be covered: load balancing, task scheduling, fault-tolerance, coordination & agreement, distributed objects & remote invocation, and distributed transactions & concurrency control.

 

Prerequisites: CS 450 (Computer Networking) or equivalent

 

Grading:         Homework and Projects                       30%

                        Final Exam                                           30%

                        Term Papers                                         40%

 

Assignments:  Homework problems and projects based on the lecture topics and related material will be assigned during the semester. All assignments are due on the date & time specified for them. No credit will be given to assignments submitted late except for legitimate reasons. See the Class Policies note below on legitimate reasons. Also, there will be individual term papers where each student will pick a topic in parallel and distributed computing. A written report is required. The instructor will give further information about this during the semester.

 

 

Class Policies:

 

1.        No make-up exam will be given except for those with legitimate reason.

       Legitimate reasons:

a.       sickness or emergency (with documented evidence)

b.       participation in a scheduled university event (with prior notice to instructor)

 

2.        Any student who receives failing grades during the course is urged to discuss this

with the instructor. No grades will be given out or discussed either over the phone or email.

 

3.        All requests for accommodations (disabilities, school events, etc.) are welcome.

 

4.        The academic misconduct policy of the University will be followed in this course. The policies of academic honesty will be strictly enforced in this class. You are expected to do your own work. Copying another student’s work will not be tolerated. Students must adhere to the University Policy on Academic Honesty as specified in the JSU Student Handbook.

 

 

TENTATIVE COURSE SYLLABUS

 

Unix System, MCIS-cluster

 

Concurrent Programming concepts: an overview;

Techniques for parallelizing programs

 

Concurrent Programming issues: Processes and Synchronization; Locks and Barriers; Semaphores and Monitors

 

Parallel and Distributed Programming: Message Passing, Remote Procedure Call, and Rendezvous; Process Interaction Paradigms; distributed objects & RMI

 

MPI and Open MP

 

Fault-Tolerance in Distributed Systems

 

Parallel Programming: Scientific Computations, Languages, Libraries, and Tools