A global communication optimization technique based on data-flow analysis and linear algebra

  • Authors:
  • M. Kandemir;P. Banerjee;A. Choudhary;J. Ramanujam;N. Shenoy

  • Affiliations:
  • Syracuse Univ., Syracuse, NY;Northwestern Univ., Evanston, IL;Northwestern Univ., Evanston, IL;Louisiana State Univ., Baton Rouge;Northwestern Univ., Evanston, IL

  • Venue:
  • ACM Transactions on Programming Languages and Systems (TOPLAS)
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

Reducing communication overhead is extremely important in distributed-memory message-passing architectures. In this article, we present a technique to improve communication that considers data access patterns of the entire program. Our approach is based on a combination of traditional data-flow analysis and a linear algebra framework, and it works on structured programs with conditional statements and nested loops but without arbitrary goto statements.The distinctive features of the solution are the accuracy in keeping communication set information, support for general alignments and distributions including block-cyclic distribu-tions, and the ability to simulate some of the previous approaches with suitable modifications. We also show how optimizations such as message vectorization, message coalescing, and redundancy elimination are supported by our framework. Experimental results on several benchmarks show that our technique is effective in reducing the number of messages (anaverage of 32% reduction), the volume of the data communicated (an average of 37%reduction), and the execution time (an average of 26% reduction).