BSC's proposal for handling data dependences in task based programming models has definitively influenced OpenMP 4.0, released last July.
Barcelona Supercomputing Center’s proposal for handling data dependences in task based programming models has definitively influenced OpenMP 4.0, released last July. Task-to-task synchronization in OpenMP is now supported through the specification of task dependencies.
This feature is already available in the open source OmpSs programming model, developed and distributed by the Barcelona Supercomputing Center. OmpSs has been demonstrated in real applications such as those used in European projects like Mont-Blanc, DEEP, TEXT and in the Intel-BSC Exascale Lab collaboration.
Its integration in the OpenMP standard - the most used programming model for shared memory in High Performance Computing- is recognition of BSC’s innovative work in programming models for parallel architectures. BSC has more than 15 years’ experience in proposing and implementing parallel programming models. Its researchers have been involved in OpenMP since the beginning, through cOMPunity, participating in the definition of the tasking model. Lately, with the inclusion of task dependences, BSC became an auxiliary member of the OpenMP consortium.
Jesus Labarta, Director of BSC Computer Science’s department says, “BSC proposals for expressing data flow and dependences between tasks allow unprecedented amounts of parallelism to be exposed and exploited under very asynchronous execution models. We are committed to programming models and intelligent runtimes research that is a key factor for future Exascale systems".
BSC’s research and development in programming models is performed by a team of more than 20 researchers and students. The topics covered by the team include compiler support, support for heterogeneous architectures, including GPUs and Intel MIC, support for distributed architectures or energy efficiency in Exascale platforms.