Calendar

September

Week Monday Tuesday Thursday Wednesday Friday
 

 

 

 

1

20 21 1st Lecture: Introduction - Synchronization

Study
Instructor's Transparencies &
Sections 1.1-1.2 & 1.5-1.8,  book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
22 2nd Lecture:  Modeling a distributed system

Study
Instructor's Transparencies &
Chapter 1 & Section 2.1 & Section 4.1, book
H. Attiya & J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, John Willey & Sons, 2nd edition.


23 241st Tutorial
Simple Exercises on the Harshness of Parallelism
 

 

 

 

2

27 283rd Lecture: Mutual Exclusion

Study
Instructor's Transparencies &
Chapter 1 (optional) and Section 2.1, book
G. Taubenfeld, Synchronization Algorithms and Concurrent Programming, Pearson/Prentice Hall, 2006.
29 4th Lecture: Mutual Exclusion

Study
Instructor's Transparencies &
Sections 4.2, 4.4.2, 4.4.3, book H. Attiya & J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, John Willey & Sons, 2nd edition.

Optional: Section 2.2, book G. Taubenfeld, Synchronization Algorithms and Concurrent Programming, Pearson/Prentice Hall, 2006.
30

October

Week Monday Tuesday Thursday Wednesday Friday
 

2

 

  01 2nd Tutorial
Simple Exercises on Mutual exclusion - Formal Proofs
 

 

3

04 05 5th Lecture: Mutual Exclusion

Study
Instructor's transparencies
& Section 4.4.1, book
H. Attiya & J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, John Willey & Sons, 2nd edition &
Sections 2.4, book
G. Taubenfeld, Synchronization Algorithms and Concurrent Programming, Pearson/Prentice Hall, 2006.


Assignment of presentations

 

 

066th Lecture: Mutual Exclusion

Study
Instructor's transparencies &
Section 10.8, book
N. Lynch, Distributed Algorithms, Morgan Kauffman Publishers, Inc., 1996
&
Section 2.5.2, book
G. Taubenfeld, Synchronization Algorithms and Concurrent Programming, Pearson / Prentice Hall, 2006.

Optional: Section 4.4.4, book
H. Attiya &
J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, Morgan Kaufmann, 1998.
07 083rd Tutorial
Mutual Exclusion Exercises - Formal Proofs


 
 

 

4

11 12 7th Lecture: Presentations by the students
13 8th Lecture: Presentations by the students 14 154th Tutorial

Presentations by the students - Laboratory
 

 

5

18 19 9th Lecture:  Spin Locks, Contention

Study
Instructor's transparencies &
Sections 7.1-7.6,  book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
20 10th Lecture: Concurrent Objects - Linearizability and Weaker Consistency Conditions

Study
Instructor's transparencies & paper
M. Herlihy and J. Wing, Linearizability: A correctness condition for concurrent objects,
ACM Transactions on Programming Languages and Systems, 12(3):463--492, July 1990.

Optional: Chapter 3,
 M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
21 225th Tutorial

Laboratory on mutual exclusion

1st Paper review Due
 

 

6

25 26 11th Lecture: Foundations of Shared Memory - Implementing a multi-valued SRSW register from binary SRSW registers

Study
Instructor's transparencies
& Sections 10.1, 10.2.1, book
H. Attiya &
J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, John Willey & Sons, 2nd edition.
27 12th Lecture: Foundations of Shared Memory - Implementing a multi-reader single-writer (MRSW) register from multi-valued single-reader, single-writer (SRSW) registers

Study
Instructor's transparencies
& Sections 10.1, 10.2.2, book
H. Attiya &
J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, John Willey & Sons, 2nd edition.
28 296th Tutorial
Foundations of shared memory

 

November

Week Monday Tuesday Thursday Wednesday Friday
 

 

7

01 02 13th Lecture: Snapshot Objects

Study
Instructor's transparencies
& Section 13.3.1, 13.3.2, book N. Lynch, Distributed Algorithms, Morgan Kauffman Publishers, Inc., 1996.

Optional: Section  10.3, book
H. Attiya &
J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, John Willey & Sons, 2nd edition.
03 14th Lecture: Snapshot Objects

Study
Instructor's transparencies
&
Section 13.3.3, book
N. Lynch, Distributed Algorithms, Morgan Kauffman Publishers, Inc., 1996.

Optional: Section  10.3, book
H. Attiya &
J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, John Willey & Sons, 2nd edition.
 
04 057th Tutorial
Snapshots

 
 

 

8

08 09 15th Lecture: The relative power of primitive synchronization operations

Study
Instructor's transparencies
&
Sections 12.1, 12.2.1-12.2.4, book  N. Lynch, Distributed Algorithms, Morgan Kauffman Publishers, Inc., 1996.
10 16th Lecture: The Wait-Free Hierarchy

Study

Instructor's transparencies &
Sections 15.1, 15.2, book H. Attiya &
J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, John Willey & Sons, 2nd edition.
11 128th Tutorial
Wait-Free Hierarchy

1st Exercise Due
 

 

9

15 16 17th Lecture: Universal Constructions

Study

Instructor's transparencies &
Sections 15.3.1-15.3.3, book H. Attiya &
J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, John Willey & Sons, 2nd edition.
17 18th Lecture: Concurrent Queues

Study

Instructor's transparencies & Sections 10.1-10.5,  book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
 
18 199th Tutorial
Universal Algorithms - Concurrent data structures

 
 

 

10

22 23 19th Lecture: Memory Reclamation and the ABA problem

Study

Instructor's transparencies & Sections 10.6-10.7,  book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
24 20th Lecture: Concurrent Stacks & Elimination

Study

Instructor's transparencies &
Chapter 11,  book
M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
25 2610th Tutorial
Laboratory


2nd Paper Review Due
 

 

11

29 30 21st Lecture: Concurrent Linked Lists

Study

Instructor's transparencies &
Chapter 9,
book
M. Herlihy and
N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.

December

Week Monday Tuesday Thursday Wednesday Friday
 

 

11

01 22nd Lecture: Software Transactional Memory

Study

Instructor's transparencies &
Chapter 18,
book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.

 Project out (tentative)
02 0311th Tutorial
Concurrent data structures

 
 

 

12

06 07 23rd Lecture: Software Transactional Memory

Study

Instructor's transparencies & Chapter 18, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
 
08 24th Lecture: Scheduling - work stealing

Study

Instructor's transparencies & Chapter 16, book M. Herlihy and N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
09 1012th Tutorial
Software Transactional Memory

2nd Exercise Due

 
 

13

13 14 25th Lecture: Scheduling - Work Stealing

Study

Instructor's transparencies & paper  Nimar S. Arora, Robert D. Blumofe, C. Greg Plaxton: Thread Scheduling for Multiprogrammed Multiprocessors. Theory Comput. Syst. 34(2): 115-144 (2001)
15 26th Lecture: Barriers

Study

Instructor's transparencies & Chapter 17, book
M. Herlihy and
N. Shavit, The Art of Multiprocessor Programming, Morgan Kauffman, 2008.
16 1713th Tutorial
Laboratory


 
 

14

 

20 21   22   23 24

January

Week Monday Tuesday Thursday Wednesday Friday
 

15

3 4    5 6 7Project Due
 

16

10 11 Project Evaluation   12Project Evaluation 13 14Project Evaluation