Fall 2024 - CMPT 431 D100

Distributed Systems (3)

Class Number: 6295

Delivery Method: In Person

Overview

  • Course Times + Location:

    Sep 4 – Oct 11, 2024: Tue, 10:30–11:20 a.m.
    Burnaby

    Oct 16 – Dec 3, 2024: Tue, 10:30–11:20 a.m.
    Burnaby

    Sep 4 – Dec 3, 2024: Thu, 9:30–11:20 a.m.
    Burnaby

  • Prerequisites:

    CMPT 300, 371, both with a minimum grade of C-.

Description

CALENDAR DESCRIPTION:

An introduction to distributed systems: systems consisting of multiple physical components connected over a network. Architectures of such systems, ranging from client-server to peer-to-peer. Distributed systems are analyzed via case studies of real network file systems, replicated systems, sensor networks and peer-to-peer systems. Hands-on experience designing and implementing a complex distributed system. Students with credit for CMPT 401 before September 2008 may not take this course for further credit.

COURSE DETAILS:

The course aims to provide an understanding of principles involved in designing modern parallel and distributed software systems. It focuses on the fundamentals of parallel algorithm design and parallel programming techniques by covering key concepts like concurrency, synchronization, consistency models and fault tolerance.

Topics

  • Principles of Parallel Algorithm Design
  • Concurrency, Correctness and Consistency
  • Shared Memory Programming
  • Concurrent Data Structures
  • Distributed Memory Model & Programming
  • Consistency Models
  • Group Communications
  • Fault Tolerance

Grading

  • Exams 40%
  • Assignments and Project 60%

Materials

MATERIALS + SUPPLIES:

Reference Books:
The Art of Multiprocessor Programming, Maurice Herlihy and Nir Shavit, Elsevier/Morgan Kaufmann, 2012, 9780123977953

Distributed Computing: Principles, Algorithms, and Systems, Ajay D. Kshemkalyani and Mukesh Singhal, Cambridge University Press, 2008, 9780511805318

Introduction to Parallel Computing, Ananth Grama, 2nd edition, Addison-Wesley, 2003, ISBN : 0201648652

REQUIRED READING NOTES:

Your personalized Course Material list, including digital and physical textbooks, are available through the SFU Bookstore website by simply entering your Computing ID at: shop.sfu.ca/course-materials/my-personalized-course-materials.

Registrar Notes:

ACADEMIC INTEGRITY: YOUR WORK, YOUR SUCCESS

SFU’s Academic Integrity website http://www.sfu.ca/students/academicintegrity.html is filled with information on what is meant by academic dishonesty, where you can find resources to help with your studies and the consequences of cheating. Check out the site for more information and videos that help explain the issues in plain English.

Each student is responsible for his or her conduct as it affects the university community. Academic dishonesty, in whatever form, is ultimately destructive of the values of the university. Furthermore, it is unfair and discouraging to the majority of students who pursue their studies honestly. Scholarly integrity is required of all members of the university. http://www.sfu.ca/policies/gazette/student/s10-01.html

RELIGIOUS ACCOMMODATION

Students with a faith background who may need accommodations during the term are encouraged to assess their needs as soon as possible and review the Multifaith religious accommodations website. The page outlines ways they begin working toward an accommodation and ensure solutions can be reached in a timely fashion.