100 likes | 221 Views
HPCC Mid-Morning Break. Module System. What are Modules?. “The Environment Modules package provides for the dynamic modification of a user's environment via modulefiles. “ The main use at the HPCC is for loading different application environments. HPCC Supported Modules.
E N D
HPCC Mid-Morning Break Module System
What are Modules? • “The Environment Modules package provides for the dynamic modification of a user's environment via modulefiles. “ • The main use at the HPCC is for loading different application environments.
HPCC Supported Modules • Default supported modules are presented. • “module avail” ----------------------------------------------------- /opt/hpc/Modules/versions ----------------------------------------------------- 3.2.0rc4 3.2.6 ------------------------------------------------ /opt/hpc/Modules/3.2.6/modulefiles ------------------------------------------------- dot module-cvs module-info modules null use.cususe.olduse.own --------------------------------------------------- /opt/hpc/Modules/modulefiles ---------------------------------------------------- HEEDS/5.3 fluent/6.3.26 ls-dyna/971 mono pgi/6.2 totalview/8.7.0 R/2.7.0 gnu matlab/2006b mvapich/intel/1.1.0 pgi/7.0 totalview_old/8.0.2 R/Rmpi hp-mpi matlab/2009a openmpi/intel/1.2.8 ps/2.2.1 totalview_old/8.7.0 abaqushpcc-common mcc-runtime openmpi/intel/1.3.3 ps/2.3 unicluster abaqus_parallelhpccgateway mkl/09.1.021 pathscale/2.2.1 ps/2.4 valgrind/3.4.1 amber/10.0 i386/intelcc/09.0 mkl/10.0.3.020 pathscale/2.3 ps/2.5 valkyrie/1.4.0 blast intelcc/09.0 mkl/10.1.1.019 pathscale/2.4 ps/3.1 vtune/9.1 check-dev intelcc/10.0.025 mkl/10.1.2.024 pathscale/2.5 starp/2.8.0 vtune/rdc/9.1 cvs intelcc/11.0.083 moab/5.2.4 pathscale/3.1 subversion emboss ls-dyna/970 moab/5.3.4 pdsh totalview/8.0.2
CUS - Center Un-supported Software • To use unsupported software: “module load use.cus” • “module avail” ------------------------------------------------------- /opt/cus/modulefiles -------------------------------------------------------- R/gcc/2.9.2 cuda/2.2 g95/g95-0.92 imagemagick nvidia/cuda-2.0 siesta/02.00.01 R/intel/2.9.2 cuda/testing/2.3 gdal impi/3.1 openmm/Preview3 valgrind/3.2.0 R/pathscale/2.3.1 dock/6.2 git/1.6.4.4 java/jre-1.6.0_13 pascal/fpc-2.2.4 boost/01.39 dock/6.2-mpi gromacs/cuda/3.0.5 java/jre-1.6.0_14 powertools cmake fftw32 gromacs/std/3.0.5 ncarg python
Private Modules • Create ~/privatemodules • “module load use.own” • “module avail”
Module Manipulation • For example: • “module list” • “module unload intelcc mkl” • “module load gnu” • Alternatively • module switch intelcc gnu • Specific versions • module load intelcc/10.0.025
More Module Manipulation • Module Commands • module avail intelcc • module show intelcc/10.0.025 • Automatic Module loading • module commands in .bashrc • ${HOME}/.modulerc
Module Example #%Module###################################################################### ## ## R modulefile ## proc ModulesHelp { } { puts stderr "Use R." } set r_path /opt/hpc/R set ver 2.7.0 module load check-dev if { [uname machine] == "x86_64" } { prepend-path PATH /opt/hpc/R/2.7.0/bin prepend-path LD_LIBRARY_PATH $r_path/$ver/lib64/R/lib prepend-path LIBRARY_PATH $r_path/$ver/lib64/R/lib set-alias R "R" }
Resources • GNU Modules website: http://modules.sourceforge.net/ • HPCC Documentation: https://wiki.hpcc.msu.edu/display/hpccdocs/module • “man module” and “man modulefile”