3 configuring your environment with modulefiles, 1 overview of modules, Overview of modules – HP XC System 3.x Software User Manual

Page 31

Advertising
background image

3 Configuring Your Environment with Modulefiles

The HP XC system supports the use of Modules software to make it easier to configure and modify the
your environment. Modules software enables dynamic modification of your environment by the use of
modulefiles.

This chapter addresses the following topics:

“Overview of Modules” (page 31)

“Supplied Modulefiles” (page 32)

“Modulefiles Automatically Loaded on the System” (page 33)

“Viewing Available Modulefiles” (page 33)

“Viewing Loaded Modulefiles” (page 34)

“Loading a Modulefile” (page 34)

“Unloading a Modulefile” (page 34)

“Viewing Modulefile-Specific Help” (page 35)

“Modulefile Conflicts” (page 35)

“Creating a Modulefile” (page 35)

3.1 Overview of Modules

A modulefile contains information to configure the shell for an application. Typically, a modulefile contains
instructions that alter or set shell environment variables, such as PATH and MANPATH, to enable access to
various installed software.

Modules enable multiple versions of the same software to be used in your environment in a controlled
manner. For example, two different versions of the Intel C compiler can be installed on the system at the
same time – the version used is based upon which Intel C compiler modulefile is loaded.

The HP XC software provides a number of modulefiles. You can also create your own modulefiles.
Modulefiles can be shared by many users on a system, and users can have their own collections of
modulefiles to supplement or replace the shared modulefiles.

For further information about the Modules software supplied with the HP XC system, see the Modules
Web site at the following URL:

http://sourceforge.net/projects/modules/

A modulefile does not provide configuration of your environment until it is explicitly loaded. That is, the
specific modulefile for a software product or application must be loaded in your environment (with the
module load

command) before the configuration information in the modulefile is effective.

You or your system administrator can configure your environment so that any desired modulefiles are
automatically loaded for you when you log in to the system. You can also load a modulefile yourself, as
described in

“Loading a Modulefile” (page 34)

.

The Modules software is initialized when you log in to the HP XC system. It provides access to the
commands that you can use to display information about modulefiles, load or unload modulefiles, or view
a list of available modulefiles.

Modulefiles do not affect packages other than their intended package. For example, a modulefile for a
compiler will not adjust MPI_CC (the environment variable used by HP-MPI to control which compiler
to use). A modulefile for a compiler simply makes it easier to access that particular compiler; it does not
try to determine how the compiler will be used.

Similarly, a modulefile for HP-MPI will not try to adjust LD_LIBRARY_PATH to correspond to the compiler
that the mpicc command uses. The modulefile for

MPI

simply makes it easier to access the mpi** scripts

and libraries. You can specify the compiler it uses through a variety of mechanisms long after the modulefile
is loaded.

The previous scenarios were chosen in particular because the HP-MPI mpicc command uses heuristics
to try to find a suitable compiler when MPI_CC or other default-overriding mechanisms are not in effect.
It is possible that mpicc will choose a compiler inconsistent with the most recently loaded compiler
module. This could cause inconsistencies in the use of shared objects. If you have multiple compilers

3.1 Overview of Modules

31

Advertising