Welcome to CS176 (a.k.a. CSCI 1760): Introduction to Multiprocessor Synchronization!

This course examines the theory and practice of multiprocessor synchronization. Subjects covered include multiprocessor architecture, mutual exclusion, wait-free and lock-free synchronization, spin locks, monitors, load balancing, concurrent data structures, and transactional synchronization.


CS176 meets Tuesdays and Thursdays, from 1:00 pm to 2:20 pm (J Hour) in CIT 477.

News

SEP 27 2012

Announcements from now on will be sent to the course email list. If you're not on the list, sign up here: https://lists.cs.brown.edu/sympa/info/cs176.2012-13.f

Previously emailed announcements:

Since many of you have questions regarding homework 2 problem 1, Ryan will be holding his TA hours earlier, during my normal hours, Fri. (9/28) 6-8pm, and I'll be holding his normal hours Mon. (10/1) 5:30-7:30pm. These changes are reflected on the course calendar.

If you did not receive an invitation from/about NB, please email cs176htas@cs.brown.edu.

If you did not receive an email with your grade report for homework 2, please email cs176htas@cs.brown.edu.

Solutions for homeworks 1 and 2 have been posted on NB. Please do not ignore the comment on each solution set that these are not the only correct solutions or approaches possible. Also, please do not share or redistribute these solutions in any way, shape, or form. They have been intentionally made available only to the staff and all of you who are taking the course this semester, and we want to keep it that way.



SEP 18 2012

The revised version of Homework 2's Problem 1 has been posted on the Assignments page.



SEP 18 2012

The videos of the last two lectures have been posted. See the Lectures page.



SEP 17 2012

Many of you have been asking the following questions:

Q: Is the "M" in the second two parts of problem 1 the same "M" as in the first part?
A: Yes

Q: How should part 2 be interpreted?
A: Here are some alternate restatements of "What should be the speedup of M so that the overall execution time improves by a factor of 2?" that the TAs have come up with (go with the one that makes the most sense to you):
"To which percentual execution M should be speedup such that the overall speedup is 2, in terms of the number of processes?"
OR
"To which value should we divide the percentual fraction of M such that the overall speedup is 2?"
OR
(In summary) "We are asking you to calculate how much one would have to decrease the execution time of the sequential method M (it terms of its fraction of the program's total running time) so that we can double the speedup predicted by Amdahl's law."


SEP 14 2012

If you haven't received an email today as part of cs176.2012-13.f@lists.cs.brown.edu or you're not in the cs176student group, email cs176htas@cs.brown.edu. The email contained the following, among other information:


Q: Why aren't the video-recordings of the lectures up yet?
A: We have them edited by a university resource outside the department, and their turn-around time varies depending on their workload. I will post an announcement and/or send out an email when new ones have been posted on the website. Thanks for your patience!


Q: What does "(Extra Credit Undergrad / Required for Grad Credit)" on problem 3 of homework 2 mean?
A: It means, to earn 2000-level credit for the course, you need to complete this problem, and all problems on future assignments with a similar heading*. For earning 1000-level credit, this problem is optional, and any points you earn from submitting a solution for it will count as extra credit on your grade. All homework assignments from now on will have one problem like this.


Q: On Problem 3 of Homework 2, what is T3?
A: "T3" is a typo, which is now corrected on the handout. "T^3" is the timestamp system mentioned in the Mutual Exclusion lecture, starting on slide 139/140 (although I would review the slides on timestamps previous to that as well for this problem), and mentioned in section 2.7 of the book. * Talk to Professor Herlihy about what else you need to do to earn graduate level credit if you're interested.


SEP 11 2012

Homework 2 has been posted on the Assignments page! Although you can start the assignment, you won't be able to run the handin script until the department adds you to the cs176student group, so watch for an announcement about that or check your groups before running the script. If you did NOT do Problem 1 of the first homework, email cs176htas@cs.brown.edu with your cs login or Brown AuthId immediately so we can make sure you're added to cs176student group.


SEP 10 2012

The video of the first lecture has been posted on the Lectures page!



SEP 6 2012

The first homework is posted! Don't worry, it's not large, but it is required.



SEP 6 2012

We'll be using MIT's NB this year to allow you to provide comments and feedback on the book. More details to come soon!


SEP 6 2012

First day of class! To become acquainted with the basics, read appendices A and B - yes, you will find the book extremely helpful in this course!