TY - GEN
T1 - Using MPI communication patterns to guide source code transformations
AU - Preissl, Robert
AU - Schulz, Martin
AU - Kranzlmüller, Dieter
AU - De Supinski, Bronis R.
AU - Quinlan, Daniel J.
PY - 2008
Y1 - 2008
N2 - Optimizing the performance of HPC software requires a high-level understanding of communication patterns as well as their relation to source code structures. We describe an algorithm to detect communication patterns in parallel traces and show how these patterns can guide static code analysis. First, we detect patterns that identify potential bottlenecks in MPI communication traces. Next, we associate the patterns with the corresponding nodes in an abstract syntaxtree using the ROSE compiler framework. Finally we perform static analysis on the annotated control flow and system dependence graphs to guide transformations such as code motion or the automatic introduction of MPI collectives.
AB - Optimizing the performance of HPC software requires a high-level understanding of communication patterns as well as their relation to source code structures. We describe an algorithm to detect communication patterns in parallel traces and show how these patterns can guide static code analysis. First, we detect patterns that identify potential bottlenecks in MPI communication traces. Next, we associate the patterns with the corresponding nodes in an abstract syntaxtree using the ROSE compiler framework. Finally we perform static analysis on the annotated control flow and system dependence graphs to guide transformations such as code motion or the automatic introduction of MPI collectives.
UR - http://www.scopus.com/inward/record.url?scp=47749130103&partnerID=8YFLogxK
U2 - 10.1007/978-3-540-69389-5_29
DO - 10.1007/978-3-540-69389-5_29
M3 - Conference contribution
AN - SCOPUS:47749130103
SN - 3540693882
SN - 9783540693888
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 253
EP - 260
BT - Computational Science - ICCS 2008 - 8th International Conference, Proceedings
T2 - 8th International Conference on Computational Science, ICCS 2008
Y2 - 23 June 2008 through 25 June 2008
ER -