High Performance Computing
Instructor: Salvatore Orlando
Goals
The objective is to acquire knowledge on models of parallel architectures, paradigm and environments of parallel programming, and performance evaluation of parallel systems.
The course presents the fundamental algorithmic techniques usually employed to solve in parallel significant application problems.
The course is mainly focused on the use of clusters of workstations as parallel platforms.
Requirements
The students is expected to have a good background in computer architectures, operating systems, computer networks, programming.
Contents
- Introduction: Motivations and use cases.
- Parallel architectures
- Parallel programming paradigms
- Parallelization techniques and issues: Decompositions, Mapping, Load balancing.
- Metrics for performance evaluation.
- Basics of parallel algorithms.
- Recurrent paradigms for parallelization.
- Libraries and languages for parallel programming.
- Laboratory work: use of message passing (MPI) and multithread libraries.
Recommended Reading List
Lecture notes.
A. Grama, A. Gupta, G. Karypis, V. Kumar. Introduction to Parallel Computing, Addison-Wesley, 2003.
The Sourcebook of Parallel Computing.
Edited by Jack Dongarra, Ian Foster, Geoffrey Fox, William Gropp,
Ken Kennedy, Linda Torczon, Andy White,
October 2002, 760 pages, ISBN 1-55860-871-0, Morgan Kaufmann Publishers.
I. Foster.
Designing and Building Parallel Programs.
Addison-Wesley, 1995, Versione online disponibile presso http://www-unix.mcs.anl.gov/dbpp.
B. Wilkinson, M. Allen.
Parallel Programming: Techniques and Applications Using Networked Workstation and Parallel Computers.
Prentice-Hall, 1999.
On-line Documents
Assessments
Written exam, project discussion, talk on a scholarly paper.
Teaching Methods
Class lectures.
Practical laboratory lectures.
Group work for laboratory projects.
Mailing list
Students can subscribe (unsubscribe) to the
mailing list of the course.
After the subscription, students can send email to the following address: calcpar@dsi.unive.it.
A confirmation email is requested to complete the message delivery.
Lecture Notes
- Introduction
-
Parallel Architectures
(PPTX file)
- Message Passing Programming
- Shared Memory Programming
- Parallel Programming Patterns
- Modeling and Performance Evaluation
- OpenMP
Assignments
Previous years materials
Slides, project assignments, etc.