Parallel algorithms

In the introductory lectures, we will focus on general approaches to design of parallel algorithms and their properties important for understanding the fundamental principles of parallel and distributed algorithms. Subsequently we will talk about fundamental parallel algorithms; typically, constituting cornerstones of algorithms for real-world problems. The laboratory exercise will be aimed at hardware platform commonly used in practice.

Code
B4M35PAG
Semester
Winter
Form of study
Fulltime
Range
2P+2S
Capacity
20
Occupied
11
Credits
6
Completion
Assessment + Examination
Language
Czech
Lectures contents

1. Introduction to parallel computing
2. Principles of parallel and distributed algorithms design
3. Basic communication operations
4. Properties of parallel and distributed algorithms
5. Sorting
6. Matrix operations
7. Graph algorithms I.
8. Graph algorithms II.
9. Combinatorial algorithms
10. Dynamic programming and metaheuristic algorithms
11. Algorithms in linear algebra
12. Fast Fourier transform
13. Distributed algorithms in Ad Hoc networks

Tutorials contents

1. Pthreads
2. Semester project assignment
3. Advanced OpenMP Constructs
4. Semester project consultation
5. Sorting
6. Semester project consultation
7. Open MPI
8. Distributed algorithms in Open MPI
9. Semester project consultation
10. Parallel graph algorithms
11. Semester project consultation
12. Presentation of Semester projects
13. Assessment