Título:
|
Improving nanos6 dependency subsystem
|
Autor/a:
|
Álvarez Robert, David
|
Otros autores:
|
Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors; Barcelona Supercomputing Centre; Ayguadé Parra, Eduard; Beltran Querol, Vicenç |
Abstract:
|
El model de programació OmpSs-2 amplia el model bàsic de dependències d'OpenMP amb característiques avançades com dependències weak i en regions de memòria no contigües. Aquestes característiques també funcionen a través de diferents nivells de parentesc entre tasques, proporcionant un mecanisme de sincronització general i de gra fi. En el cas general, aquesta funcionalitat avançada simplifica la tasca de paral·lelitzar programes complexos i en millora el rendiment. No obstant això, la implementació actual del sistema de dependències a la llibreria Nanos6 és complexa i per tant difícil d'optimitzar per a certs casos. En aquest treball es dissenya, desenvolupa i avalua una nova implementació alternativa del sistema de dependències, amb l'objectiu de proporcionar un subconjunt de les característiques actual però centrant-se en el rendiment i la simplicitat. Addicionalment, s'incorpora a la llibreria un mecanisme per canviar entre ambdues implementacions en temps d'execució. |
Abstract:
|
The OmpSs-2 programming model extends the basic dependency model of OpenMP with advanced features such as weak dependencies and dependencies over non-contiguous memory regions. These features also work across different task-nesting levels, providing a general and fine-grained synchronization mechanism. In general, these advanced features simplify the parallelization of complex applications and also improve performance. However, the current implementation of the data dependency subsystem in the Nanos6 runtime is complex and thus difficult to optimize for certain use cases. In this work, a new alternative implementation of the dependency subsystem aiming to provide a subset of the current features but focusing instead in performance and simplicity is designed, developed and evaluated. Additionally, a mechanism to switch between both implementations at execution time is also added to Nanos6. |
Materia(s):
|
-Àrees temàtiques de la UPC::Informàtica -Parallel programming (Computer science) -Software engineering -OpenMP -Nanos6 -OmpSs -OmpSs-2 -paral·lel -paral·lelisme -C++ -dependències -dades -rendiment -llibreria -tasques -parallel -parallelism -dependencies -data -performance -runtime -dependency -tasks -Programació en paral·lel (Informàtica) -Enginyeria de programari |
Derechos:
|
|
Tipo de documento:
|
Trabajo/Proyecto fin de carrera |
Editor:
|
Universitat Politècnica de Catalunya
|
Compartir:
|
|