Welcome to CS1760

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.

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

From now on, announcements will be communicated through our course email list and our Ed Discussion page. If you're not on the listserv you can join it through sympa. If you were registered, your cs email should automatically be subscribed.

Why Multiprocessor Programming?

The Art of Multiprocessor Programming Textbook Cover

The computer industry is undergoing a paradigm shift. Chip manufacturers are shifting development resources away from single-processor chips to a new generation of multi-processor chips known as multicores.

This fundamental change in our core computing architecture will require a fundamental change in how we program. The art of multiprocessor programming, currently mastered by few, is more complex than programming uniprocessor machines, and requires an understanding of new computational principles, algorithms, and programming tools.

Concurrent computation on uniprocessor and multiprocessor architectures have many aspects in common. The key issue that distinguishes multiprocessor programming from concurrent uniprocessor programming is the need to understand how concurrent computations on separate processors coordinate with one another, a broad and intricate problem area we call multiprocessor synchronization.

Our textbook is The Art of Multiprocesor Programming, second edition,, by Maurice Herlihy, Nir Shavit, Victor Luchangco, Michael Spear. Students will be able to provide comments and feedback on it using MIT's NB. The textbook is also available to students through the Brown University Library website.


Anonymous Feedback

If you'd like to give us feedback on how we're doing, here's a link to the form.