NASA Logo

NTRS

NTRS - NASA Technical Reports Server

Back to Results
Automatic array alignment in data-parallel programsFORTRAN 90 and other data-parallel languages express parallelism in the form of operations on data aggregates such as arrays. Misalignment of the operands of an array operation can reduce program performance on a distributed-memory parallel machine by requiring nonlocal data accesses. Determining array alignments that reduce communication is therefore a key issue in compiling such languages. We present a framework for the automatic determination of array alignments in array-based, data-parallel languages. Our language model handles array sectioning, reductions, spreads, transpositions, and masked operations. We decompose alignment functions into three constituents: axis, stride, and offset. For each of these subproblems, we show how to solve the alignment problem for a basic block of code, possibly containing common subexpressions. Alignments are generated for all array objects in the code, both named program variables and intermediate results. We assign computation to processors by virtue of explicit alignment of all temporaries; the resulting work assignment is in general better than that provided by the 'owner-computes' rule. Finally, we present some ideas for dealing with control flow, replication, and dynamic alignments that depend on loop induction variables.
Document ID
19930050575
Acquisition Source
Legacy CDMS
Document Type
Conference Paper
Authors
Chatterjee, Siddhartha
(Research Inst. for Advanced Computer Science; NASA, Ames Research Center Moffett Field, CA, United States)
Gilbert, John R.
(Xerox Palo Alto Research Center CA, United States)
Schreiber, Robert
(Research Inst. for Advanced Computer Science; NASA, Ames Research Center Moffett Field, CA, United States)
Teng, Shang-Hua
(MIT Cambridge, MA, United States)
Date Acquired
August 16, 2013
Publication Date
January 1, 1993
Subject Category
Computer Programming And Software
Report/Patent Number
RIACS-TR-92-18
Meeting Information
Meeting: Annual ACM SIGACT/SIGPLAN Symposium on Principles of Programming Languages
Location: Charleston, SC
Country: United States
Start Date: January 1, 1993
Accession Number
93A34572
Funding Number(s)
CONTRACT_GRANT: NCC2-387
Distribution Limits
Public
Copyright
Other

Available Downloads

There are no available downloads for this record.
No Preview Available