<< >> Title Contents Index Home Help

4 PGHPF Libraries


This chapter introduces you to the PGHPF compiler libraries. Depending on the PGI product you are using, some of these libraries or object files may not be available on your system.

4.1 Libraries and Startup Routines

The following startup routines and function libraries and object files are provided with the PGHPF compiler:

crt1i.o
Startup routine for the compilation environment
crtn.o
Startup routine for the compilation environment
hpfalt.o
Fortran 90 alternate logical support routine - linked in when -Munixlogical is specified on the command line
hpfmain.o
Fortran 90 startup routine
libpghpf.a
Transport independent communications interface library. The PGHPF compilation system uses this library for PGHPF programs to manage communications between processors on parallel systems
libpghpf2.a
Transport communications interface library continued.
libpghpf_mpi.a
The MPI communications library.
libpghpf_mpi_p.a
The MPI communications library with profiling support.
libpghpf_prof.a
PGPROF support library.
libpghpf_rpm.a
The RPM communications library.
libpghpf_rpm_p.a
The RPM communications library with profiling support.
libpghpf_rpm1.a
The RPM1 communications library.
libpghpf_rpm1_p.a
The RPM1 communications library with profiling support.
libpghpf_smp.a
The SMP communications library.
libpghpf_smp_p.a
The SMP communications library with profiling support.



NOTE


Depending on what type of compiler product you have, some of these libraries or object files may not be sent with your particular product.

4.2 LIB3F Procedures

An include file named lib3f.h is included in the PGHPF distribution. Using the lib3f.h include file, programs can call standard 3F routines available on many platforms. The statement:

INCLUDE "lib3f.h"

is required in the declarations section of any program unit which references 3F procedures. In particular, PGHPF programs that use getarg() or iargc() require this INCLUDE statement.

4.3 Calling Routines from Pre-compiled Libraries

It is possible to call routines in a pre-compiled (.a) library from a PGHPF-compiled program. For example, you may want to call highly optimized BLAS or FFT routines from a PGHPF-compiled program in order to construct highly-optimized parallel algorithms. As long as the routines adhere to FORTRAN 77 calling conventions, they can be declared as EXTRINSIC in an interface block in the HPF calling program, and called in the usual manner. Called in this manner, routines from pre-compiled libraries will operate either locally on the local portions of distributed arrays or will operate serially. See Chapter 8, HPF Extrinsics, for a detailed discussion of extrinsic procedures and an example of their use.


<< >> Title Contents Index Home Help