Course: Parallel Programming

» List of faculties » FAV » KIV
Course title Parallel Programming
Course code KIV/PPR
Organizational form of instruction Lecture + Tutorial
Level of course Master
Year of study not specified
Semester Winter
Number of ECTS credits 6
Language of instruction Czech, English
Status of course unspecified
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Demko Jan, doc. Ing. Ph.D.
Course content
1. Topology and architecture of a parallel system 2. Temporal logic and failure awareness 3. Manycore systems 4. Instruction-level paralelism 5. Vectorization 7. Transformation of ordered-variable problem to a parallelizable form 8. Parallel AI 9. Case study 10. Advanced techniques of distributed computing 11. Distribued intelligence

Learning activities and teaching methods
Lecture supplemented with a discussion, Skills demonstration, Task-based study method, Seminar classes, Individual study
  • Preparation for an examination (30-60) - 104 hours per semester
  • Graduate study programme term essay (40-50) - 52 hours per semester
prerequisite
Knowledge
aplikovat základní znalosti počítačových sítí
používat funkce operačního systému pro práci s vlákny
aplikovat znalosti základů operačních systémů
Skills
programovat v pointerovém jazyce, např. C či C++
nainstalovat a použít knihovnu jiného vývojáře
Competences
N/A
learning outcomes
Knowledge
popsat možnosti paralelizace kódu pro SMP
popsat možnosti paralelizace pro CPU+GPGPU
orientovat v technologiích pro paralelní výpočty
popsat principy a vlastnosti paralelních a distribuovaných systémů, včetně plánování, koordinace, synchronizace a komunikace procesů, a způsoby komunikace běžnými síťovými protokoly
Skills
rozhodnout se, jakou technologii použít pro vývoj paralelního programu
vytvořit paralelní program pro SMP CPU a GPGPU
Competences
N/A
teaching methods
Knowledge
Self-study of literature
Lecture supplemented with a discussion
Task-based study method
Skills
Students' portfolio
Individual study
Competences
Lecture supplemented with a discussion
assessment methods
Knowledge
Written exam
Seminar work
Combined exam
Group presentation at a seminar
Skills
Seminar work
Group presentation at a seminar
Individual presentation at a seminar
Combined exam
Competences
Written exam
Combined exam
Recommended literature
  • Ali Sunyaev. Internet Computing: Principles of Distributed Systems and Emerging Internet-Based Technologies. 2020. ISBN 978-3030349561.
  • Björn Andrist, Viktor Sehr. C++ High Performance: Master the art of optimizing the functioning of your C++ code. 2020. ISBN 978-1839216541.
  • Dahlia Malkhi. Concurrency: The Works of Leslie Lamport. 2019. ISBN 978-1450372701.
  • James Reinders, Ben Ashbaugh, James Brodman, Michael Kinsner, John Pennycook, Xinmin Tian. Data Parallel C++: Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL. 2020. ISBN 978-1484255735.
  • Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger. Sequential and Parallel Algorithms and Data Structures: The Basic Toolbox. 2019. ISBN 978-3030252083.
  • Rob H. Bisseling. Parallel Scientific Computation: A Structured Approach Using BSP. 2020. ISBN 978-0198788355.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester