Parallel and Distributed Computing

Course: Computer Systems and Networks Engineering

Structural unit: Faculty of Radiophysics, Electronics and Computer Systems

Title
Parallel and Distributed Computing
Code
ВБС 2.2
Module type
Вибіркова дисципліна для ОП
Educational cycle
First
Year of study when the component is delivered
2021/2022
Semester/trimester when the component is delivered
7 Semester
Number of ECTS credits allocated
4
Learning outcomes
The student must know: methods of parallel calculations for engineering problems; main directions of ensuring parallelism in computer systems; methods of developing parallel programs.
Form of study
Full-time form
Prerequisites and co-requisites
The study of the discipline involves students' knowledge of information from the courses "Computer Systems" and "Computer Architecture".
Course content
Definition of parallelism and distribution of calculations. Intraprocessor parallelism of calculations . OpenMP programming. Parallelling of tasks using OpenMP. Management of iteration distribution using OpenMP. Coordination of parallel calculations. MPI programming. Collective interactions in MPI. Derived data types in MPI. Models of computer systems with parallel and distributed computing. Reconfigure to MPI. The main provisions of heterogeneous calculations. CUDA programming. OpenCL programming. Metrics of parallel calculations. Methods of providing concurrency with computer computing.
Recommended or required reading and other learning resources/tools
1. Roman, Trobec. (2018) Introduction to Parallel Computing. From Algorithms to Programming on State-of-the-Art Platforms / Roman, Trobec, Boštjan Slivnik, Patricio Bulić, Borut Robič. (Springer Nature Switzerland AG 2018). 2. Tanenbaum, Andrew S. (2013) Structured computer organization / Andrew S. Tanenbaum, Todd Austin. -- 6th ed. (Pearson Education, Inc., publishing as Prentice Hall). 3. Patterson, David A. (2014) Computer organization and design: the hardware/software interface / David A. Patterson, John L. Hennessy. - 5th ed. (The Morgan Kaufmann series in computer architecture and design). 4. Stallings, William. (2016) Computer organization and architecture : designing for performance / William Stallings. - 10th ed. (Pearson Education, Inc., Hoboken) 5. Gregory R. Andrews. (2000) Foundations of Multithreaded, Parallel and Distributed Programming. Addison Wesley Longman, Inc 6. Intel® 64 and IA-32 Architectures Software Developer’s Manual
Planned learning activities and teaching methods
Lectures, laboratory classes, unsupervised work
Assessment methods and criteria
- Execution and protection of laboratory results - up to 60 points - Current assessment - on the materials of each of the content modules is a modular test, for each work you can get up to 10 points. - Final assessment - written exam - up to 30 points.
Language of instruction
Ukrainian

Lecturers

This discipline is taught by the following teachers

Oleksandr Viktorovich Samoshchenko
Faculty of Computer Engineering
Faculty of Radiophysics, Electronics and Computer Systems

Departments

The following departments are involved in teaching the above discipline

Faculty of Computer Engineering
Faculty of Radiophysics, Electronics and Computer Systems