Lectures and Labs are spread over the week, on Monday, Wednesday, Thursday, and Friday. As for what time they will be given, see below for a more precise schedule. See also the official schedule on TimeEdit.
Slides by the textbook authors can be found at:
These slides are frequently used during our lectures. They also help link the lectures to the textbooks, which we strongly recommend you study.
They can be found here.
We will try to make the slides/lecture notes available online on this page the day before each class. A new version of the slides may be uploaded after class according to what has actually been presented. We encourage you to take notes independent of the slides material available before class.
If you want to get an idea of the material covered in the course ahead of time, the lectures slides from previous course instances are available here
NOTE. This is a tentative schedule, subject to change!
Class # | Date | Topic | Slides | Reading material |
---|---|---|---|---|
1 | Mon, Jan 15 | Introduction to concurrent programming | general course info slides examples | Ben-Ari 1, 2.1-2.3. |
2 | Wed, Jan 17 | Races locks and semaphores | slides examples | Ben-Ari 2.4-2.7, 2.12, 6.1-6.5, 6.9. |
3 | Wed, Jan 17 | Models of concurrency and synchronization algorithms | slides examples | Ben-Ari 3.1-3.9, Herlihy & Shavit 2.3-2.4, 7.1-7.2 |
4 | Fri, Jan 19 | Models of concurrency and synchronization algorithms | Ben-Ari 3.1-3.9, Herlihy & Shavit 2.3-2.4, 7.1-7.2 | |
5 | Mon, Jan 22 | Synchronization problems with semaphores | slides examples | Ben-Ari 6.5-6.9 |
6 | Wed, Jan 24 | Synchronization problems with semaphores & Monitors | slides examples | Ben-Ari 6.5-6.9 (Sync. Prob.); Ben-Ari 7.1-7.3, 7.5. (Monitors) |
7 | Wed, Jan 24 | Intro to FP in Erlang | slides | |
8 | Wed, Jan 31 | Intro to FP in Erlang & Message-passing concurrency in Erlang | slides examples | |
9 | Fri, Feb 2 | Message-passing concurrency in Erlang & Sync problems with message-passing | slides examples erlang-tutorial | |
10 | Mon, Feb 5 | Parallelizing computations | slides examples | Herlihy & Shavit 16.1, 16.4 |
11 | Mon, Feb 12 | Parallel linked lists | slides examples | Herlihy & Shavit 9 |
12 | Wed, Feb 14 | Lock-free programming & Verification of Concurrent Programming | slides examples | Herlihy & Shavit 10.1, 10.2, 10.5, 10.6, 18.1, 18.2 (Lock-free); Ben-Ari 4 (Verification) |
13 | Wed, Feb 14 | Verification of Concurrent Programming | slides | Ben-Ari 4 |
14 | Mon, Mar 4 | Revision |
If you want to get an idea of the material covered in the course ahead of time, here are the lecture notes used in previous editions of the course.