Design and implementation of role-shifting threads in the LLVM runtime
Visualitza/Obre
Estadístiques de LA Referencia / Recolecta
Inclou dades d'ús des de 2022
Cita com:
hdl:2117/376133
Tipus de documentProjecte Final de Màster Oficial
Data2022-07-01
Condicions d'accésAccés obert
Tots els drets reservats. Aquesta obra està protegida pels drets de propietat intel·lectual i
industrial corresponents. Sense perjudici de les exempcions legals existents, queda prohibida la seva
reproducció, distribució, comunicació pública o transformació sense l'autorització del titular dels drets
Abstract
Efficiency is a must in the HPC world. Supercomputers are extensively used in public research institutions, and the CPU time is limited and should be used responsibly. Users can improve their applications to that end, but tools and programming models must continue improving accordingly. Nowadays, supercomputers are heterogeneous machines and keep increasing the number of cores. Making all the software stack, from applications to runtimes, more malleable and flexible should be one of the community goals. It is not only necessary for the heterogeneity of the resources, but it will also help deal with system noise, load imbalances, communication inefficiencies, and dynamic workloads. This thesis presents the role-shifting threads, an evolution of the current OpenMP threads designed to improve the malleability and flexibility of the model. Depending on their roles, when not required in a parallel region, the threads may be used for other purposes. The free agent role has been added to the model, aiming to execute explicit tasks outside parallel regions. In addition, the Clang compiler has been modified to comply with the additions to the runtime. Furthermore, the role-shifting model has been integrated with the Dynamic Load Balance (DLB) library, used to dynamically solve imbalances in MPI+OpenMP applications. All software is released open-source. The utility of the role-shifting threads, and the free agent role, is demonstrated with three real-world scientific applications, one of them with a coupling case. Speedups from 1.192x to 2.44x are reached with the new runtime compared to a vanilla run, demonstrating the potential of this new model.
MatèriesHigh performance computing, OpenMP (Application program interface), Càlcul intensiu (Informàtica)
TitulacióMÀSTER UNIVERSITARI EN INNOVACIÓ I RECERCA EN INFORMÀTICA (Pla 2012)
Col·leccions
Fitxers | Descripció | Mida | Format | Visualitza |
---|---|---|---|---|
171446.pdf | 1,465Mb | Visualitza/Obre |