TR-95-03-03.ps.Z

S. G. Dykes, X. Zhang Y. Shen, C. L. Jeffery and D. W. Dean
``*Graph: a tool for visualizing communication and optimizing
layout in data-parallel Programs"

in Proceedings of 1995 International Conference on Parallel Processing,
August, 1995.

Abstract
--------

*GRAPH is an event-driven visualization and optimization tool for
data-parallel communication, currently implemented for the C* language
on the CM-5.  Its goal is to help data-parallel
programmers reduce their communication costs by providing information
about communication bottlenecks and suggesting system directives for
an optimized data layout.  To accomplish this, *GRAPH provides facilities for

        1. visualizing a trace of internode communication,
        2. pinpointing source code statements where communication bottlenecks
                occur, and
        3. optimizing data layout for the program's communication pattern.

This paper presents the motivation for *GRAPH, its design concept and the
initial implementation.  We include two case studies illustrating  how performance
can be improved by applying *GRAPH's recommended data layout directive.
Elapsed execution times were reduced by 31% for a folded convolution
algorithm, and by 17% for a Gaussian elimination.