Programming tools for parallel and distributed systems
Code 535AA
Credits 6
Learning outcomes
Objectives
The course deals with design, evaluation and utilization of programming tools and environments for parallel and distributed applications. The programming paradigms, and related cost models, concern high-performance stream- and data-parallel computations, distributed shared memory, adaptive and context-aware programming, high-performance event-based programming, real-time programming, programming of fault-tolerance strategies, and others. For these paradigms, static and dynamic tools are defined and their performances are evaluated through case studies in experimental and laboratory activites.
Syllabus
1. high-performance stream- and data-parallel computations,
2. distributed shared memory,
3. adaptive and context-aware programming,
4. high-performance event-based programming,
5. real-time programming,
6. programming of fault-tolerance strategies,
7. tools and environments
8. run-time supports
9. case studies
Exam consists in a written and an oral part.
The course deals with design, evaluation and utilization of programming tools and environments for parallel and distributed applications. The programming paradigms, and related cost models, concern high-performance stream- and data-parallel computations, distributed shared memory, adaptive and context-aware programming, high-performance event-based programming, real-time programming, programming of fault-tolerance strategies, and others. For these paradigms, static and dynamic tools are defined and their performances are evaluated through case studies in experimental and laboratory activites.
Syllabus
1. high-performance stream- and data-parallel computations,
2. distributed shared memory,
3. adaptive and context-aware programming,
4. high-performance event-based programming,
5. real-time programming,
6. programming of fault-tolerance strategies,
7. tools and environments
8. run-time supports
9. case studies
Exam consists in a written and an oral part.