<< >> Title Contents Index Home Help


This manual describes The Portland Group's implementation of High Performance Fortran (HPF), an extended version of Fortran 90 for parallel computer systems. This manual is part of a set of manuals describing the HPF language and the HPF compilation tools available from The Portland Group, Inc. This manual presents the Fortran 90 language statements, Fortran 90 intrinsics, and HPF directives and statements. The pghpf HPF compilation system includes a transport independent interface library (TII) supporting communications among multiple processors and includes a Fortran 77 node compiler or uses the target Fortran 77 node compiler as an integrated node compiler. Depending on the target system, the pghpf software development tools also include an assembler, a linker, a debugger and a profiler. You can use these tools to create, debug, optimize and profile your data parallel HPF programs. The following section, "Related Publications," lists other manuals in the PGI documentation set.

Audience Description

This manual is intended for people who are writing HPF programs for parallel systems. To use pghpf you should be aware of the role of HPF and of source-level programs in the software development process and you should have some knowledge of a particular parallel system or workstation cluster. The pghpf compiler runs on a variety of host systems and produces output that runs on a number of targets. To use pghpf you need to be familiar with the Fortran language, either Fortran 90 or Fortran 77, and the basic commands available on your host system.

Compatibility and Conformance to Standards

The pghpf compiler accepts the HPF language which is a superset of Fortran 90. This version of pghpf conforms to the High Performance Fortran Language Specification Version 1.1, published by the Center for Research on Parallel Computation, at Rice University (with a few limitations and modifications, consult the pghpf Release Notes for details).

For further information on pghpf and the HPF language, you can also refer to the following:


This manual is divided into the following chapters and appendices:

Chapter 1, Language Overview, provides an introduction to the HPF language.

Chapter 2, HPF Data Types, describes the data types that HPF supports and provides examples using various data types. Memory allocation and alignment issues are also discussed.

Chapter 3, Fortran Statements, describes each of the Fortran statements including all the Fortran 90 and HPF statements that pghpf accepts.

Chapter 4, HPF Directives, describes the HPF directives which control data distribution and alignment, and influence data parallelism by providing additional information to the compiler.

Chapter 5, Fortran Arrays, describes some of the special characteristics of arrays in Fortran 90.

Chapter 6, Input/Output and Formatting, describes the input, output, and format statements that allow programs to transfer data to or from files.

Appendix A, Fortran 90 Intrinsics, lists the Fortran 90 intrinsics and subroutines.

Appendix B, HPF Intrinsics and Library Procedures, lists the HPF intrinsics and subroutines.

Appendix C, HPF_LOCAL_LIBRARY Procedures, lists the HPF LOCAL LIBRARY procedures.

Appendix D, PGI Language Extensions, lists the language extensions that the PGI HPF compiler supports.

Hardware and Software Constraints

This manual describes a version of HPF that is accepted by pghpf, operates on a variety of host systems and produces object code for a variety of target systems. Details concerning environment-specific values and defaults and host-specific features or limitations are presented in the release notes and installation instructions sent with the pghpf software.


This High Performance Fortran Reference Manual uses the following conventions:

is used for commands, filenames, directories, arguments, options and for emphasis.
Constant Width
is used in examples and for language statements in the text.
[ item1 ]
square brackets indicate optional items. In this case item1 is optional.
{ item2 | item3}
braces indicate that a selection is required. In this case, you must select either item2 or item3.
filename ...
ellipsis indicate a repetition. Zero or more of the preceding item may occur. In this example, multiple filenames are allowed.
FORTRAN Fortran language statements are shown using upper-case characters and a reduced point size.
non-printing characters, such as TAB, are shown enclosed in greater than and less than characters and a reduced point size.
this symbol indicates an area in the text that describes a PGI Fortran 90 Language enhancement. Enhancements are features that are not described in the ANSI Fortran 90 standard.

Related Publications

The following documents contain additional information related to HPF and other compilers and tools available from The Portland Group, Inc..

The pghpf User's Guide, describes the pghpf compiler and describes some details concerning the PGI implementation of HPF in a user's guide format.

The High Performance Fortran Handbook, describes the HPF language in detail.

High Performance Fortran Language Specification, Rice University, Houston Texas (1993), is the specification for the HPF language.

Fortran 90 Handbook, describes the Fortran 90 language and the statements, data types, input/output format specifiers, and additional reference material that defines ANSI/ISO Fortran 90.

<< >> Title Contents Index Home Help