Summary: Interprocedural Partial Redundancy Elimination with
Application to Distributed Memory Compilation
Department of Computer and Information Sciences
University of Delaware
Newark DE 19716
Partial Redundancy Elimination (PRE) is a general scheme for suppressing partial redundancies
which encompasses traditional optimizations like loop invariant code motion and redundant code
elimination. In this paper we address the problem of performing this optimization interprocedurally.
We present an Interprocedural Partial Redundancy Elimination (IPRE) scheme based upon a new
concise full program representation. Our method is applicable to arbitrary recursive programs.
We use interprocedural partial redundancy elimination for placement of communication and com
munication preprocessing statements while compiling for distributed memory parallel machines. We
have implemented our scheme as an extension to the Fortran D compilation system. We present
experimental results from two codes compiled using our system to demonstrate the useful of IPRE
in distributed memory compilation.
Keywords: Distributed Memory Compilation, Partial Redundancy Elimination, Interprocedural