Morew, Nicolas ; Norouzi, Mohammad ; Jannesari, Ali ; Wolf, Felix (2020)
Skipping Non-essential Instructions Makes Data-Dependence Profiling Faster.
26th International Conference on Parallel and Distributed Computing. Warsaw, Poland (24.-28.08.2020)
doi: 10.1007/978-3-030-57675-2_1
Konferenzveröffentlichung, Bibliographie
Kurzbeschreibung (Abstract)
Data-dependence profiling is a dynamic program-analysis technique to discover potential parallelism in sequential programs. Unlike purely static analysis, which may overestimate the number of dependences because it does not know many pointers values and array indices at compile time, profiling has the advantage of recording data dependences that actually occur at runtime. But it has the disadvantage of significantly slowing down program execution, often by a factor of 100. In our earlier work, we lowered the overhead of data-dependence profiling by excluding polyhedral loops, which can be handled statically using certain compilers. However, neither does every program contain polyhedral loops, nor are statically identifiable dependences restricted to such loops. In this paper, we introduce an orthogonal approach, focusing on data dependences between accesses to scalar variables - across the entire program, inside and outside loops. We first analyze the program statically and identify memory-access instructions that create data dependences that would appear in any execution of these instructions. Then, we exclude these instructions from instrumentation, allowing the profiler to skip them at runtime and avoid the associated overhead. We evaluate our approach with 49 benchmarks from three benchmark suites. We improved the profiling time of all programs by at least 38%, with a median reduction of 61% across all the benchmarks.
Typ des Eintrags: | Konferenzveröffentlichung |
---|---|
Erschienen: | 2020 |
Autor(en): | Morew, Nicolas ; Norouzi, Mohammad ; Jannesari, Ali ; Wolf, Felix |
Art des Eintrags: | Bibliographie |
Titel: | Skipping Non-essential Instructions Makes Data-Dependence Profiling Faster |
Sprache: | Englisch |
Publikationsjahr: | 18 August 2020 |
Verlag: | Springer |
Buchtitel: | Euro-Par 2020: Parallel Processing |
Reihe: | Lecture Notes in Computer Science |
Band einer Reihe: | 12247 |
Veranstaltungstitel: | 26th International Conference on Parallel and Distributed Computing |
Veranstaltungsort: | Warsaw, Poland |
Veranstaltungsdatum: | 24.-28.08.2020 |
DOI: | 10.1007/978-3-030-57675-2_1 |
Kurzbeschreibung (Abstract): | Data-dependence profiling is a dynamic program-analysis technique to discover potential parallelism in sequential programs. Unlike purely static analysis, which may overestimate the number of dependences because it does not know many pointers values and array indices at compile time, profiling has the advantage of recording data dependences that actually occur at runtime. But it has the disadvantage of significantly slowing down program execution, often by a factor of 100. In our earlier work, we lowered the overhead of data-dependence profiling by excluding polyhedral loops, which can be handled statically using certain compilers. However, neither does every program contain polyhedral loops, nor are statically identifiable dependences restricted to such loops. In this paper, we introduce an orthogonal approach, focusing on data dependences between accesses to scalar variables - across the entire program, inside and outside loops. We first analyze the program statically and identify memory-access instructions that create data dependences that would appear in any execution of these instructions. Then, we exclude these instructions from instrumentation, allowing the profiler to skip them at runtime and avoid the associated overhead. We evaluate our approach with 49 benchmarks from three benchmark suites. We improved the profiling time of all programs by at least 38%, with a median reduction of 61% across all the benchmarks. |
Freie Schlagworte: | LOEWE|SF4.0 |
Fachbereich(e)/-gebiet(e): | 20 Fachbereich Informatik 20 Fachbereich Informatik > Parallele Programmierung |
Hinterlegungsdatum: | 04 Apr 2024 09:10 |
Letzte Änderung: | 02 Jul 2024 09:40 |
PPN: | 519501446 |
Export: | |
Suche nach Titel in: | TUfind oder in Google |
Frage zum Eintrag |
Optionen (nur für Redakteure)
Redaktionelle Details anzeigen |