Distribution Assignment Placement

Distribution Assignment Placement

Abstract

The change of distributions of arrays at runtime in languages such as High Performance Fortran (HPF) addresses the demands posed by advanced applications with dynamically varying processor workloads or varying computational kernels. We introduce distribution assignments which are generated by the compiler at subprogram boundaries and for redistribute/realign directives in order to enforce distribution changes. Distribution assignments serve as intermediate representation which allows an abstraction from high-level language constructs which simplifies the analysis task and permits a generic description of the optimization phase. In this paper an aggressive optimization based on bidirectional data flow frameworks is presented which reduces the number of executed distribution assignments more effectively than usual approaches. Instead of implementing individual optimizations, a more general problem, namely elimination of partially dead and partially redundant distribution assignments, is solved which results in a uniform framework covering various optimizing transformations. Unlike many communication optimization systems, code hoisting does not suffice and has to be complemented by code sinking.

Grafik Top
Authors
  • Mehofer, Eduard
  • Zima, Hans
Grafik Top
Shortfacts
Category
Technical Report (Technical Report)
Divisions
Scientific Computing
Publisher
Institute for Software Technology and Parallel Systems, University of Vienna
Date
December 1996
Official URL
http://www.par.univie.ac.at/publications/download/...
Export
Grafik Top