Xavier Teruel 's project

OpenMP Extensions

The parallel programming model group has been working with the OpenMP specification since the creation of BSC in 2005. First becoming part of the cOMPunity group (since 1998) and later on as an auxiliary member (since 2013).

Many of the ideas from OmpSs and StarSs have been introduced into the OpenMP specification. Starting from the version 3.0, released on May 2008, OpenMP included the support for asynchronous tasks. BSC provided the reference implementation using the Nanos4 run-time library and the Mercurium C/C++ source-to-source compiler. This reference implementation was used to measure the benefits that tasks can provide to the programming model. Later, on its version 4.0 released on July 2013, OpenMP introduced tasks dependences, which allow fine-grain synchronization between tasks and that were included in StarSs/OmpSs as part of its main philosophy. The last 4.5 specification (November 2015) includes the task priority clause, allowing the programmers to provide hints to the runtime task scheduler about the importance of a task. Currently we are working on a task reduction mechanism which will allow task to participate in the computation of a reduction pattern.

The main goal of this research line is to serve as the technology transfer process within the parallel programming model group. Investigate different programming techniques which are currently at the research stage and push them into the OpenMP specificatioy to ensure these technological developments can be applied in real systems.

Related entries of the project:

Follow me at:

News & Events

OpenMP F2F 2018-2

A good week in Bordeaux, France focused on closing different open topics in the specification and many of those who have been discussed during past weeks have been shaping up and they are in good condition to go through the committee’s votes.

OpenMP tasking at ISC 2018

An advanced tutorial using the tasking model of the OpenMP standard. This course includes recent addition of OpenMP 4.5, being all the lecturers part of the OpenMP language committee.


Last Face to Face meeting before the end of the project and we have report the work progress for the different work packages and several technical sessions in a one-and-a-half-day meeting in Stockholm, Sweden.

PATC (May, 2017)

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.

OpenMP F2F 2018-1

We have done a very good progress towards the future of the OpenMP 5.0 specification. We have discussed many issues and voted several tickets that finally have already been included in the specification (or will do in the short term).

OmpSs demos at SC 2017

Two short demos at the exhibition center showing the basic concepts of the OmpSs programming model. See you in the BSC booth (#1975).