Back to Search Start Over

Fast data-dependence profiling through prior static analysis.

Authors :
Norouzi, Mohammad
Morew, Nicolas
Ilias, Qamar
Rothenberger, Lukas
Jannesari, Ali
Wolf, Felix
Source :
Parallel Computing. Feb2024, Vol. 119, pN.PAG-N.PAG. 1p.
Publication Year :
2024

Abstract

Data-dependence profiling is a program-analysis technique for detecting parallelism opportunities in sequential programs. It captures data dependences that actually occur during program execution, filtering parallelism-preventing dependences that purely static methods assume only because they lack critical runtime information, such as the values of pointers and array indices. Profiling, however, suffers from high runtime overhead. In our earlier work, we accelerated data-dependence profiling by excluding polyhedral loops that can be handled statically using certain compilers and eliminating scalar variables that create statically-identifiable data dependences. In this paper, we combine the two methods and integrate them into DiscoPoP, a data-dependence profiler and parallelism discovery tool. Additionally, we detect reduction patterns statically and unify the three static analyses with the DiscoPoP framework to significantly diminish the profiling overhead and for a wider range of programs. We have evaluated our unified approaches with 49 benchmarks from three benchmark suites and two computer simulation applications. The evaluation results show that our approach reports fewer false positive and negative data dependences than the original data-dependence profiler and reduces the profiling time by at least 43%, with a median reduction of 76% across all programs. Also, we identify 40% of reduction cases statically and eliminate the associated profiling overhead for these cases. • Presenting a unified framework for hybrid data-dependence analysis. • Implementing the approach as an extension to DiscoPoP's data-dependence profiler. • Introducing a method for detecting parallel reduction patterns statically. • Evaluating the approach with two larger-scale applications and 49 benchmarks. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
01678191
Volume :
119
Database :
Academic Search Index
Journal :
Parallel Computing
Publication Type :
Academic Journal
Accession number :
175791640
Full Text :
https://doi.org/10.1016/j.parco.2024.103063