CS-307 / 4 credits

Teacher: Falsafi Babak

Language: English

Remark: This course will be last given in autumn 2023


Summary

Multiprocessors are a core component in all types of computing infrastructure, from phones to datacenters. This course will build on the prerequisites of processor design and concurrency to introduce the essential technologies required to combine multiple processing elements into a single computer.

Content

Keywords

Multiprocessors, multicores, manycores, cache coherence, memory consistency models, memory ordering, manycore cache hierarchies, interconnection networks, synchronization, parallelism, GPU

Learning Prerequisites

Required courses

Parallelism and concurrency (CS-206)
Computer architecture (CS-208)

Important concepts to start the course

Introductory understanding of computer architecture & organization
Basic C/C++ systems programming

Learning Outcomes

By the end of the course, the student must be able to:

  • Detect and address inefficiencies in parallel software
  • Design and evaluate software for multiple parallel platforms
  • Design and evaluate hardware for shared memory
  • Compare and contrast hardware design choices in parallel platforms
  • Demonstrate and describe the operation of snooping and directory coherence protocols

Teaching methods

Lectures, homework and project

Assessment methods

Programming assignments and exercises during the semester.
25% Programming Assignments, 20% Exercises, 25% Midterm, 30% Final exam

Supervision

Office hours Yes
Assistants Yes

In the programs

  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Introduction to multiprocessor architecture
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Project: 1 Hour(s) per week x 14 weeks
  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Introduction to multiprocessor architecture
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Project: 1 Hour(s) per week x 14 weeks
  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Introduction to multiprocessor architecture
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Project: 1 Hour(s) per week x 14 weeks
  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Introduction to multiprocessor architecture
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Project: 1 Hour(s) per week x 14 weeks

Reference week

 MoTuWeThFr
8-9     
9-10     
10-11     
11-12     
12-13     
13-14     
14-15     
15-16     
16-17     
17-18     
18-19     
19-20     
20-21     
21-22     

Related courses

Results from graphsearch.epfl.ch.