Coursebooks 2017-2018

PDF
 

Introduction to multiprocessor architecture

CS-307

Lecturer(s) :

Falsafi Babak

Language:

English

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

- Forms of parallelism
- Parallel programming models
- Cache coherence
- Memory consistency
- Synchronization
- Interconnection networks
- Software efficiency & optimization
- GPU architecture & programming

Keywords

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

Learning Prerequisites

Required courses

CS-206 Concurrency

CS-208 Computer architecture / Architecture des Ordinateurs

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:

Teaching methods

Lectures, homework and project

Assessment methods

mid-term and final

Supervision

Office hours Yes
Assistants Yes

Resources

Websites

In the programs

Reference week

 MoTuWeThFr
8-9     
9-10     
10-11     
11-12     
12-13     
13-14     
14-15     
15-16 CM3   
16-17    
17-18 INF3   
18-19     
19-20     
20-21     
21-22     
 
      Lecture
      Exercise, TP
      Project, other

legend

  • Autumn semester
  • Winter sessions
  • Spring semester
  • Summer sessions
  • Lecture in French
  • Lecture in English
  • Lecture in German