Abstract
Dynamic data redistribution is a key technique for maintaining data locality and workload balance in data parallel languages like HPF. On the other hand, redistributions can be very expensive and significantly degrade a program's performance. In this article, we present a novel and aggressive approach for avoiding unnecessary remappings by eliminating partially dead and partially redundant distribution changes. Basically, this approach evolves from extending and combining two algorithms for these optimizations achieving optimal results for sequential programs. Optimality, however, becomes more intricate by the combination. Unlike the sequential setting the data-parallel setting leads to a hierarchy of algorithms of varying power and efficiency fitting a user's individual needs. The power and flexibility of the new approach are demonstrated by illustrating examples. First practical experiences underline its importance and effectivity.
Chapter PDF
References
S. Benkner, S. Andel, R. Blasko, P. Brezany, A. Colic, B.M. Chapman, M. Egg, T. Fahringer, J. Hulman, E. Kelc, E. Mehofer, H. Moritsch,M. Paul, K. Sanjari, V. Sipkova, B. Velkov, B. Wonder, and H.P. Zima. Vienna Fortran Compilation System-Version 1.2-User's Guide. Institute for Software Technology and Parallel Systems, University of Vienna, Vienna, February 1996.
F. Coelho and C. Ancourt. Optimal compilation of HPF remappings. Journal of Parallel and Distributed Computing, 38(2):229–236, November 1996.
High Performance Fortran Forum. High Performance Fortran language specification version 2.0. Technical report, Rice University, Houston,TX, January 1997. Available via HPFF home page: http://www.crpc.rice.edu/HPFF.
G. Fox, S. Hiranandani, K. Kennedy, C. Koelbel, U. Kremer, C.-W. Tseng, and M.-Y. Wu. FORTRAN D language specification. Technical report, Rice University, Houston,TX, January 1992.
M. W. Hall, S. Hirandani, K. Kennedy, and C.-W. Tseng. Interprocedural compilation of Fortran D for MIMD distributed-memory machines. In Proc. of Supercomputing '92, pages 522–534, Minneapolis, MN, November 1992.
J. Knoop and E. Mehofer. Distribution assignment placement: A new aggressive approach for optimizing redistribution costs. Technical Report TR 97-6, Institute for Software Technology and Parallel Systems, University of Vienna, Austria, 1997.
J. Knoop, O. Rfithing, and B. Steffen. Partial dead code elimination. In Proc. of the ACM SIGPLAN '95 Conference on Programming Language Design and Implementation (PLDI'95), pages 147–158, Orlando, FL, June 1994.
J. Knoop, O. Rüthing, and B. Steffen. The power of assignment motion. In Proc. of the ACM SIGPLAN '95 Conference on Programming Language Design and Implementation (PLDI'95), pages 233–245, La Jolla, CA, June 1995.
J. Knoop, O. Rüthing, and B. Steffen. Towards a tool kit for the automatic generation of interprocedural data flow analyses. Journal of Programming Languages, 4(4):211–246, 1996.
E. Mehofer and H. Zima. Distribution assignment placement. Technical Report TR-96-5, Institute for Software Technology and Parallel Systems, University of Vienna, Austria, 1996.
D.J. Palermo, E.W. Hodges, and P. Banerjee. Interprocedural array redistribution data-flow analysis. In Proc. of the 9th Workshop on Languages and Compilers for Parallel Computing, San Jose, CA, August 1996.
S. Ramaswamy, B. Simons, and P. Banerjee. Optimizations for efficient array redistribution on distributed memory multicomputers. Journal of Parallel and Distributed Computing, 38(2):217–228, November 1996.
H. Zima, P. Brezany, B. Chapman, P. Mehrotra, and A. Schwald. Vienna Fortran-A language specification version 1.1. Technical Report ACPC/TR 92-4, Austrian Center for Parallel Computation, March 1992. *** DIRECT SUPPORT *** A0008C42 00013
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Knoopl, J., Mehofer, E. (1997). Optimal distribution assignment placement. In: Lengauer, C., Griebl, M., Gorlatch, S. (eds) Euro-Par'97 Parallel Processing. Euro-Par 1997. Lecture Notes in Computer Science, vol 1300. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0002758
Download citation
DOI: https://doi.org/10.1007/BFb0002758
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63440-9
Online ISBN: 978-3-540-69549-3
eBook Packages: Springer Book Archive