[ONLINE] PATC: Heterogeneous Programming on GPUs with MPI & OmpSs

Fecha: 08/Mar/2021 Time: 15:00 - 12/Mar/2021 Time: 18:30

The course will be online via Zoom.

Target group: Level: INTERMEDIATE: for trainees with some theoretical and practical knowledge; those who finished the beginners course ADVANCED: for trainees able to work independently and requiring guidance for solving complex problems

Cost: There is no registration fee. The course is free of charge.

Primary tabs


The tutorial will motivate the audience on the need for portable, efficient programming models that put less pressure on program developers while still getting good performance for clusters and clusters with GPUs, and heterogeneous environments with FPGAs.

More specifically, the tutorial will:

  • Introduce the hybrid MPI/OmpSs parallel programming model for future exascale systems
  • Demonstrate how to use MPI/OmpSs to incrementally parallelize/optimize:
    • MPI applications on clusters of SMPs, and
    • Leverage CUDA and OpenCL kernels with OmpSs on clusters of GPUs
  • Introduce the OmpSs@FPGA programming model, how to write, compile and execute applications on FPGAs
  • Show the "implements" feature to explot parallelism across cores and IP cores
  • Analyze the performance of OmpSs@FPGA applications and tune them for the target architecture



Good knowledge on the Linux command line environment (commands, text editors, GNU compilers...)
Good knowledge of C/C++
Basic knowledge of CUDA/OpenCL and/or Vivado HLS
Basic knowledge of Paraver/Extrae

Please download and carefully read the following instructions regarding the logistics participants enrolling online PATC at BSC are expected to follow.

Learning Outcomes

The students who finish this course will be able to develop benchmarks and simple applications with the MPI/OmpSs programming model to be executed in clusters and clusters of GPUs, and with the OmpSs@FPGA, to be executed on FPGA boards, like the Zedboard, or Xilinx ZCU102 and Alveo.









Academic Staff

Course Convener: Xavier Martorell, CS/Programming Models

Lecturers: Xavier Teruel, Daniel Jiménez-González, Carlos Álvarez, Toni Navarro, Kevin Sala, Manuel Arenaz (Appentra)



• The User may only download, make and retain a copy of the materials for his/her use for non‐commercial and research purposes.

• The User may not commercially use the material, unless has been granted prior written consent by the Licensor to
do so; and cannot remove, obscure or modify copyright notices, text acknowledging or other means of identification or disclaimers as they appear.

• For further details, please contact BSC‐CNS patc [at] bsc [dot] es

Further information

All PATC Courses at BSC do not charge fees.

In the context of virtual meetings, the Organiser may facilitate live webstreaming and audio recording. You have the option to opt out of inclusion in recordings by contacting our Education&Training team.

CONTACT US for further details about MSc, PhD, Post Doc studies, exchanges and collaboration in education and training with BSC.
For further details about Postgraduate Studies in UPC - Barcelona School of Informatics (FiB), visit the website

Sponsors: BSC and PRACE 6IP project are funding the PATC @ BSC training events.
If you want to learn more about PRACE Project, visit the website.