CS586 - Distributed Computing

Calendar

September

Monday Tuesday Thursday Wednesday Friday
28 1st Lecture: (Section 1)Introduction - Syncronization

Study
Instructor's Transparencies
Chapter 1, books H. Attiya & J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, Morgan Kaufmann, 1998 and G. Taubenfeld, Synchronization Algorithms and Concurrent Programming, Pearson / Prentice Hall, 2006.
29 30 2nd Lecture: (Section 1)Introduction - Syncronization

Study
Instructor's Transparencies
Chapter 1, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.

Octomber

Monday Tuesday Thursday Wednesday Friday
01 02
05 3rd Lecture: (Section 2)Mutual Exclusion

Study
Instructor's Transparencies
Chapter 2, book G. Taubenfeld, Synchronization Algorithms and Concurrent Programming, Pearson / Prentice Hall, 2006.
06 07 4th Lecture: (Section 2)Mutual Exclusion

Study
Instructor's Transparencies
Chapter 2, book H. Attiya & J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, Morgan Kaufmann, 1998.
08 09
12 5th Lecture: (Section 3)Practice: Spin locks, contention & other performance issues

Study
Instructor's Transparencies
Chapter 3, book G. Taubenfeld, Synchronization Algorithms and Concurrent Programming, Pearson / Prentice Hall, 2006.
13 14 6th Lecture: (Section 3)Practice: Spin locks, contention & other performance issues

Study
Instructor's Transparencies
Chapter 7, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
15 16
19 7th Lecture: (Section 4)Practice: Cache-friendly synchronization algorithms

Study
Instructor's Transparencies

20 21 8th Lecture: (Section 4)Practice: Cache-friendly synchronization algorithms

Study
Instructor's Transparencies

22 23
26 9th Lecture: (Section 5)
Covering arguments: A technique for proving lower bounds in distributed computing

Study
Instructor's Transparencies
Chapter 10.8, book N. Lynch, Distributed Algorithms, Morgan Kaufmann, 1996.
27 28 10th Lecture: (Section 5)
Covering arguments: A technique for proving lower bounds in distributed computing

Study
Instructor's Transparencies
Chapter 10.8, book N. Lynch, Distributed Algorithms, Morgan Kaufmann, 1996.
29 30

November

Monday Tuesday Thursday Wednesday Friday
02 11th Lecture: (Section 6)Concurrent Objects – Correctness, progress and efficiency

Study
Instructor's Transparencies
Chapter 3, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
03 04 12th Lecture: (Section 6)Concurrent Objects – Correctness, progress and efficiency

Study
Instructor's Transparencies
Chapter 13, book N. Lynch, Distributed Algorithms, Morgan Kaufmann, 1996.
05 06
09 13th Lecture: (Section 7)Foundations of Shared Memory: Wait-free simulations pf complex shared objects from simpler objects

Study
Instructor's Transparencies
Chapter 8, book H. Attiya & J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, Morgan Kaufmann, 1998.
10 11 14th Lecture: (Section 7)Foundations of Shared Memory: Wait-free simulations pf complex shared objects from simpler objects

Study
Instructor's Transparencies
Chapter 10, book H. Attiya & J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, Morgan Kaufmann, 1998.
12 13
16 15th Lecture: (Section 8)Foundations of Shared Memory: Snapshot Objects

Study
Instructor's Transparencies
Chapter 13, book N. Lynch, Distributed Algorithms, Morgan Kaufmann, 1996.
17 18 16th Lecture: (Section 8)Foundations of Shared Memory: Snapshot Objects

Study
Instructor's Transparencies
Chapter 13, book N. Lynch, Distributed Algorithms, Morgan Kaufmann, 1996.
19 20
23 17th Lecture: (Section 9)
The relative power of primitive synchronization operations

Study
Instructor's Transparencies
Chapter 15, book H. Attiya & J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, Morgan Kaufmann, 1998.
24 25 18th Lecture: (Section 9)
The relative power of primitive synchronization operations

Study
Instructor's Transparencies
Chapter 5, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
26 27
30

December

Monday Tuesday Thursday Wednesday Friday
01 02 03 04
07 19th Lecture:
(Section 10)
Common shared data structures

Study
Instructor's Transparencies
Chapter 9, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
08 09 20th Lecture:
(Section 10)
Common shared data structures

Study
Instructor's Transparencies
Chapter 10, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
10 11
14 21th Lecture:
(Section 11)
Counting and sorting

Study
Instructor's Transparencies
Chapter 12, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
15 16 22th Lecture:
(Section 11)
Counting and sorting

Study
Instructor's Transparencies
Chapter 12, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
17 18
21 23th Lecture:
(Section 12)
Adaptive algorithms - Measuring Contention

Study
Instructor's Transparencies

22 23 24 25

January

Monday Tuesday Thursday Wednesday Friday
04 05 06 07 08
11 24th Lecture:
(Section 12)
Adaptive algorithms - Measuring Contention

Study
Instructor's Transparencies

12 13 25th Lecture:
(Section 13)
Software Transactional Memory

Study
Instructor's Transparencies
Chapter 18, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
14 15
18 26th Lecture:
(Section 13)
Software Transactional Memory

Study
Instructor's Transparencies
Chapter 18, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
19 20 21 22