Parallel and Distributed Programming
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
NIE-PDP | Z,ZK | 6 | 2P+2C | anglicky |
- Přednášející:
- Cvičící:
- Předmět zajišťuje:
- katedra počítačových systémů
- Anotace:
-
Due to the development of cloud, web, and communication technologies and due to the shift of the Moore law into parallelization of CPUs, parallel and distributed applications are becoming dominant. Students get acquainted with architectures of parallel and distributed computing systems and their models and with languages and environments for their programming. They learn the pattern designs for parallel and distributed programming and important parallel algorithms.
- Požadavky:
-
Basic sequential algorithmics, programming, the C/C++programming language, complexity theory, computer architecture and graph theory.
- Osnova přednášek:
-
1. Introduction into parallel and distributed programming
2. Introduction into OpenMP
3. Parallel algorithms for the state space search
4. Performance tuning in OpenMP
5. Parallel algorithms in OpenMP
6. Parallel sorting in OpenMP
7. Introduction into MPI
8. Distributed parallel architectures and interconnection networks
9. Collective communication algorithms
10. Parallel algorithms in OpenMP/MPI I
11. Parallel algorithms in OpenMP/MPI II
12. MapReduce frameworks (principles, Hadoop, Spark,..)
- Osnova cvičení:
-
1. Sequential algorithm implementation in C/C++.
2. Parallel algorithm implementation using OpenMP task parallel constructs.
3. Parallel algorithm implementation using OpenMP data parallel constructs.
4. Parallel algorithm implementation using MPI on cluster STAR.
5. Measurements of the parallel implementation performance
- Cíle studia:
-
Due to the development of cloud, web, and communication technologies and due to the shift of the Moore law into parallelization of CPUs, parallel and distributed applications are becoming dominant. Students get acquainted with architectures of parallel and distributed computing systems and their models and with languages and environments for their programming. They learn the pattern designs for parallel and distributed programming and important parallel algorithms.
- Studijní materiály:
-
[1] Mattson, T.G. - Sanders, B.A. - Massingill, B.L.: Patterns for Parallel Programming. Addison-Wesley Professional. 2004. 978-0321940780.
[2] Kumar, V. - Grama, A. - Gupta, A. - Karpis, G.: Introduction to Parallel Computing: Design and Analysis of Parallel Algorithms. Benjamin-Cummings. 1994. 0805331700.
[3] Miller, R. - Boxer, L.: Algorithms Sequential and Parallel: A Unified Approach. Pearson Education. 1999. 0130863734.
[4] Wilkinson, B. - Allen, M.: Parallel Programming: Techniques and Applications Using Networked Workstations and Parallel Computers. Prentice Hall. 1998. 0136717101.
[5] Jaja, J.: An Introduction to Parallel Algorithms. Addison-Wesley. 1992. 0201548569.
- Poznámka:
- Další informace:
- Pro tento předmět se rozvrh nepřipravuje
- Předmět je součástí následujících studijních plánů: