[DBPP] previous next up contents index [Search]
Next: 8 Message Passing Interface Up: 7 High Performance Fortran Previous: Exercises

Chapter Notes

  Early data-parallel programming notations included   Kali [200],   CM Fortran [282],   Fortran D [112], and Vienna   Fortran [56]. Other data-parallel languages include   *Lisp [281],   C* [281],   Data-parallel   C [136,137], pC++ [38], NESL [37], and   DINO [247]. In a rather different approach, several projects have explored the use of C++ class libraries to encapsulate data-parallel operations on data objects such as arrays [83,188].

  The compilation of HPF and related languages requires specialized analysis and optimization techniques. Hiranandani et al. [152] and Zima and Chapman [303] provide a good introduction to these topics; see also papers by Albert, Lukas, and Steele [10], Bozkus et al. [42], Callahan and Kennedy [45], Rogers and Pingali [245], and Zima, Bast, and Gerndt [302] and the monographs by Banerjee [27] and Wolfe [296].

The description of F90 and HPF provided here is necessarily brief.   See Chapter 6 for F90 references. Loveman [193] provides more information on both the HPF language and the process by which it was designed. The HPF Language Specification prepared by the HPF Forum provides a comprehensive, although sometimes impenetrable, description of the language [149]. The book by Koelbel et al. [176] presents essentially the same information but in a more readable form, and also provides a useful introduction to F90.

Extensions to the data-parallel programming model that would allow its application to a wider range of problems is an active area of research. Chapman, Mehrotra, and Zima [57] propose a range of extensions. Saltz, Berryman, and Wu [251] and   Agrawal, Sussman, and Saltz [6] describe techniques for irregular problems. Subhlok et al. [273] generate pipeline parallelism automatically from HPF code augmented with additional directives. Foster [100] discusses issues relating   to the integration of task parallelism. Chandy et al. [52] address the integration of HPF and Fortran M.

Here is a Web Tour providing access to additional information on programming in High Performance Fortran, including a specification, information about compilers, and example programs.

 



[DBPP] previous next up contents index [Search]
Next: 8 Message Passing Interface Up: 7 High Performance Fortran Previous: Exercises

© Copyright 1995 by Ian Foster