< retour aux publications

Accurate Study and Optimization of Synchronization Barriers in a NoC based MPSoC Architecture

Auteur(s) : F. Rousseau

Doc. Source: Forum MPSoC 2017

Synchronization mechanisms have been a critical issue in the race toward the computing units parallelization observed for almost 20 years. They are used to preserve the initial application services even after the parallelization of the software tasks. For instance, in the OpenMP standard, synchronization mechanisms are added during the compilation phase depending on the specific preprocessor directives added by the programmers. But these synchronization mechanisms may slow down the execution if they are not correctly optimized. By using an emulation platform, we were able to run and to observe exact time slices of large applications on top of a NoC-based manycore architecture. The instrumentation of the emulation platform has allowed extracting, in a non-intrusive way, cycle accurate timing information of the synchronization barriers of the GNU OpenMP library. This study reveals that a non-useful time expensive function was called during the barrier awakening process leading to large waste of time. Hence, we detail the software optimization of this library allowing to save up to 80% of the awakening phase delay for a 16 cores system. Benefiting this optimization requires no specific care from the application programmer's point of view, but a library update.