08.11.2014 Views

COMPILER TECHNIQUES FOR MATLAB PROGRAMS ... - CiteSeerX

COMPILER TECHNIQUES FOR MATLAB PROGRAMS ... - CiteSeerX

COMPILER TECHNIQUES FOR MATLAB PROGRAMS ... - CiteSeerX

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 1<br />

INTRODUCTION<br />

The development ofsoftware for scientic computation on high-performance computers is a<br />

very dicult and time-consuming task, requiring not only an understanding of the algorithms<br />

to be implemented, but also a detailed knowledge of the target machine and the software<br />

environment. Several approaches to facilitate the development and maintenance of programs<br />

for high-performance computers are currently under study. One approach is the automatic<br />

translation of conventional programming languages, notably Fortran, into parallel form. Polaris<br />

[BEF + 94] and Parafrase-2 [PGH + 89], developed at Illinois, and SUIF [AALL93], a<br />

compiler developed at Stanford, are examples of this rst approach. Another approach is<br />

to extend conventional languages with simple annotations and parallel constructs. This second<br />

approach also involves the development of translation techniques for the extensions.<br />

Examples include High Performance Fortran [Hig93] and pC++ [BBG + 93].<br />

A third approach<br />

is to accept a very high-level description of the mathematical problem to be solved<br />

and automatically compute the solution in parallel. Examples of this approach are //ELL-<br />

PACK [HRC + 90], developed at Purdue, ALPAL [Coo88], developed at Lawrence Livermore<br />

Laboratories, and EXTENT [DGK + 94], developed at Ohio State University.<br />

We addressed the problem of development of software for scientic computation on highperformance<br />

computers by designing FALCON [DGG + 95b, DGG + 95a], a developmentenvironment<br />

that combines the three approaches described above.<br />

1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!