9600-1028/02 – Introduction to programming of HPC systems (ZPHPC)

Gurantor departmentIT4InnovationsCredits6
Subject guarantorIng. Ondřej Meca, Ph.D.Subject version guarantorMgr. Branislav Jansík, Ph.D.
Study levelundergraduate or graduateRequirementCompulsory
Year1Semestersummer
Study languageEnglish
Year of introduction2019/2020Year of cancellation2021/2022
Intended for the facultiesFEIIntended for study typesFollow-up Master
Instruction secured by
LoginNameTuitorTeacher giving lectures
JAN0369 Mgr. Branislav Jansík, Ph.D.
RIH0042 doc. Ing. Lubomír Říha, Ph.D.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Examination 2+4

Subject aims expressed by acquired skills and competences

The course will provide the basics of creating parallel applications, including parallel processing and optimization techniques, depending on the target parallel architecture. Student will be able to: - actively use the new concepts of parallel programming - analyze the algorithm, propose a suitable decomposition for its parallelization - analyze the efficiency of the parallelization design - implement and optimize algorithm using processor kernel-level parallelization, using multi-core (multicore (CPU) and manycore (MIC) computing capabilities) through OpenMP directives and using multiple computational computing power through MPI inter-process communications.

Teaching methods

Lectures
Seminars
Tutorials

Summary

Compulsory literature:

1. Michael McCool (Author), James Reinders (Author), Arch Robison (Author), Structured Parallel Programming: Patterns for Efficient Computation Paperback – June 25, 2012 2. http://mpi-forum.org, MPI: A Message-Passing Interface Standard 3. http://openmp.org, OpenMP Application Program Interface

Recommended literature:

1. http://software.intel.com, Optimization and Performance Tuning for Intel® Xeon Phi™ Coprocessors - Part 1: Optimization Essentials 2. Intel® 64 and IA-32 Architectures Optimization Reference Manual 3. High Performance Parallelism Pearls: Multicore and Many-core Programming Approaches Paperback – November 17, 2014 by James Reinders (Author), James Jeffers (Author)

Way of continuous check of knowledge in the course of semester

E-learning

Other requirements

Knowledge of the C / C ++ or Fortran programming language in any version Knowledge of instruction-level programming is recommended but not required.

Prerequisities

Subject has no prerequisities.

Co-requisities

Subject has no co-requisities.

Subject syllabus:

1. Introduction to HPC, Parallel Programming and Architectures of Current Microprocessors 2. Decomposition algorithms for parallelization, oriented acyclic graphs 3. Optimization techniques for instruction-level parallelization, explicit directives, and instruction-level parallelization 4. Programming parallel threads using OpenMP directives 5. Basic inter-process communication with MPI library, hybrid programming 6. Methods of analytical modeling of the effectiveness of parallel algorithms

Conditions for subject completion

Full-time form (validity from: 2019/2020 Winter semester, validity until: 2021/2022 Summer semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of pointsMax. počet pokusů
Examination Examination 100 (100) 51 3
        attendance to exercises Other task type 30  0
        MPI project Project 25  0
        CUDA project Project 25  0
        oral exam Oral examination 20  0 3
Mandatory attendence participation: - Attendance on exercises - Elaboration of projects - Oral exam

Show history

Conditions for subject completion and attendance at the exercises within ISP: Completion of all mandatory tasks within individually agreed deadlines.

Show history

Occurrence in study plans

Academic yearProgrammeBranch/spec.Spec.ZaměřeníFormStudy language Tut. centreYearWSType of duty
2021/2022 (N0541A170008) Computational and Applied Mathematics (S01) Applied Mathematics P English Ostrava 1 Compulsory study plan
2021/2022 (N0541A170008) Computational and Applied Mathematics (S02) Computational Methods and HPC VM P English Ostrava 1 Compulsory study plan
2020/2021 (N0541A170008) Computational and Applied Mathematics (S02) Computational Methods and HPC VM P English Ostrava 1 Compulsory study plan
2020/2021 (N0541A170008) Computational and Applied Mathematics (S01) Applied Mathematics P English Ostrava 1 Compulsory study plan
2019/2020 (N0541A170008) Computational and Applied Mathematics (S01) Applied Mathematics P English Ostrava 1 Compulsory study plan
2019/2020 (N0541A170008) Computational and Applied Mathematics (S02) Computational Methods and HPC VM P English Ostrava 1 Compulsory study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner

Assessment of instruction

Předmět neobsahuje žádné hodnocení.