CS 6868 - Concurrent Programming
Goal of the course:
At the end of the course, students will have a fair understanding of some standard concepts in concurrent programming (programming and reasoning). The students will be exposed to multiple models of concurrency (and parallel programming languages).
Slides for the Lectures:
- Time and Place: Wed (3.15-4.40pm), Fri (2.00-3.15pm) K slot. Class room: CS26
- Teacher : V. Krishna Nandivada
- Office hours / Doubt sessions : Anytime.
- TA : Aman Nougrahiya (amannoug@cse), Saurabh Kalikar (saurabhk@cse), Anchu RS (anchu@cse)
- Office hours / Doubt sessions : Aman (4-5pm Thu), Saurabh (4-5pm Tue), Anchu (4-5pm Mon). Or, fix a time by sending an email.
- Course outline.
- Software, documentation and tools link is here.
- Submission guidelines.
- Discussion website is here (access restricted).
- Book 1: The Art of Multiprocessor Programming, by Maurice Herlihy and Nir Shavit, Morgan Kaufmman Publishers, 1st Edition, Indian Reprint 2012.
- Book 2: The Art of Concurrency: A Thread Monkey's Guide to Writing Parallel Applications by O' Reilly Media, 1st Edition, 2009
- Book 3: Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Block, Joseph Bowbeer, David Holmes and Doug Lea, Addison Wesley, 1st Edition, 2006
- Book 4: An Introduction to Parallel Programming by Peter Pacheco, Morgan Kaufmann, 1st Edition, 2011
- Book 5: The Java programming language, Arnold, Gosling and Holmes, Addison-Wesley, 2005. Also see the online manuals in the documentation section.
- Book 6: MPI - the complete reference by Marc Snir, Steve W. Otto, Steven Huss-Lederman, David W. Walker, Jack Dongarra.
- Book 7: OpenMP application Program interface (language reference)
- Book 8: Patterns for Parallel Programming: Timothy Mattson, Beverly A. Sanders, Berna L. Massingill
- Three LH. 1, 2: Introduction, overview of concurrency related aspects.
- Two LH. 2: Mutual Exclusion
- Three LH. 2: Objects and Concurrency (Linearizability, Sequential Consistency).
- Three LH. 1: Java concurrency.
- Four LH. 1, 2: OpenMP.
- Four LH. 1 : Memory consistency models.
- Two LH. 1: Power of synchronization operations.
- Six LH. 1, 2, 3: MPI, point-to-point, RMA and hybrid-MPI.
- Four LH 1: Patterns for parallel programming.
||20 Jan 2018
||02 Feb 2018, 11:59PM
|| 21 Feb 2018
|| 02 Mar 2018, 11:59PM
||03 Mar 2018
||11 Mar 2018, 11:59PM
||14 Mar 2018,
||25 Mar 2018, 11:59PM
||31 Mar 2018,
||13 Apr 2018, 11:59PM
||OpenMP + MPI assignment
||14 Apr 2018
||28 Apr 2018, 11:59PM
Fri May 4 20:58:44 IST 2018
- Quiz 1 exam (10%) on Feb 16th 2018 (Fri), 2.00pm. Closed book, closed notes, closed neighbor. sample solution.
- Quiz 2 exam (10%) on Apr 06th 2018 (Fri), 2.00pm. Closed book, closed notes, closed neighbor. sample solution.
- Final exam (40%) on May 4th 2018 (Fri), 2pm-5pm. Closed book, closed notes, closed neighbor. sample solution.