Course: Parallel Programming

» List of faculties » PRF » KI
Course title Parallel Programming
Course code KI/PPG
Organizational form of instruction Lecture + Lesson
Level of course Bachelor
Year of study not specified
Semester Summer
Number of ECTS credits 5
Language of instruction Czech
Status of course Compulsory-optional
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Lísal Martin, prof. Ing. DSc.
  • Fišer Jiří, Mgr. Ph.D.
  • Posel Zbyšek, doc. RNDr. Ph.D.
Course content
1. Principles and classification of parallel systems (Flynn's taxonomy, massively parallel systems, SMP). 2. Efficiency of parallelization (Amdahl's law, GustafsonBarsis' law). 3. Tasks and threads. Operating system support for parallelism. 4. Memory. Low-level access (caching). 5. OpenMP in C. 6. Practical application of OpenMP. 7. Parallel-LINQ and parallel tasks in C#. 8. Practical application of Parallel-LINQ. 9. OpenCL. 10. Practical application of OpenCL. 11. MPI. 12. Practical application of MPI. 13. Automatic parallelization.

Learning activities and teaching methods
unspecified
Learning outcomes
Introductory course in parallel programming is based on classification and description of parallel systems and their basic principles. The course is focused on SMP systems with shared memory using threads (OpenMPI, Parallel-LINQ), however both asymmetrical systems (GPGPU) and massive parallelism are presented as well. Parallel implementation of basic algorithms and operations are presented in seminars.

Prerequisites
unspecified
KI/PGL1

Assessment methods and criteria
unspecified
homework assignment Implementation of a parallel algorithm on at least two platforms with a benchmark and discussion on efficiency (based on the input parameters).
Recommended literature
  • Albahari J. C# 4.0 in a Nutshell: The Definitive Reference. O'Reilly Media, 2010. ISBN 978-0596800956.
  • AMD. OpenCL Zone.
  • Chandra R. Parallel Programming in OpenMP. Morgan Kaufmann, 2000. ISBN 978-1558606715.
  • Lísal M. Paralelní počítání. Univerzita J.E.Purkyně, 2006. ISBN 80-7044-784-2.
  • M. Lísal. Paralelní programování s aplikacemi. Ústí n. Lab., 2007.
  • Quinn M. Parallel Programming in C with MPI and OpenMP. McGraw-Hill, 2003. ISBN 978-0072822564.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester
Faculty: Faculty of Science Study plan (Version): Information Systems (A14) Category: Informatics courses 2 Recommended year of study:2, Recommended semester: Summer