High Performance Fortran: What's Next?

Lennart Johnsson
University of Houston
johnsson@cs.uh.edu

Charlie Hu
Rice University
ychu@cs.rice.edu

In this presentation we will discuss a few issues important for a wide acceptance of HPF. We will address interoperability with MPI codes, handling of nonuniform computations on irregular data structures and issues related to the creation of high-performance libraries. With respect to the interoperability with MPI codes we will report on our experience in using Unix sockets in calling an HPF code for fast, adaptive n-body computations. We will report on our experience in handling nonuniformity in computation for irregular data structures for the same code. Controlling the memory accesses through directives, or hints, to the compiler and run-time system can be an effective technique in achieving high performance. We will report on our experience with the aliasing mechanism in Connection Machine Fortran. Predictable and high performance of "inner loops" that in scientific and engineering codes often are encapsulated as library functions is another important feature of programming languages. We will discuss the techniques used in achieving predictable, high efficiency robust with respect to data distribution in the Connection Machine Fortran library CMSSL (Connection Machine Scientific Software Library).