Strumenti di programmazione per sistemi paralleli e distribuiti
Teacher: Dr. Massimo Coppola
Contact info
e-mail : [email protected]
Phone : 050 315 2992
Office location : CNR Reseach Area, ISTI-CNR, Building C, room 33
Course info
This page concerns the SPD course (535AA) for the academic year 2016-2017, which gives you 6 credits.
Be sure to alway check the NEWS section in this page.
Information about past editions of the SPD course can be found at the following links.
Timetable
Monday | 16-18 | L1 | (Polo Fibonacci) |
Wednesday | 16-18 | L1 | (Polo Fibonacci) |
Question time
Students should contact the teacher in advance by phone / e-mail. A different time can be agreed upon if needed.
Thursday | 16-18 | ISTI-CNR office |
News and Updates
First lesson is on Monday 20/2
There is a conflict with the P2P course on Monday morning, schedule will need to change starting next week. Who wishes to attend the SPD course should contact the teacher via email, and list the courses he/she plans to attend this semester, in order to find a suitable timeslot.
Report time slot conflicts between SPD and other courses to the teacher, there may be the opportunity to change the timetable and avoid them.
24/02/17 – Lesson on Monday is now in the 16-18 time slot.
15/03/17 Lesson posponed to 16/03
20/03/17 NO lesson on 22/3, it will be postponed to next week.
Course Journal
Project Work
Aim of the Course
The course will provide a description and analysis of a few key parallel and distributed programming platforms and models, starting from their theoretical foundations, where not covered by previous courses, and focusing on (1) existing standards for platforms and programming systems and (2) State-of-the-art solutions. The course will include practical use of those systems to develop simple applications.
See the presentation slides
here on the C.S. Dept. website.
Overall Program
The course will cover the following topics.
Parallel Programming systems/frameworks
MPI message-passing programming (the core part of the MPI 2.2 standard)
TBB Thread Building Blocks Multicore oriented, shared-memory programming framework
Massively Multicore computation and GPGPU frameworks: OpenCL (references to CUDA, Brooks+ possibly)
ASSIST a framework for parallel high-level parallel programming with autonomic management
Example Applications
Foundation, Technologies
Elementary mechanisms to distribute computation: message passing, shared memory, massive multicore
Basics of scheduling algorithms and resource management
Basics of Service Oriented Architectures SOA
Service oriented Platforms, Cloud Computing and Cloud Federations