Data parallelism in Fortran 90 and High Performance Fortran

John Merlin


These are lecture notes for 2 to 3 lectures introducing High Performance Fortran (HPF). The first lecture describes the data parallel features of Fortran 90, since these are important for writing efficient HPF programs. The second lecture introduces the Distributed Memory MIMD computer architecture and the ways in which it can be programmed, and motivates the use of the HPF language. The third lecture introduces HPF's data distribution features. These lecture notes are also available in gzipped Poscript form (100 KBytes).

Contents

1. Data Parallelism in Fortran 90
Introduction
Data parallelism
Some terminology for arrays
Array sections
Shape of an array section
Semantics of array assignment
Logical array expressions
WHERE statement and construct
Intrinsic functions
Examples

2. Exploiting Data Parallelism
Vector and SIMD machines
Distributed memory MIMD machines
SPMD programming model
Message-passing
Automatic parallelisation

3. High Performance Fortran (HPF)
Introduction
Directives
Data mapping in HPF
Templates and processors
Alignment
Distribution
Example

Written by John Merlin (jhm@vcpc.univie.ac.at).
Converted to HTML by Simeon Warner on May 23 1994.