15-16 May 2013
BSC, Barcelona
CET timezone
All PATC Courses do not charge fees.


The course 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.

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 kernels with OmpSs on clusters of GPUs

For trainees with some theoretical and practical knowledge, some programming experience.

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.

  • Good knowledge of C/C++
  • Basic knowledge of CUDA/OpenCL
  • Basic knowledge of Paraver/Extrae

Material for practical sessions will be provided during the course, and it is also interesting that students can provide their own application(s) for session 4, free hands-on.

You are expected to come with your own laptop with either linux, windows or MacOS operating system.

BSC, Barcelona
Course Program Outline:

Day 1

Session 1 
9am – 11am:
Introduction to OmpSs
11:30am – 1pm: OmpSs single node programming hands-on

Lunch Break 1pm to 2pm

Session 2
2 pm- 3 pm:
More on OmpSs: GPU/CUDA programming
3 pm- 6 pm: OmpSs single node programming hands-on with GPUs

Day 2

Session 3
9am- 10 am:
Introduction  to MPI/OmpSs
10am- 1 pm: MPI/OmpSs hands-on

Lunch Break 1pm to 2pm

Session 4/ 2pm- 6 pm: Free hands-on: Students use OmpSs environment with prepared examples, except in the free hands-on session were they can bring their own application.


If you have any questions, please consult the course forum page or click on the support link on the left to send an email to the local organisers.