Aurora: Seamless Optimization of OpenMP Applications

Autor: Antonio Carlos Schneider Beck, Arthur Francisco Lorenzon, Charles Cardoso De Oliveira, Jeckson Dellagostin Souza
Rok vydání: 2019
Předmět:
Zdroj: IEEE Transactions on Parallel and Distributed Systems. 30:1007-1021
ISSN: 2161-9883
1045-9219
DOI: 10.1109/tpds.2018.2872992
Popis: Efficiently exploiting thread-level parallelism has been challenging for software developers. As many parallel applications do not scale with the number of cores, the task of rightly choosing the ideal amount of threads to produce the best results in performance or energy is not straightforward. Moreover, many variables may change according to the system at hand (e.g., application, input set, microarchitecture, number of cores) and even during execution. Existing solutions lack transparency (demand changes in the original code) or adaptability (do not automatically adjust to applications at run-time). In this scenario, we propose Aurora, an OpenMP framework that is completely transparent to both the designer and end-user. Without any code transformation or recompilation, it is capable of automatically finding, at run-time and with minimum overhead, the optimal number of threads for each parallel loop region and re-adapt in cases the behavior of a region changes during execution. When executing fifteen well-known benchmarks on four multi-core processors, Aurora improves the Energy-Delay Product by up to 98, 86 and 91 percent over the standard OpenMP execution, the OpenMP feature that dynamically adjusts the number of threads, and the Feedback-Driven Threading, respectively.
Databáze: OpenAIRE