Table of Contents

Perspectives in Parallel Computing


The course will introduce several programming environments used to implement parallel applications on modern parallel architectures. A detailed introduction of the available structured parallel programming environments will be given. Optimization problems relative to different non functional concerns (performance, power management, fault tolerance) will also be described and typical experiences in different applicative domains will be discussed. Overall, the course will give the student a good perspective on the kind of problems to be solved when tackling the efficient programming of (massively) parallel systems as well as a basic knowledge relative to state-of-the-art parallel programming frameworks.


Two different kind of exams will be possible: a) the student may agree with a teacher an argument and prepare a seminar illustrating the main results relative to argument, or b) the student may agree with the teacher an application and then proceed to parallelize the application using one of the programming frameworks presented in the course.

Time table

All lessons in Sala Seminari Ovest, unless differently stated

Day Hour Argument
May 13 11am-1pm Introduction: hardware pressures
May 15 11am-1pm Parallelism: measures of interests, typical parallel patterns, sample parallel environments
May 22 11am-1pm Parallel Design patterns: an introduction
May 27 9am-11am Algorithmic skeletons: introduction
May 29 11am-1pm More on algorithmic skeletons/design patterns
June 3 11am-1pm Behavioural skeletons
June 5 3-5pm Parallel building blocks
June 9 3-5pm FastFlow (Seminari EST)
June 10 3-5pm Exam arguments (advanced environments + applications) (back to Seminari Ovest)
No more lessons, waiting for student's seminars …
Nov 24 3pm T. De Matteis Introduction to Apache Storm (slides)
Nov 27 3pm D. De Sensi Reducing Power Consumption of Parallel Computations slides
Dec 4 3 pm D. Griebler Stream parallelism in multicores slides

Support Material


Material Download
First two lessons PDF
Design pattern slides PDF
Algorithmic skeleton slides PDF
Behavioural skeleton slides PDF
FastFlow PDF
Exam theme slides PDF