OpenMP f2f meeting report
On this occasion there was not a specific break-out session focusing on interoperability within the Face to Face OpenMP meeting, but there was discussion about a new extension to OpenMP tasks that could solve many of the proposed use cases in the context of the INTERTWinE project and the Resource Manager's pause/resume interface. In a way, this new API could complement certain aspects of our proposal. The mechanism is based on external events entities that allow the synchronisation of tasks with external asynchronous services (such as CUDA services or MPI calls).
Within INTERTWinE Work Package 4 - Resource management and runtime interoperability - we are trying to implement the new OpenMP external event proposal in order to evaluate and compare it with the Resource Manager's pause/resume API.
Also in the task subcommittee we have started the discussion of a different dependence API aiming to expose OpenMP dependencies through opaque handlers. This mechanism will allow interaction with other software components (e.g. specific libraries) running within the same parallel program.
The external event and the dependence APIs proposals seem mature enough to enter the next OpenMP release (i.e OpenMP 5.0).
In the coming weeks, the OpenMP Language committee expects to close all pending issues and make the OpenMP 5.0 draft version open for comments. The specification’s quality control pass is expected to start by mid-July, along with discussion of the next steps needed to prepare the final release by next November.