<< >> Title Contents Index Home Help


This guide describes PGHPF, The Portland Group's High Performance Fortran compiler. This manual is part of a set of manuals describing the High Performance Fortran (HPF) compilation system available from The Portland Group, Inc. This guide, along with the other manuals in the PGI documentation set includes the information people need to know to use the PGHPF compiler. The PGHPF compilation system consists of an HPF compiler, a Fortran node compiler, an assembler, a linker, and the PGI PGHPF runtime libraries (for most systems these component phases are transparent; the PGHPF driver controls the entire compilation process). You can use the PGHPF compilation system to create, debug, optimize and profile your software. The section, "Related Publications," at the end of this preface lists related manuals in the PGHPF documentation set.

This User's Guide provides operating instructions for the PGHPF compilation system and general information about the implementation of the HPF language. The pgfhpf Reference Manual provides information about the language supported. This guide does not teach HPF programming. Refer to The High Performance Fortran Handbook, and the Fortran 90 Handbook listed in the following section, "Related Publications" for additional reference information on HPF and Fortran 90.

Audience Description

This guide is intended for people using PGHPF. To use PGHPF, you should be aware of the role of HPF in data parallel computation, and have some Fortran or HPF programming experience. The PGHPF compiler runs on a variety of systems and generates output for several target systems. You also need to be familiar with the basic commands available on your system.

Finally, your system needs to be running a properly installed and configured version of the PGHPF software. For information on installing and configuring PGHPF, refer to the installation instructions sent with your software. If you did not receive installation instructions, contact your system administrator or call The Portland Group and ask for technical support.

Compatibility and Conformance to Standards

The PGHPF compiler runs on a variety of host systems and accepts as input HPF as defined in the HPF Standard. The output generated is object code that can be targeted for a number of different systems.

For further information on HPF, Fortran 90 or Fortran 77, refer to the following:


This manual is divided into the following chapters and appendices:

Chapter 1, Getting Started, provides an introduction to PGHPF and describes its use and overall features.

Chapter 2, PGHPF Compiler Options, lists the PGHPF compiler command-line options.

Chapter 3, PGHPF Runtime Options, describes runtime command-line options, environment variables and system dependent options for running HPF programs.

Chapter 4, PGHPF Libraries, lists the various PGHPF libraries and describes each library.

Chapter 5, PGHPF Data Distribution , describes how the PGHPF compiler distributes data among processors.

Chapter 6, PGHPF Runtime and Execution Model, describes communications optimizations and various techniques the compiler uses to facilitate communications for parallel execution.

Chapter 7, PGHPF Parallelism , describes the Fortran 90 and HPF language features that allow the programmer to convey and use parallelism in an HPF program.

Chapter 8, Extrinsics, describes the PGHPF implementation of supported extrinsic types.

Chapter 9, Modules, describes the PGHPF Fortran 90 Module implementation.

Appendix A, Messages, provides a list of PGHPF messages.

Appendix B, Driver Customization, describes how to modify the PGHPF configuration file to alter the PGHPF startup defaults.

Hardware and Software Constraints

This guide describes a version of PGHPF that operates on a variety of host systems and produces as output object code for a variety of different targets. Targets include many different hardware systems, using several implementations of Fortran and several different parallel communications libraries. The PGHPF output is usually object code, but may also be Fortran with communications calls (to the PGI runtime library). Details concerning environment-specific values for either Fortran or the communications libraries, or defaults for host-specific features are presented in the release notes sent with the PGHPF software. This manual may refer to different versions of Fortran targets as Node Compilers. In most implementations the node compilers are called by PGHPF directly and the output is an executable file.


This User's Guide 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.
upper case constant width is used for Fortran language statements in examples.
constant width
lower case constant width is used in the examples for Fortran code and for Fortran code that is generated by the PGHPF compiler.
[ item1 ]
square brackets indicate optional items. In this case item1 is optional.
{ item2 | item 3}
braces indicate that a selection is required. In this case, you must select either item2 or item3.
filename ...
an ellipsis indicates a repetition. Zero or more of the preceding item may occur. In this example, multiple filenames are allowed.
Fortran language statements in the text are shown using upper-case characters and a reduced point size.

Related Publications

The following documents contain additional information related to the compilers and tools available from The Portland Group.

The PGHPF Reference Manual, describes the HPF language statements that the PGI compiler supports and lists the supported intrinsics and functions.

The High Performance Fortran Handbook, describes HPF in detail and is the language's primary reference manual. This Handbook is available from The Portland Group, Inc.

The 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.

American National Standard Programming Language Fortran, ANSI X3.-1978 (1978).

<< >> Title Contents Index Home Help