CSS 434: Parallel and Distributed Computing
Spring 2021
MW 330-530pm online
Prof. Munehiro Fukuda
This course introduces the concepts and design of distributed computing systems. Topics covered include message passing, remote procedure calls, process management, migration, mobile agents, distributed coordination, distributed shared memory, distributed file systems, fault tolerance, and grid computing.
The first five weeks focus on the basic mechanism and the Java programming techniques for message passing, process management, and migration. We will use Java sockets, MPI: Message Passing Interface, Java RMI, and UWAgent: a Java-based mobile agent system the professor and his former CSS students have designed. The last five weeks discuss advanced topics, where the instructor will overview each topic; each student will review a topic-related research paper; and all of us will be involved in group discussions on those papers.
Four programming assignments are given: (1) A chat server design with Java sockets, (2) A parallel-computing application programming with MPI Java, (3) A functional/performance comaprison between Java RMI and UWAgent, and (4) A distributed file system implementation using Java RMI. Two lab sessions are planned for each of the first three assignments to get familiar with sockets, MPI, RMI, and mobile agents.
Course Work | Percentage | Achievements | Approximately Corresponding Numeric Grade |
Program 1 | 9% | 90s | 3.5 - 4.0 |
Program 2 | 10% | 80s | 2.5 - 3.4 |
Program 3 | 10% | 70s | 1.5 - 2.4 |
Program 4 | 11% | 60s | 0.7 - 1.4 |
Paper Review | 10% | ||
Midterm Exam | 20% | ||
Final Exam | 20% | ||
Discussions | 4% | ||
Lab. Work | 6% |
Any homework is due at the beginning of class on the due date and must be submitted to Canvas. Once the submission window gets closed, no late submission is accepted even through email (firm). The submission may be postponed only in emergencies such as accidents, sickness, sudden business trips, and family emergencies, in which case you may turn in yor homework late with a written proof. No make-up exams will be given except under exceptional circumstances. Barring emergencies, I must be informed before the exam.
To request academic accommodations due to a disability, please contact Disability Resources for Stuents (DRS) in UW1-080, (email: uwbdrs@uwb.edu, Phone: 425-352-5307, and FAX: 425-352-5114). If you have a documented disability on file with the DSS office, please have your DSS counselor contact me and we can discuss accommodations.
The class follows the religious accomodation policy. Please check the Syllabi Guidelines and Resources webpage.
This course is scheduled to run synchronously at your scheduled class time via Zoom. These Zoom class sessions will be recorded. The recording will capture the presenter’s audio, video and computer screen. Student audio and video will be recorded if they share their computer audio and video during the recorded session. The recordings will only be accessible to students enrolled in the course to review materials. These recordings will not be shared with or accessible to the public.
The University and Zoom have FERPA-compliant agreements in place to protect the security and privacy of UW Zoom accounts. Students who do not wish to be recorded, please do not turn on their video. However, for exam proctoring, the instructor will ask you to turn on your video and to see your faces during an exam.
Week | Date | Topics | Lab and Discussions | Chapters | Reading | Assignment |
---|---|---|---|---|---|---|
1 | Mar 29 | System Models | 2 | pp37-79 | ||
Mar 31 | Networking | 3 (3.3 - 3.3.4, 3.4.1) |
pp89-98 pp106-111 |
|||
2 | Apr 5 | Interprocess Communication | Lab Work 1a (Sockets) | 4 (4.1 - 4.3.2) |
pp145-164 | Program 1 assigned |
Apr 7 | Group Communication and MPI | Lab Work 1b (Sockets) | 4.4, 4.6, 15.4 | pp169-174, pp178-180 pp646-659 |
||
3 | Apr 12 | Lab Work 2a (MPI) | ||||
Apr 14 | Remote Invocation | Lab Work 2b (MPI) | 5 | pp185-228 | Program 1 due on Apr 16 Fri at 11:59pm | >|
4 | Apr 19 | Operating System Support | Lab Work 3a (RMI) | 7 | pp279-334 | Program 2 assigned |
Apr 21 | Process Migration | Lab Work 3b (Agents) | 7.4.2 and non-textbook contents |
pp289-291 | ||
5 | Apr 26 | Process Migration (1 day buffer) | Lab Work 3b (Agents) | 7.4.2 and non-textbook contents |
pp289-291 | |
Apr 28 | Time and Global States | 14 | pp595-628 Demo Talk |
Reviewer: Fukuda |
||
6 | May 3 | Midterm exam online | 2 - 6 | pp37-98, 106-111, 145-164, 169-174, 178-228, 279-334, and 646-659 | ||
May 5 | Paper Review Group Discussion 1 |
JADE Timewarp SPEEDES Distributed snapshots |
Reviewer: ----, ---- Reviewer: Nain, Lin Reviewer: ----, ---- Reviewer: Fukuda Program 3 assigned Program 2 due on May 7 Fri at 11:59pm |
|||
7 | May 10 | Distributed Shared Memory | 6.5 | pp262-274 | | |
May 12 | Paper Review Group Discussion 2 |
Ivy Dash JavaSpace (Linda) GlobalArray Spark |
Reviewer: Wong, Pradana Reviewer: ----, ---- Reviewer: Connolly, Waranowitz Reviewer: Avelar, Shao Reviewer: Sterner, Gersbach |
|||
8 | May 17 | Distributed File Systems | 12 16.2.1-16.2.2 |
pp521-564 pp683-690 |
||
May 19 | Paper Review Group Discussion 3 |
Sun NFS AFS PVFS Plan 9 |
Reviewer: Hovsepian, Greeness Reviewer: Randhawa, Barsoom Reviewer: Alschitz, Yun Reviewer: Tan Program 4 assigned Program 3 due on May 21 Fri at 3:30pm |
|||
9 | May 24 | Distributed Transactions and Replication | 17.1-17.3 18 |
pp727-740 pp765-816 |
||
May 26 | Paper Review Group Discussion 4 |
Cassandra (Gossip) Coda Hadoop JGroup (ISIS) |
Reviewer: Park, Kwon Reviewer: Martin, O'Dore Reviewer: Xu, A. Tran Reviewer: Seto, Lim |
|||
10 | May 31 | Holiday (No School) | ||||
June 2 | Job Management in Grid/Cloud | Paper Review | No corresponding chapters | Condor NetSolve YARN |
Reviewer: ----, ---- Reviewer: ----, ---- Reviewer:Schwartz, Lara |
|
11 | June 7 | Final exam in class | 6.5, 12, 14, 16.2.1-16.2.2, 17.1-17.3, 18 and grid computing | pp262-274, 521-564, 595-628, 683-690, 727-740, and 765-816 | ||
June 11 | Program 4 Deadline | Program 4 due on June 11 Fri at 11:59pm |