Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2018/2019

Multicore Systems

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
MI-MCS KZ 4 1P+2C Czech
Lecturer:
Jiří Kašpar
Tutor:
Jiří Kašpar
Supervisor:
Department of Computer Systems
Synopsis:

Students understand architecture of systems based on multicore processors with multiple threads per core, structure and usage of cache hierarchy with shared last level. They learn parallel algorithm classification, parallel programming technics, simulation and monitoring tools for measurement and optimization of parallel algorithms. After this course, students can design MTMD programs (Multiple Threads Multiple Data), measure and analyze latency and throughput of parallel algorithms and optimize them for contemporary multicore systems.

Requirements:

1. programming skills (assembler, C/C++ or C#),

2. OS Linux/Windows, networking,

3. BI-EIA, MI-PAP and MI-PAR are advantageous, but not strictly required.

Syllabus of lectures:

1.Multiprocessor systems, multicore processors, multithreaded processor cores. Hierarchy of caches in multicore processor, cache coherency protocols.

2.Synchronization primitives and data consistency in multiprocessor systems, memory models.

3.Parallel programming patterns for MTMD model, parallel data structures and algorithms and their behavior and optimization on multicore systems with multiple cache layers (cache conscious programming).

4.Methods of parallel algorithms measurement and optimization.

5.Parallel methods properties: deadlock-free, starvation-free, lock-free, wait-free.

6.Operating system impact on parallel program performance and its elimination. Critical path and its optimization.

Syllabus of tutorials:

1.Tutorial: Measurement of Intel cache hierarchy base properties.

2.Tutorial: Simulation of simple parallel algorithms.

3.Project assignment: measurement, simulation, evaluation and optimization of parallel algorithms.

4.Consultation.

5.Consultation. The 1st project checkpoint.

6.Consultation.

7.The 1st project results.

8.Consultation. Sponsors project assignment.

9.Consultation. The 2nd project checkpoint.

10.Consultation.

11.Consultation.

12.The 2nd project results.

13.The sponsors project results.

Study Objective:
Study materials:

1.Maurice Herlihy, Nir Shavit: The Art of Multiprocessor Programming.

2.Rauber, Thomas and Rünger, Gudula: Parallel Programming Models, Springer, 2010

3.David A. Patterson, John L. Hennessy: Computer Organization and Design: The Hardware/Software Interface, Fourth Edition

4.Ricardo Bianchini, Enrique V. Carrera and Leonidas Kontothanassis: Evaluating the Effect of Coherence Protocols on the Performance of Parallel Programming Constructs, 1998

5.Ricardo Bianchini, Leonidas Kontothanassis: Algorithms for Categorizing Multiprocessor Communication Under Invalidate and Update-Based Coherence Protocols, 1995

6.Bryan R. Buck,Jeffrey K. Hollingsworth: Using Hardware Performance Monitors to Isolate Memory Bottlenecks, 2000

Note:
Further information:
https://moodle.fit.cvut.cz/courses/MI-MCS/
Time-table for winter semester 2018/2019:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Mon
Tue
Fri
Thu
roomT9:348
Kašpar J.
16:15–17:45
(lecture parallel1)
Dejvice
NBFIT PC ucebna
roomT9:348
Kašpar J.
18:00–19:30
(lecture parallel1
parallel nr.101)

Dejvice
NBFIT PC ucebna
Fri
Time-table for summer semester 2018/2019:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2019-06-16
For updated information see http://bilakniha.cvut.cz/en/predmet2394906.html