This course gives beginner programmers an introduction to parallel programming.Parallel programming involves breaking down of a larger problem into smaller ones and dealing with them. Instructions on that are delivered to multiple processors, which will execute necessary calculations in parallel – hence the name. On this course, you will explore the fundamentals of parallel programming using C, C++, Python, Fortran, CUDA/OpenCL programming languages. The course is delivered in a four days format using UL-FME’s training facilities. It is taught using a variety of methods including formal lectures, practical exercises, programming examples and informal tutorial discussions.
This course is a PRACE training centre event.
Target audience:
The target audience consists of postgraduate students and young researchers of technical and natural sciences and engineers from industry, where supercomputing can be offer a competitive advantage (automotive, electronic, material industry), logistics, etc.
This training is intended for users established in the European Union or a country associated with Horizon 2020. You can read more about the countries associated with Horizon2020 here https://ec.europa.eu/info/research-and-innovation/statistics/framework-programme-facts-and-figures/horizon-2020-country-profiles_en
Perequisite knowledge:
For the hands-on sessions participants should know how to work on the Unix/Linux command line and have intermediate skills in programming with C/C++. Since the focus of the school is on parallelization, participants have to be familiar with the topic and must have basic knowledge in OpenMP and MPI.
Skills to be gained:
At the end of the course the student will be able to:
- learn how to use OpenMP (Open MultiProcessing) for incremental parallelisation within a single multicore shared memory paradigm
- learn how to use the MPI (Message Passing Interface) message passing standard to control communication between two processes, subroutines, or functions within a program
- get an introduction to the OpenMPI library project, used by TOP500 supercomputers, which aims to create a single worldclass open source MPI implementation based on best practice
- learn how to express numerical problems in parallel programming paradigms, gaining an awareness of potential design and performance pitfalls in heterogeneous architectures
- get an introduction to hybrid and accelerated paradigms (CUDA, OpenCL)
Event is organised by LECAD Laboratory, University of Ljubljana, Slovenia.
Participation is free of charge!
In light of COVID-19 situation, this will be an online event.
ZOOM link: https://us06web.zoom.us/j/88989235409?pwd=TWRybGFpNTJGTjNnOExuekpOZDZXdz09