beautypg.com

6 mpi library, 7 intel fortran and c/c++compilers, 8 pgi fortran and c/c++ compilers – HP XC System 4.x Software User Manual

Page 44: 9 gnu c and c++ compilers, 10 pathscale compilers, 11 gnu parallel make

background image

To compile programs that use SHMEM, it is necessary to include the shmem.h file and to use
the SHMEM and Elan libraries. For example:

$ gcc -o shping shping.c -lshmem -lelan

4.7.1.6 MPI Library

The

MPI

library supports MPI 1.2 as described in the 1997 release of MPI: A Message Passing

Interface Standard. Users should note that the MPI specification describes the application
programming interface, but does not specify the contents of the MPI header files, mpi.h and
mpif.h

, that are included in the source code. Therefore, an MPI application must be recompiled

using the proper header files for the MPI library to which it is to be linked.

Parallel applications that use MPI for communication must include the HP XC infrastructure
libraries. MPI applications must be built with mpicc, mpic++, mpif77, or mpif90 utilities.

When an MPI application is launched, the user environment, including any MPI environment
variables that have been set, is passed to the application.

MPI profiling support is included in the HP XC MPI library, so you do not need to link with a
separate library to access the PMPI_xxx() versions of the MPI routines.

The HP XC

cluster

comes with a modulefile for HP-MPI. The mpi modulefile is used to set up

the necessary environment to use HP-MPI, such as the values of the search paths for header and
library files.

4.7.1.7 Intel Fortran and C/C++Compilers

You can use Intel Fortran compilers (Version 7.x and greater) on the HP XC cluster. However,
the HP XC cluster does not supply a copy of Intel compilers. Intel compilers must be obtained
directly from the vendor. See the Intel documentation for information about using these compilers.

4.7.1.8 PGI Fortran and C/C++ Compilers

You can use PGI Fortran 95, Fortran 77, and C/C++ compilers on the HP XC cluster. However,
the HP XC cluster does not supply a copy of PGI compilers. PGI compilers must be obtained
directly from the vendor. For information about using the PGI compilers, see the PGI
documentation.

4.7.1.9 GNU C and C++ Compilers

You can use the GNU C and C++ compilers on the HP XC cluster. The HP XC cluster supplies
copies of the GNU C and C++ compilers.

4.7.1.10 Pathscale Compilers

You can use the Pathscale EKOPath Version 2.1 Compiler Suite on the CP4000 platform only.
See the following Web site for more information:

http://www.pathscale.com/ekopath.html

.

4.7.1.11 GNU Parallel Make

The GNU parallel Make command is used whenever the make command is invoked. GNU
parallel Make provides the ability to do a parallel Make; however, all compiling takes place on
the login node. Therefore, whether a parallel make improves build time depends upon how
many cores are on the login node and the load on the login node.

Information about using the GNU parallel Make is provided in

“Using the GNU Parallel Make

Capability”

.

For further information about using GNU parallel Make, see the make manpage. For additional
sources of GNU information, see the references provided in the front of this manual, located in

“About This Document”

.

44

Developing Applications