HPC/Module Setup: Difference between revisions
< HPC
Jump to navigation
Jump to search
Line 53: | Line 53: | ||
* Module names are organized by a mostly version-less name, with the version following after a slash: <code>''' ''name/version-build'' '''</code>. Using the <code>''name''</code> alone is possible and will select a default version for a SubCommand to act upon. Some packages carry a major version number in their name, notably fftw3 and vasp5. | * Module names are organized by a mostly version-less name, with the version following after a slash: <code>''' ''name/version-build'' '''</code>. Using the <code>''name''</code> alone is possible and will select a default version for a SubCommand to act upon. Some packages carry a major version number in their name, notably fftw3 and vasp5. | ||
* <code>module help</code> briefly describes a package and will usually contain a link to its home page. | * <code>module help</code> briefly describes a package and will usually contain a link to its home page. | ||
$ | $ module help jmol | ||
----------- Module Specific Help for 'jmol/12.0.34-1' ------------- | ----------- Module Specific Help for 'jmol/12.0.34-1' ------------- | ||
Line 65: | Line 65: | ||
http://wiki.jmol.org/ | http://wiki.jmol.org/ | ||
* Home dirs: Most modules will set a convenience variable <code>''' ''NAME''_HOME'''</code> which points to the toplevel directory. This is mostly useful to inspect documentation and auxiliary files: | * Home dirs: Most modules will set a convenience variable <code>''' ''NAME''_HOME'''</code> which points to the toplevel directory. This is mostly useful to inspect documentation and auxiliary files: | ||
$ | $ module load jmol | ||
$ ''' | $ ls -l '''$JMOL_HOME'''/doc | ||
total 488 | total 488 | ||
-rw-r--r-- 1 stern stern 369786 Feb 25 12:59 CHANGES.txt | -rw-r--r-- 1 stern stern 369786 Feb 25 12:59 CHANGES.txt | ||
Line 72: | Line 72: | ||
… | … | ||
: … and to specifcy link paths in makefiles: | : … and to specifcy link paths in makefiles: | ||
$ | $ module load fftw3 | ||
LDFLAGS += -L'''$FFTW3_HOME'''/lib/ | LDFLAGS += -L'''$FFTW3_HOME'''/lib/ | ||
* Default modules are loaded by <code>/etc/profile.d/zz-moduleuse.sh</code>. (The strange name form ensures this profile segment is loaded last.) | |||
$ module list | |||
Currently Loaded Modulefiles: | |||
1) moab/6.0.3-1 4) icc/11/11.1.073 | |||
2) gold/2.1.11.0-4 5) ifort/11/11.1.073 | |||
3) openmpi/1.4.3-intel11-1 6) mkl/10.2.6.038 | |||
<!-- OBSOLETE: | |||
For now the only applications are the [[HPC/Carbon Cluster - Development tools| Development tools]]. | |||
Admin note: The master copy of these files resides in <code>mgmt{01,02}:/opt/teamhpc/node-skel/etc/profile.d</code> and is distributed by <code>~root/bin/skeldistrib</code>. | |||
--> |
Revision as of 22:02, May 18, 2011
Shell startup files
- The default login shell on Carbon is bash
- Place customizations in your file
~/.bashrc
# .bashrc # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi export PATH=$HOME/mypackage/bin:$PATH module load name1 name2 …
- tcsh only if you insist. It is not supported. In fact: “csh programming considered harmful” – Tom Christiansen
Modules – Introduction
Carbon uses the Environment Modules package to dynamically provision software. The package primarily modifies your $PATH and other environment variables.
Modules general introductions can be found at many other sites, such as:
On Carbon:
$ module help … Usage: module [ switches ] [ subcommand ] [subcommand-args ] … Available SubCommands and Args: + load modulefile [modulefile ...] + unload modulefile [modulefile ...] + switch [modulefile1] modulefile2.] + list + avail [modulefile [modulefile ...]] + whatis [modulefile [modulefile ...]] + help [modulefile [modulefile ...]] + show modulefile [modulefile ..]
For full documentation, consult the manual page:
$ man module
Module Conventions on Carbon
- Most application software is installed under
/opt/soft/
- Package directories are named
name-version-build
, e.g./opt/soft/jmol-12.1.37-1
. - Module names are organized by a mostly version-less name, with the version following after a slash:
name/version-build
. Using thename
alone is possible and will select a default version for a SubCommand to act upon. Some packages carry a major version number in their name, notably fftw3 and vasp5. module help
briefly describes a package and will usually contain a link to its home page.
$ module help jmol ----------- Module Specific Help for 'jmol/12.0.34-1' ------------- Jmol is a molecule viewer platform for researchers in chemistry and biochemistry, implemented in Java for multi-platform use. This is the standalone application. It offers high-performance 3D rendering with no hardware requirements and supports many popular file formats. http://jmol.sourceforge.net/ http://wiki.jmol.org/
- Home dirs: Most modules will set a convenience variable
NAME_HOME
which points to the toplevel directory. This is mostly useful to inspect documentation and auxiliary files:
$ module load jmol $ ls -l $JMOL_HOME/doc total 488 -rw-r--r-- 1 stern stern 369786 Feb 25 12:59 CHANGES.txt -rw-r--r-- 1 stern stern 2841 Feb 25 12:59 COPYRIGHT.txt …
- … and to specifcy link paths in makefiles:
$ module load fftw3
LDFLAGS += -L$FFTW3_HOME/lib/
- Default modules are loaded by
/etc/profile.d/zz-moduleuse.sh
. (The strange name form ensures this profile segment is loaded last.)
$ module list Currently Loaded Modulefiles: 1) moab/6.0.3-1 4) icc/11/11.1.073 2) gold/2.1.11.0-4 5) ifort/11/11.1.073 3) openmpi/1.4.3-intel11-1 6) mkl/10.2.6.038