• Launching applications w ith the srun command (Section 6.4)
• Advanced topics related to developing parallel applications (Section 3.9)
• Debugging parallel applications (Section 4.2)
3.7.1 Parallel A pplication Build Environment
This section discusses the parallel applicatio n build environm ent on an HP XC system.
The HP XC parallel application environment allows parallel application processes to be started
and stopped together on a large number of applicati on processors , alon g with the I/O and
process control structures to manage these kinds of applications.
HP XC supports the HP-MPI distrib uted memory programming model for bu ild ing and runn ing
parallel applications. In addition to using HP-MPI f or parallel application development, H P XC
supports the use of OpenMP and Pthreads. OpenMP and Pthreads can be used in conjunction
with HP-MPI or separatel y. The section discusses these development tools as they relate to
the HP XC system.
3.7.1.1 Modulefiles
The basics of yo ur working environ men t are set up autom atically by your system administrator
during the installation of HP XC. However, yo ur application developmen t environment can b e
modified by means of modulefiles, as described in Section 2.2.
There are modulef iles available that you can load yourself to further tailor your environment
to your specific application develo pm e nt requirements. For example, the TotalView module
is available for debugging applications. Section 2.2 provides instructions on how to list what
modulefiles are availab le for yo u to load, and h ow load a modulefile.
If you encounter problems accessing tools or comm ands (and associated m anpages), check to
ensure that required modules are loaded on your system. If necessary, load required m odules
yourself, as described in Section 2.2. Otherwise, contact your administrator.
3.7.1.2 HP-MPI
HP XC supports the HP-MPI distrib uted memory programming model for bu ild ing and runn ing
parallel applications. In this model, all data is private to each process. All interprocessor
communication within a parallel application is performed thr oug h calls to the HP-MPI message
passing library. Even t hou gh support for applications that use a shared-memory programming
model is not available at this time, individual processors within an application node can be
used in the same application as separate HP-MPI tasks. Applications that are MPI-based, and
currently run on Linux (or Linux compatible) systems, can be easily migrated to an HP XC
cluster. For information about using HP-MPI in the H P XC env iro nm ent, refer to Chapter 8.
3.7.1.3 OpenMP
The OpenMP specification is a set of compiler directives that can be used to specify
shared-memory parallelism in Fortran and C/C++ programs. Both Intel and Portland Group
Fortran and C/C++ compilers support OpenMP.
Although OpenMP is designed fo r use on shared-m em ory architectures, OpenMP can be used
on an HP XC system within a node.
OpenMP can be used alone, o r in conjunction w ith HP-MPI. For inform ation about compiling
programs using O pen M P, refer to OpenMP documentation.
3.7.1.4 Pthreads
POSIX Threads (Pthreads) is a standard library that programmers can use to develop portable
threaded applications. Pthreads can be used in conjunction w ith HP-MPI on the HP XC system.
Developing Applications 3-5
Commentaires sur ces manuels