Abstract | ||
---|---|---|
The steady increase of parallelism in high-performance computing platforms implies that communication will be most important in large-scale applications. In this work, we tackle the problem of transparent optimization of large-scale communication patterns using online compilation techniques. We utilize the Group Operation Assembly Language (GOAL), an abstract parallel dataflow definition language, to specify our transformations in a device-independent manner. We develop fast schemes that analyze dataflow and synchronization semantics in GOAL and detect if parts of the (or the whole) communication pattern express a known collective communication operation. The detection of collective operations allows us to replace the detected patterns with highly optimized algorithms or low-level hardware calls and thus improve performance significantly. Benchmark results suggest that our technique can lead to a performance improvement of orders of magnitude compared with various optimized algorithms written in Co-Array Fortran. Detecting collective operations also improves the programmability of parallel languages in that the user does not have to understand the detailed semantics of high-level communication operations in order to generate efficient and scalable code. |
Year | DOI | Venue |
---|---|---|
2012 | 10.1145/2145816.2145866 | PPOPP |
Keywords | Field | DocType |
optimized algorithm,detailed semantics,collective operation,parallel language,high-level communication operation,communication pattern,large-scale application,large-scale communication pattern,abstract parallel dataflow definition,communication-centric optimizations,collective communication operation | Programming language,Computer science,Theoretical computer science,Dataflow,Distributed computing,Synchronization,Parallel computing,Collective communication,Fortran,Assembly language,Semantics,Performance improvement,Scalability | Conference |
Volume | Issue | ISSN |
47 | 8 | 0362-1340 |
Citations | PageRank | References |
1 | 0.36 | 5 |
Authors | ||
2 |
Name | Order | Citations | PageRank |
---|---|---|---|
Torsten Hoefler | 1 | 2197 | 163.64 |
Timo Schneider | 2 | 312 | 18.39 |