| Code: |
284267 |
| ECTS: | 5.0 |
| Lecturers in charge: |
prof. dr. sc.
Mladen Jurak
|
| Lecturers: |
prof. dr. sc.
Mladen Jurak
- Lectures prof. dr. sc. Mladen Jurak - Exercises |
| Take exam: | Studomat |
| Load: | |||||||
|
|||||||
| Description: | |||||||
COURSE AIMS AND OBJECTIVES: In the initial period of the development of computer technology, each new generation of computers was significantly faster than the previous one. This trend ended around 2005, and since then increasing the efficiency of programs has been possible mainly by using parallel execution on multiple processors, i.e. processor cores. Thus, parallel programming becomes a central topic of all computing curricula. Parallelism appears in a computer system at several levels: within each individual microprocessor core (vector operations), within a multi-core processor, due to the presence of accelerators in the system (for example, graphics cards) and finally in computer clusters. Each type of parallelism within the circuit corresponds to a specific type of development of parallel programs and corresponding support libraries. The objective of this course is to familiarize students with the basic models of parallel code development and related software tools. Students need to master vector code generation, parallel programming with threads, parallel programming with message passing, and programming of heterogeneous systems that (today) include a central processing unit and a graphics card. The software tools that will be used in the area of vector, multi-threaded and multi-processor programming are quite stable (OpenMP, C++ programming threads, MPI and the like), which is not the case with programming on graphics cards and other accelerators. There we have the possibility of using CUDA, HIP or OpenCL programming languages and OpenMP, OpenACC, SYCL programming interfaces, as well as programming models at a higher level of abstraction, such as Kokkos and Raja. The objectives of the course in this part will change depending on the positioning of these tools in the market. |
|||||||
| Literature: | |||||||
|
|||||||
| 1. semester Course not offered |
Izborni modul D - Znanstveno računanje, 1. godina - Regular study - Computer Science and Mathematics |
|
2. semester |
Izborni modul D - Znanstveno računanje, 1. godina - Regular study - Computer Science and Mathematics |
Monday 15-17h. Please register in advance by an e-mail.
Location: 220Monday 15-17h. Please register in advance by an e-mail.
Location: 220