Parallel and distributed applications

Code 569AA
Credits 9

Learning outcomes

Course Objective
The course illustrates the issues of parallel and distributed applications, by discussing approaches and solutions for different computing architectures and programming paradigms. For each of the topics covered, real-world applications and case studies will be presented.

Syllabus
1) Classes of applications
a) cpu-, network-, I/O-bound applications
b) decomposition techniques
c) common patterns in parallel applications
2) Parallel applications for:
a) chip multiprocessing (CMP) architectures
b) streaming computing
3) Distributed applications for
a) small to medium scale environments
b) large scale and geographically distributed environments

Oral exam and discussion of a laboratory project to be developed during the course.