Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

An Overview of a Compiler for Scalable Parallel Machines

Summary: An Overview of a Compiler for
Scalable Parallel Machines
Saman P. Amarasinghe, Jennifer M. Anderson,
Monica S. Lam and Amy W. Lim
Computer Systems Laboratory
Stanford University, CA 94305
Abstract. This paper presents an overview of a parallelizing compiler
to automatically generate efficient code for large­scale parallel architec­
tures from sequential input programs. This research focuses on loop­level
parallelism in dense matrix computations. We illustrate the basic tech­
niques the compiler uses by describing the entire compilation process for
a simple example.
Our compiler is organized into three major phases: analyzing array refer­
ences, allocating the computation and data to the processors to optimize
parallelism and locality, and generating code.
An optimizing compiler for scalable parallel machines requires more so­
phisticated program analysis than the traditional data dependence anal­
ysis. Our compiler uses a precise data­flow analysis technique to identify
the producer of the value read by each instance of a read access. In or­
der to allocate the computation and data to the processors, the compiler


Source: Amarasinghe, Saman - Computer Science and Artificial Intelligence Laboratory & Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology (MIT)


Collections: Computer Technologies and Information Sciences