PRACE Training Course: Heterogeneous Programming on GPUs with MPI + OmpSs

NOTE: PATC courses do not have registration fee. You need to fill in an Application Form

You can now access the lecture notes under "Materials"

Wednesday, 23 May, 2012 - 09:00 to Thursday, 24 May, 2012 - 18:00

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.

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

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.


Course Outline

Day 1

Session 1 / 9am – 11am:

Introduction to OmpSs

Session 1 / 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

Session 2 / 3 pm- 6 pm:

OmpSs single node programming hands-on with GPUs

Day 2

Session 3/ 9am- 10 am:

Introduction  to MPI/OmpSs

Session 3/ 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.


Target group: 

Level: (All courses are designed for specialists with at least finished 1st cycle degree)

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


The course will take place in
Barcelona Supercomputing Centre,
within the UPC Campus Nord premises,
Vertex building, room 214.

How to arrive?: 

From the Airport

Barcelona airport is at 12 Km from the city. More information about Barcelona’s airport: You can arrive with different transport methods from the airport to BSC:

By taxi
In T1, you will find a taxi stand in the arrivals zone (P0) and in the Barcelona-Madrid air corridor; in T2, opposite terminals T2A, T2B and T2C. If they are available, they will show a green light with the text LIBRE or LLIURE (it means “available”). You can check fees at

By car
If you rent a car from the airport (T1), please leave “El Prat del Llobregat” and take C-32B. Continue along this route and head towards Ronda de Dalt / Lleida / Girona. Close to Barcelona, take route C-32 passing close to Cornellà del Llobregat and L’Hospitalet. Take B-20 and take Exit 10 called “Carretera d'Esplugues”. Take the street called “carrer del Gran Capità” and turn left towards Jordi Girona street.

By train
There is a Renfe suburban train. The airport station is situated opposite of terminal T2, and is connected to this terminal via an airbridge. There is also a Bus transit service between the Rail station and T1. From the airport to Barcelona Sants there is approximately 20 minutes journey. From this station, take the L3 (green line) in direction to “Zona Universitaria” and get off on the “Palau Reial” stop. You will have a 5-minutes walking distance to arrive to BSC. (

By Bus (Aerobus)

Airport stops: Bus stops at Terminal T1 and T2 (A, B, C) 

Downtown stops: This line ends at Plaça Catalunya (city center). Once there, you may take L3 of the underground to "Palau Reial" or "Zona Universitaria" stations.

From the City Centre

Campus Nord of Universitat Politècnica de Catalunya is located at the North-West corner of the city, at the end of the Green Line (L3) of the underground. In order to reach the Campus by public transport, it is advisable to use the underground. There are two stations near to the Campus, “Zona Universitària” and “Palau Reial”, both on L3.


There is no registration fee. The attendees would need to cover the expenses for travel, accommodation and meals.

  • 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.

Contact Us: 

prace [at] bsc [dot] es (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.


If you want to learn more about PRACE Project, visit the website.