| Week |
Date |
Topic |
Book Chapter(s) |
Audio |
Assignments |
| 1 |
Mon 01/10 |
Syllabus, Intro |
|
|
Photo and contact info assigned |
|
Wed 01/12 |
Why concurrency |
Java Ch1, Erlang Ch1 |
|
Photo and contact info due |
| 2 |
Mon 01/17 |
No class - MLK Holiday |
|
|
|
|
Wed 01/19 |
Java Thread Mechanisms - basics, Race.java |
|
Audio |
Homework1 - in Jan. 19th notes assigned |
| 3 |
Mon 01/24 |
Thread Safety |
Java Ch 2 |
Audio |
Homework1 - in Jan. 19th notes due |
|
Wed 01/26 |
Sharing Objects |
Java Ch 3 |
Audio |
Homework2 - in Lecture5 notes assigned |
| 4 |
Mon 01/31 |
Safe Publication, Object locking implementation |
Java Sec 3.4ff |
Audio |
|
|
Wed 02/02 |
Composing Objects, code for slide 7 example |
Ch 4 |
Audio |
Homework2 - in Lecture5 notes due, Homework3 - code inspection assigned |
| 5 |
Mon 02/07 |
Building Blocks |
Ch 5 |
Audio |
|
|
Wed 02/09 |
Building Blocks - continued |
Ch 5 |
Audio |
Homework3 - code inspection due, Homework4 - synchronizers assigned |
| 6 |
Mon 02/14 |
Task Execution |
Ch 6 |
Audio |
|
|
Wed 02/16 |
Exam Review, Erlang Intro Pt 1, Pt 2 |
Erlang Ch 2 |
Audio |
|
|
Fri 02/18 |
|
|
|
Homework4 - synchronizers due |
| 7 |
Mon 02/21 |
No class - Presidents' Day |
|
|
|
|
Wed 02/23 |
1st mid-term |
|
|
|
| 8 |
Mon 02/28 |
Go over exam, Sequential Erlang continued |
|
Elluminate |
|
|
Wed 03/02 |
Concurrent Erlang |
Ch 4-5 |
Elluminate |
Homework5 - Concurrent Erlang assigned |
| 9 |
Mon 03/07 |
Shared state, Process linking |
|
Elluminate |
|
|
Wed 03/09 |
Linking continued and Lifts assignment |
|
Elluminate |
Homework6 - Lifts Simulation - NEW DUE DATE assigned |
|
Fri 03/11 |
|
|
|
Homework5 - Concurrent Erlang due |
|
Mon 03/14 |
Spring Break |
|
|
|
| 10 |
Mon 03/21 |
Erlang OTP - slides, live lecture (no audio) |
|
Audio |
|
|
Wed 03/23 |
Getting C++ Threads Right - video lecture |
|
|
|
| 11 |
Mon 03/28 |
Distributed Computing in Erlang - slides, Live lecture - no audio |
|
Audio |
|
|
Wed 03/30 |
Exam Review, Sample Exam, Concurrent ML Synchronous Communication, CML Paper |
|
Elluminate |
|
| 12 |
Mon 04/04 |
2nd mid-term |
|
|
|
|
Wed 04/06 |
Finish synch comm, Transactions |
|
|
|
|
Fri 04/08 |
|
|
|
Homework6 - Lifts Simulation - NEW DUE DATE due |
| 13 |
Mon 04/11 |
Go over exam and last project |
|
Elluminate |
Homework7 - Synchronous Communication assigned |
|
Wed 04/13 |
MapReduce, Google MapReduce Paper |
|
Elluminate |
|
| 14 |
Mon 04/18 |
Toward lock-free concurrency: Transactional Memory - notes, TM paper |
|
Elluminate |
|
|
Wed 04/20 |
Software Transactional Shared Memory, DSTM Paper |
|
Elluminate |
|
| 15 |
Mon 04/25 |
Rajath - Google Go, Min - Aspen, Yasamin - MRL, Hai - Concurrency on GPU |
|
Elluminate |
|
|
Wed 04/27 |
Richard - Clojure, Punit - Concurrencer, Dario - Python Concurrency, Qing - Dist. Concurrent Web Transaction |
|
Elluminate |
|
|
Fri 04/29 |
Take-home final available |
|
|
|
|
Mon 05/02 |
|
|
|
Homework7 - Synchronous Communication due |
|
Fri 05/06 |
Friday, 6 May, Take-home Final Exam Due |
|
|
|