Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
habrok:software_environment:module_system [2022/12/15 15:42] fokkehabrok:software_environment:module_system [2023/03/21 12:59] (current) admin
Line 2: Line 2:
 ====== Software environment ====== ====== Software environment ======
  
-On Hábrók a lot of software has been made available. In order to allow multiple versions of software to be available the software is arranged in so called modules.+On Hábrók a lot of software has been made available. In order to allow multiple versions of software to be available the software is arranged in so-called modules.
  
 ===== module system ===== ===== module system =====
  
-By default none of these modules is loaded, which means that the software will not yet be available on the command line prompt. Throughout this page we will use R as an example. Normally the command ''R'' should fire up a command line session for R:+By default, only the main modules for getting access to the software stack are loaded: these are named ''StdEnv'' and ''2023.01'' (which denotes the current version of the software stack). 
 + 
 +Other than that, no modules for actual applications are loaded by default, which means that the software will not yet be available on the command line prompt. Throughout this page we will use R as an example. Normally the command ''R'' should fire up a command line session for R:
 <code> <code>
 [username@habrok ~]$ R [username@habrok ~]$ R
Line 18: Line 20:
   * ''load'' or ''add'' for loading software into the environment   * ''load'' or ''add'' for loading software into the environment
   * ''list'' for showing the currently loaded modules   * ''list'' for showing the currently loaded modules
-  * ''rm'' or ''del'' for removing a module from the environment +  * ''unload'' or ''del'' for unloading a module from the environment 
-  * ''purge'' for removing all loaded modules from the environment+  * ''purge'' for unloading all loaded modules from the environment
   * ''save'' for saving a set of loaded modules into a configuration for restoring at a later time    * ''save'' for saving a set of loaded modules into a configuration for restoring at a later time 
   * ''restore'' for restoring a saved set of modules   * ''restore'' for restoring a saved set of modules
 ==== module avail ==== ==== module avail ====
  
-One way to find information about software is to run the command ''module'' with the subcommand ''avail''. If we run it without extra arguments we get:+One way to find information about software is to run the command ''module'' with the subcommand ''avail''. If we run it without extra arguments we get something like:
 <code> <code>
 [username@habrok ~]$ module avail [username@habrok ~]$ module avail
--------------------- /usr/share/lmod/lmod/modulefiles/Core -------------------- +---- /cvmfs/hpc.rug.nl/versions/2023.01/rocky8/x86_64/amd/zen3/modules/ai ---- 
-   lmod    settarg+   PyTorch/1.12.1-foss-2022a-CUDA-11.7.0
  
----------------------------- /software/modules/bio ---------------------------- +---- /cvmfs/hpc.rug.nl/versions/2023.01/rocky8/x86_64/amd/zen3/modules/astro ---- 
-   ABCtoolbox/1.0 +   astropy/5.1.1-foss-2022a 
-   ABySS/2.0.2-foss-2018a + 
-   ADMIXTURE/1.3.0 +---- /cvmfs/hpc.rug.nl/versions/2023.01/rocky8/x86_64/amd/zen3/modules/bio ---- 
-   AUGUSTUS/3.3.1-foss-2018a +   angsd/0.940-GCC-11.2.0 
-   AdmixTools/2017_06_29-foss-2016a +   BA3-SNPS-autotune/2.1.2-GCC-11.3.0 
-   Annocript/2.0.1-foss-2018a-Perl-5.26.+   BamTools/2.5.2-GCC-11.3.0 
-   BBMap/37.93-foss-2018a +   BayesAss3-SNPs/1.1-GCC-11.3.0 
-   BCFtools/1.3-foss-2016a +   BCFtools/1.15.1-GCC-11.3.0 
-   BCFtools/1.9-foss-2018a                           (D) +   BEDTools/2.30.0-GCC-11.3.0 
-   BEDTools/2.25.0-foss-2016a +   BioPerl/1.7.8-GCCcore-11.3.0 
-   BEDTools/2.27.1-foss-2018a +   Biopython/1.79-foss-2022a 
-   BEDTools/2.27.1-GCCcore-6.4.0                     (D) +   BLAST+/2.13.0-gompi-2022a 
-   BLAST+/2.3.0-foss-2016a-Python-2.7.11 +   BLAST/2.11.0-Linux_x86_64 
-   BLAST+/2.7.1-foss-2018a                           (D) +    
-   BLAST/2.2.22-Linux_x86_64 +   ... et cetera...
-   BLAST/2.2.26-Linux_x86_64                         (D) +
-   BOLT-LMM/2.3.+
---More--+
 </code> </code>
 We can use the spacebar to scroll through the extensive list. As you can see the list contains software packages. For each package one or more versions is available.  We can use the spacebar to scroll through the extensive list. As you can see the list contains software packages. For each package one or more versions is available. 
Line 54: Line 53:
 In order to bring down the list to certain packages only we can specify an argument to ''module avail''. If we specify 'R', or 'r' as an argument it will show us all packages with an 'r' in its name. This will not help much, so we have to be more precise. A more useful search string would be 'r/3': In order to bring down the list to certain packages only we can specify an argument to ''module avail''. If we specify 'R', or 'r' as an argument it will show us all packages with an 'r' in its name. This will not help much, so we have to be more precise. A more useful search string would be 'r/3':
 <code> <code>
-[username@habrok ~]$ module avail r/+[username@habrok ~]$ module avail r/4
----------------------------- /software/modules/bio ---------------------------- +
-   HMMER/3.1b2-foss-2018a+
  
---------------------------- /software/modules/lang ---------------------------- +-------------------------------------- /cvmfs/hpc.rug.nl/versions/2023.01/rocky8/x86_64/amd/zen3/modules/lang -------------------------------------- 
-   R/3.2.3-foss-2016a +   R/4.2.1-foss-2022a
-   R/3.3.1-foss-2016a +
-   R/3.3.3-foss-2016a-X11-20160819 +
-   R/3.4.2-foss-2016a-X11-20160819 +
-   R/3.4.4-foss-2018a-X11-20180131 +
-   R/3.5.0-foss-2018a-X11-20180131 +
-   R/3.6.1-foss-2018a                        (D) +
-   Tkinter/3.6.4-foss-2018a-Python-3.6.4 +
-   Tkinter/3.6.4-fosscuda-2018a-Python-3.6.4 +
-   Tkinter/3.7.2-GCCcore-8.2.0 +
-   Tkinter/3.7.4-GCCcore-8.3.0               (D)+
  
---------------------------- /software/modules/math ---------------------------- +-------------------------------------- /cvmfs/hpc.rug.nl/versions/2023.01/rocky8/x86_64/amd/zen3/modules/lib --------------------------------------- 
-   MPFR/3.1.4-foss-2016a+   NSPR/4.34-GCCcore-11.3.0 
 + 
 +-------------------------------------- /cvmfs/hpc.rug.nl/versions/2023.01/rocky8/x86_64/amd/zen3/modules/math -------------------------------------- 
 +   MPFR/4.1.0-GCCcore-11.3.0
  
-  Where: 
-   D:  Default Module 
---More-- 
 </code> </code>
  
-Now we can see several versions of R that are available. One of the things that are shown is that the packages that have '(D)' behind the name are the default versions.+Now we can see the actual version(s) of R that is/are available. If multiple versions of the same application are available, only one of them will have '(D)' behind the name, denoting that this is the default versions.
  
 ==== module load/add ==== ==== module load/add ====
Line 87: Line 74:
 [username@habrok ~]$ module load R [username@habrok ~]$ module load R
 [username@habrok ~]$ R --version [username@habrok ~]$ R --version
-R version 3.6.1 (2019-07-05) -- "Action of the Toes+R version 4.2.1 (2022-06-23) -- "Funny-Looking Kid
-Copyright (C) 2019 The R Foundation for Statistical Computing+Copyright (C) 2022 The R Foundation for Statistical Computing
 Platform: x86_64-pc-linux-gnu (64-bit) Platform: x86_64-pc-linux-gnu (64-bit)
  
Line 99: Line 86:
 [username@habrok ~]$ [username@habrok ~]$
 </code> </code>
-As can be seen from the last output R version 3.6.1 is now in our environment. If no version is specified the default version of the package is loaded.+As can be seen from the last output R version 4.2.1 is now in our environment. If no version is specified the default version of the package is loaded.
  
 **CAVEAT** Although packages have default versions, these defaults are subject to change without notice. It is therefore better to be explicit in the version that is to be loaded, especially in jobscripts. Otherwise you may find out that jobscripts break when the default suddenly changes. **CAVEAT** Although packages have default versions, these defaults are subject to change without notice. It is therefore better to be explicit in the version that is to be loaded, especially in jobscripts. Otherwise you may find out that jobscripts break when the default suddenly changes.
Line 105: Line 92:
 For loading a specific version the full version has to be specified like: For loading a specific version the full version has to be specified like:
 <code> <code>
-[username@habrok ~]$ module load R/3.5.0-foss-2018a-X11-20180131  +[username@habrok ~]$ module load R/4.2.1-foss-2022a
-[username@habrok ~]$ R --version +
-R version 3.5.0 (2018-04-23) -- "Joy in Playing" +
-Copyright (C) 2018 The R Foundation for Statistical Computing +
-Platform: x86_64-pc-linux-gnu (64-bit) +
- +
-R is free software and comes with ABSOLUTELY NO WARRANTY. +
-You are welcome to redistribute it under the terms of the +
-GNU General Public License versions 2 or 3. +
-For more information about these matters see +
-http://www.gnu.org/licenses/+
- +
-[username@habrok ~]$ +
 </code> </code>
  
 ==== module spider ==== ==== module spider ====
  
-Another way to find out more information about available packages is through module spider. In this uppercase R has to be used as well:+Another way to find out more information about available packages is through module spider. With this subcommand you also have to make sure to use an uppercase R:
 <code> <code>
 [username@habrok ~]$ module spider R [username@habrok ~]$ module spider R
 +------------------------------------------------------------------------------------------------------------------------------------------------
 +  R: R/4.2.1-foss-2022a
 +------------------------------------------------------------------------------------------------------------------------------------------------
 +    Description:
 +      R is a free software environment for statistical computing and graphics.
  
---------------------------------------------------------------------------- 
-  R: 
---------------------------------------------------------------------------- 
-    Description: 
-      R is a free software environment for statistical computing and 
-      graphics.  
  
-     Versions: 
-        R/3.2.3-foss-2016a 
-        R/3.3.1-foss-2016a 
-        R/3.3.3-foss-2016a-X11-20160819 
-        R/3.4.2-foss-2016a-X11-20160819 
-        R/3.4.4-foss-2018a-X11-20180131 
-        R/3.5.0-foss-2018a-X11-20180131 
-        R/3.6.1-foss-2018a 
      Other possible modules matches:      Other possible modules matches:
-        ADMIXTURE  ANTLR  AmberTools  Annocript  Armadillo  BioPerl  ...+        Amber, AmberTools, Arrow, BioPerl, Brotli, CapnProto, DendroPy, FastTree, FreeSurfer, FriBidi, GCCcore, GDRCopy, GObject-Introspection, ...
  
---------------------------------------------------------------------------- +    You will need to load all module(s) on any one of the lines below before the "R/4.2.1-foss-2022a" module is available to load.
-  To find other possible module matches execute:+
  
---More--+      2023.01 
 +  
 +    This module provides the following extensions: 
 + 
 +    [removed the long output showing all included R libraries>
 </code> </code>
 This command shows some extra information on the package. This command shows some extra information on the package.
Line 158: Line 127:
  
 Currently Loaded Modules: Currently Loaded Modules:
-  1) GCCcore/6.4.0                                20nettle/3.4-foss-2018a              39LibTIFF/4.0.9-GCCcore-6.4.0 +  1) 2023.01                           (S)  35) X11/20220504-GCCcore-11.3.0         69) LAME/3.100-GCCcore-11.3.0 
-  2) binutils/2.28-GCCcore-6.4.0                  21) libdrm/2.4.91-GCCcore-6.4.0        40Java/1.8.0_162 +  2StdEnv                            (S)  36) gzip/1.12-GCCcore-11.3.0            70) libsndfile/1.1.0-GCCcore-11.3.0 
-  3) GCC/6.4.0-2.28                               22ncurses/6.0-GCCcore-6.4.0          41) Tk/8.6.8-foss-2018a +  3GCCcore/11.3.0                         37) lz4/1.9.3-GCCcore-11.3.0            71) ICU/71.1-GCCcore-11.3.0 
-  4numactl/2.0.11-GCCcore-6.4.0                 23) LLVM/5.0.1-GCCcore-6.4.0           42cURL/7.58.0-GCCcore-6.4.0 +  4) zlib/1.2.12-GCCcore-11.3.0             38) zstd/1.5.2-GCCcore-11.3.0           72) Szip/2.1.1-GCCcore-11.3.0 
-  5hwloc/1.11.8-GCCcore-6.4.0                   24) Mesa/17.3.6-foss-2018a             43libxml2/2.9.7-GCCcore-6.4.0 +  5) binutils/2.38-GCCcore-11.3.0           39) libdrm/2.4.110-GCCcore-11.3.0       73HDF5/1.12.2-gompi-2022a 
-  6OpenMPI/2.1.2-GCC-6.4.0-2.28                 25) libGLU/9.0.0-foss-2018a            44Python/3.6.4-foss-2018a +  6) GCC/11.3.0                             40) libglvnd/1.4.0-GCCcore-11.3.0       74) UDUNITS/2.2.28-GCCcore-11.3.0 
-  7OpenBLAS/0.2.20-GCC-6.4.0-2.28               26) pixman/0.34.0-GCCcore-6.4.0        45Szip/2.1.1-GCCcore-6.4.0 +  7numactl/2.0.14-GCCcore-11.3.0          41) libunwind/1.6.2-GCCcore-11.3.0      75GSL/2.7-GCC-11.3.0 
-  8gompi/2018a                                  27) libffi/3.2.1-GCCcore-6.4.0         46HDF5/1.10.1-foss-2018a +  8) XZ/5.2.5-GCCcore-11.3.0                42) LLVM/14.0.3-GCCcore-11.3.0          76ATK/2.38.0-GCCcore-11.3.0 
-  9FFTW/3.3.7-gompi-2018a                       28XZ/5.2.3-GCCcore-6.4.0             47netCDF/4.6.0-foss-2018a +  9libxml2/2.9.13-GCCcore-11.3.0          43) Mesa/22.0.3-GCCcore-11.3.0          77Gdk-Pixbuf/2.42.8-GCCcore-11.3.0 
- 10ScaLAPACK/2.0.2-gompi-2018a-OpenBLAS-0.2.20  29gettext/0.19.8.1-GCCcore-6.4.0     48GEOS/3.6.2-foss-2018a-Python-3.6.4 + 10libpciaccess/0.16-GCCcore-11.3.0       44) libGLU/9.0.2-GCCcore-11.3.0         78HarfBuzz/4.2.1-GCCcore-11.3.0 
- 11) foss/2018a                                   30PCRE/8.41-GCCcore-6.4.0            49JasPer/2.0.14-GCCcore-6.4.0 + 11hwloc/2.7.1-GCCcore-11.3.0             45) pixman/0.40.0-GCCcore-11.3.0        79FriBidi/1.0.12-GCCcore-11.3.0 
- 12bzip2/1.0.6-GCCcore-6.4.0                    31util-linux/2.31-GCCcore-6.4.0      50PROJ/5.0.0-foss-2018a + 12OpenSSL/1.1                            46) libffi/3.4.2-GCCcore-11.3.0         80Pango/1.50.7-GCCcore-11.3.0 
- 13expat/2.2.5-GCCcore-6.4.0                    32GLib/2.54.3-GCCcore-6.4.0          51) libgeotiff/1.4.2-foss-2018a + 13libevent/2.1.12-GCCcore-11.3.0         47gettext/0.21-GCCcore-11.3.0         81) GTK2/2.24.33-GCCcore-11.3.0 
- 14zlib/1.2.11-GCCcore-6.4.0                    33cairo/1.14.12-GCCcore-6.4.0        52GDAL/2.2.3-foss-2018a-Python-3.6.4 + 14) UCX/1.12.1-GCCcore-11.3.0              48PCRE/8.45-GCCcore-11.3.0            82) Ghostscript/9.56.1-GCCcore-11.3.0 
- 15) libpng/1.6.34-GCCcore-6.4.0                  34libreadline/7.0-GCCcore-6.4.0      53NLopt/2.4.2-foss-2018a + 15libfabric/1.15.1-GCCcore-11.3.0        49) GLib/2.72.1-GCCcore-11.3.0          83) JasPer/2.0.33-GCCcore-11.3.0 
- 16freetype/2.9-GCCcore-6.4.0                   35Tcl/8.6.8-GCCcore-6.4.0            54libsndfile/1.0.28-GCCcore-6.4.0 + 16) PMIx/4.1.2-GCCcore-11.3.             50) cairo/1.17.4-GCCcore-11.3.0         84) LittleCMS/2.13.1-GCCcore-11.3.0 
- 17fontconfig/2.12.6-GCCcore-6.4.0              36SQLite/3.21.0-GCCcore-6.4.0        55ICU/61.1-GCCcore-6.4.0 + 17UCC/1.0.0-GCCcore-11.3.0               51) libreadline/8.1.2-GCCcore-11.3.0    85ImageMagick/7.1.0-37-GCCcore-11.3.0 
- 18X11/20180131-GCCcore-6.4.0                   37NASM/2.13.03-GCCcore-6.4.0         56R/3.5.0-foss-2018a-X11-20180131 + 18) OpenMPI/4.1.4-GCC-11.3.0               52) Tcl/8.6.12-GCCcore-11.3.0           86) GLPK/5.0-GCCcore-11.3.0 
- 19GMP/6.1.2-GCCcore-6.4.0                      38libjpeg-turbo/1.5.3-GCCcore-6.4.0+ 19) OpenBLAS/0.3.20-GCC-11.3.0             53SQLite/3.38.3-GCCcore-11.3.0        87nodejs/16.15.1-GCCcore-11.3.0 
 + 20FlexiBLAS/3.2.0-GCC-11.3.0             54) PCRE2/10.40-GCCcore-11.3.0          88) Python/3.10.4-GCCcore-11.3.0 
 + 21FFTW/3.3.10-GCC-11.3.0                 55) NASM/2.15.05-GCCcore-11.3.0         89) netCDF/4.9.0-gompi-2022a 
 + 22gompi/2022a                            56) libjpeg-turbo/2.1.3-GCCcore-11.3.0  90GEOS/3.10.3-GCC-11.3.0 
 + 23FFTW.MPI/3.3.10-gompi-2022a            57) jbigkit/2.1-GCCcore-11.3.0          91) nlohmann_json/3.10.5-GCCcore-11.3.0 
 + 24ScaLAPACK/2.2.0-gompi-2022a-fb         58) libdeflate/1.10-GCCcore-11.3.0      92) PROJ/9.0.0-GCCcore-11.3.0 
 + 25) foss/2022a                             59) LibTIFF/4.3.0-GCCcore-11.3.0        93) libgeotiff/1.7.1-GCCcore-11.3.0 
 + 26bzip2/1.0.8-GCCcore-11.3.0             60Java/11.0.16                        94) pybind11/2.9.2-GCCcore-11.3.0 
 + 27expat/2.4.8-GCCcore-11.3.0             61) Tk/8.6.12-GCCcore-11.3.0            95) SciPy-bundle/2022.05-foss-2022a 
 + 28) libpng/1.6.37-GCCcore-11.3.0           62cURL/7.83.0-GCCcore-11.3.0          96libtirpc/1.3.2-GCCcore-11.3.0 
 + 29Brotli/1.0.9-GCCcore-11.3.0            63GMP/6.2.1-GCCcore-11.3.0            97HDF/4.2.15-GCCcore-11.3.0 
 + 30freetype/2.12.1-GCCcore-11.3.0         64NLopt/2.7.1-GCCcore-11.3.0          98) GDAL/3.5.0-foss-2022a 
 + 31) ncurses/6.3-GCCcore-11.3.0             65libogg/1.3.5-GCCcore-11.3.0         99) MPFR/4.1.0-GCCcore-11.3.0 
 + 32util-linux/2.38-GCCcore-11.3.0         66) FLAC/1.3.4-GCCcore-11.3.0          100libgit2/1.4.3-GCCcore-11.3.0 
 + 33) fontconfig/2.14.0-GCCcore-11.3.0       67libvorbis/1.3.7-GCCcore-11.3.0     101) R/4.2.1-foss-2022a 
 + 34xorg-macros/1.19.3-GCCcore-11.3.0      68libopus/1.3.1-GCCcore-11.3.0
 </code> </code>
  
-As you can see not only R 3.5.0 has been loaded, but also a lot of other modules. These modules are all the tools and libraries this version of R depends on. +As you can see not only R itself has been loaded, but also a lot of other modules. These modules are all the tools and libraries this version of R depends on.  
 + 
 +One of the issues that you will probably encounter is that if you want to use different modules, and load these, that you run into conflicts with respect to the underlying dependencies. More on this later.
  
-One of the issues that you will probably encounter is that if you want to use different modules, and load these that you run into conflitcs with respect to the underlying dependencies. More on this later. +==== module del/unload ====
-==== module del/rm ====+
  
-In order to remove a certain module from the environment the ''rm'' or equivalent ''del'' subcommand can be used:+In order to unload a certain module from the environment the ''unload'' or equivalent ''del'' subcommand can be used:
 <code> <code>
-[username@habrok ~]$ module rm R+[username@habrok ~]$ module unload R
 [username@habrok ~]$ module list [username@habrok ~]$ module list
  
 Currently Loaded Modules: Currently Loaded Modules:
-  1) GCCcore/6.4.0                                20nettle/3.4-foss-2018a              39LibTIFF/4.0.9-GCCcore-6.4.0 +  1) 2023.01                           (S)  35) X11/20220504-GCCcore-11.3.0         69) LAME/3.100-GCCcore-11.3.0 
-  2) binutils/2.28-GCCcore-6.4.0                  21) libdrm/2.4.91-GCCcore-6.4.0        40Java/1.8.0_162 +  2StdEnv                            (S)  36) gzip/1.12-GCCcore-11.3.0            70) libsndfile/1.1.0-GCCcore-11.3.0 
-  3) GCC/6.4.0-2.28                               22ncurses/6.0-GCCcore-6.4.0          41) Tk/8.6.8-foss-2018a +  3GCCcore/11.3.0                         37) lz4/1.9.3-GCCcore-11.3.0            71) ICU/71.1-GCCcore-11.3.0 
-  4numactl/2.0.11-GCCcore-6.4.0                 23) LLVM/5.0.1-GCCcore-6.4.0           42cURL/7.58.0-GCCcore-6.4.0 +  4) zlib/1.2.12-GCCcore-11.3.0             38) zstd/1.5.2-GCCcore-11.3.0           72) Szip/2.1.1-GCCcore-11.3.0 
-  5hwloc/1.11.8-GCCcore-6.4.0                   24) Mesa/17.3.6-foss-2018a             43libxml2/2.9.7-GCCcore-6.4.0 +  5) binutils/2.38-GCCcore-11.3.0           39) libdrm/2.4.110-GCCcore-11.3.0       73HDF5/1.12.2-gompi-2022a 
-  6OpenMPI/2.1.2-GCC-6.4.0-2.28                 25) libGLU/9.0.0-foss-2018a            44Python/3.6.4-foss-2018a +  6) GCC/11.3.0                             40) libglvnd/1.4.0-GCCcore-11.3.0       74) UDUNITS/2.2.28-GCCcore-11.3.0 
-  7OpenBLAS/0.2.20-GCC-6.4.0-2.28               26) pixman/0.34.0-GCCcore-6.4.0        45Szip/2.1.1-GCCcore-6.4.0 +  7numactl/2.0.14-GCCcore-11.3.0          41) libunwind/1.6.2-GCCcore-11.3.0      75GSL/2.7-GCC-11.3.0 
-  8gompi/2018a                                  27) libffi/3.2.1-GCCcore-6.4.0         46HDF5/1.10.1-foss-2018a +  8) XZ/5.2.5-GCCcore-11.3.0                42) LLVM/14.0.3-GCCcore-11.3.0          76ATK/2.38.0-GCCcore-11.3.0 
-  9FFTW/3.3.7-gompi-2018a                       28XZ/5.2.3-GCCcore-6.4.0             47netCDF/4.6.0-foss-2018a +  9libxml2/2.9.13-GCCcore-11.3.0          43) Mesa/22.0.3-GCCcore-11.3.0          77Gdk-Pixbuf/2.42.8-GCCcore-11.3.0 
- 10ScaLAPACK/2.0.2-gompi-2018a-OpenBLAS-0.2.20  29gettext/0.19.8.1-GCCcore-6.4.0     48GEOS/3.6.2-foss-2018a-Python-3.6.4 + 10libpciaccess/0.16-GCCcore-11.3.0       44) libGLU/9.0.2-GCCcore-11.3.0         78HarfBuzz/4.2.1-GCCcore-11.3.0 
- 11) foss/2018a                                   30PCRE/8.41-GCCcore-6.4.0            49JasPer/2.0.14-GCCcore-6.4.0 + 11hwloc/2.7.1-GCCcore-11.3.0             45) pixman/0.40.0-GCCcore-11.3.0        79FriBidi/1.0.12-GCCcore-11.3.0 
- 12bzip2/1.0.6-GCCcore-6.4.0                    31util-linux/2.31-GCCcore-6.4.0      50PROJ/5.0.0-foss-2018a + 12OpenSSL/1.1                            46) libffi/3.4.2-GCCcore-11.3.0         80Pango/1.50.7-GCCcore-11.3.0 
- 13expat/2.2.5-GCCcore-6.4.0                    32GLib/2.54.3-GCCcore-6.4.0          51) libgeotiff/1.4.2-foss-2018a + 13libevent/2.1.12-GCCcore-11.3.0         47gettext/0.21-GCCcore-11.3.0         81) GTK2/2.24.33-GCCcore-11.3.0 
- 14zlib/1.2.11-GCCcore-6.4.0                    33cairo/1.14.12-GCCcore-6.4.0        52GDAL/2.2.3-foss-2018a-Python-3.6.4 + 14) UCX/1.12.1-GCCcore-11.3.0              48PCRE/8.45-GCCcore-11.3.0            82) Ghostscript/9.56.1-GCCcore-11.3.0 
- 15) libpng/1.6.34-GCCcore-6.4.0                  34libreadline/7.0-GCCcore-6.4.0      53NLopt/2.4.2-foss-2018a + 15libfabric/1.15.1-GCCcore-11.3.0        49) GLib/2.72.1-GCCcore-11.3.0          83) JasPer/2.0.33-GCCcore-11.3.0 
- 16freetype/2.9-GCCcore-6.4.0                   35Tcl/8.6.8-GCCcore-6.4.0            54libsndfile/1.0.28-GCCcore-6.4.0 + 16) PMIx/4.1.2-GCCcore-11.3.             50) cairo/1.17.4-GCCcore-11.3.0         84) LittleCMS/2.13.1-GCCcore-11.3.0 
- 17fontconfig/2.12.6-GCCcore-6.4.0              36SQLite/3.21.0-GCCcore-6.4.0        55ICU/61.1-GCCcore-6.4.0 + 17UCC/1.0.0-GCCcore-11.3.0               51) libreadline/8.1.2-GCCcore-11.3.0    85ImageMagick/7.1.0-37-GCCcore-11.3.0 
- 18X11/20180131-GCCcore-6.4.0                   37NASM/2.13.03-GCCcore-6.4.0 + 18) OpenMPI/4.1.4-GCC-11.3.0               52) Tcl/8.6.12-GCCcore-11.3.0           86) GLPK/5.0-GCCcore-11.3.0 
- 19GMP/6.1.2-GCCcore-6.4.0                      38libjpeg-turbo/1.5.3-GCCcore-6.4.0+ 19) OpenBLAS/0.3.20-GCC-11.3.0             53SQLite/3.38.3-GCCcore-11.3.0        87nodejs/16.15.1-GCCcore-11.3.0 
 + 20FlexiBLAS/3.2.0-GCC-11.3.0             54) PCRE2/10.40-GCCcore-11.3.0          88) Python/3.10.4-GCCcore-11.3.0 
 + 21FFTW/3.3.10-GCC-11.3.0                 55) NASM/2.15.05-GCCcore-11.3.0         89) netCDF/4.9.0-gompi-2022a 
 + 22gompi/2022a                            56) libjpeg-turbo/2.1.3-GCCcore-11.3.0  90GEOS/3.10.3-GCC-11.3.0 
 + 23FFTW.MPI/3.3.10-gompi-2022a            57) jbigkit/2.1-GCCcore-11.3.0          91) nlohmann_json/3.10.5-GCCcore-11.3.0 
 + 24ScaLAPACK/2.2.0-gompi-2022a-fb         58) libdeflate/1.10-GCCcore-11.3.0      92) PROJ/9.0.0-GCCcore-11.3.0 
 + 25) foss/2022a                             59) LibTIFF/4.3.0-GCCcore-11.3.0        93) libgeotiff/1.7.1-GCCcore-11.3.0 
 + 26bzip2/1.0.8-GCCcore-11.3.0             60Java/11.0.16                        94) pybind11/2.9.2-GCCcore-11.3.0 
 + 27expat/2.4.8-GCCcore-11.3.0             61) Tk/8.6.12-GCCcore-11.3.0            95) SciPy-bundle/2022.05-foss-2022a 
 + 28) libpng/1.6.37-GCCcore-11.3.0           62cURL/7.83.0-GCCcore-11.3.0          96libtirpc/1.3.2-GCCcore-11.3.0 
 + 29Brotli/1.0.9-GCCcore-11.3.0            63GMP/6.2.1-GCCcore-11.3.0            97HDF/4.2.15-GCCcore-11.3.0 
 + 30freetype/2.12.1-GCCcore-11.3.0         64NLopt/2.7.1-GCCcore-11.3.0          98) GDAL/3.5.0-foss-2022a 
 + 31) ncurses/6.3-GCCcore-11.3.0             65libogg/1.3.5-GCCcore-11.3.0         99) MPFR/4.1.0-GCCcore-11.3.0 
 + 32util-linux/2.38-GCCcore-11.3.0         66FLAC/1.3.4-GCCcore-11.3.0          100) libgit2/1.4.3-GCCcore-11.3.0 
 + 33fontconfig/2.14.0-GCCcore-11.3.0       67) libvorbis/1.3.7-GCCcore-11.3.0 
 + 34xorg-macros/1.19.3-GCCcore-11.3.0      68) libopus/1.3.1-GCCcore-11.3.0
 </code> </code>
-As you can see R has been removed from the environment. This is not true, however, for the dependencies that were loaded as well. In most cases the ''rm'' or ''del'' subcommand is therefore not very useful.+As you can see R has been removed from the environment. This is not true, however, for the dependencies that were loaded as well. In most cases the ''unload'' or ''del'' subcommand is therefore not very useful. 
 ==== module purge ==== ==== module purge ====
  
Line 216: Line 217:
 <code> <code>
 [username@habrok ~]$ module purge [username@habrok ~]$ module purge
 +The following modules were not unloaded:
 +  (Use "module --force purge" to unload all):
 +
 +  1) 2023.01   2) StdEnv
 [username@habrok ~]$ module list [username@habrok ~]$ module list
-No modules loaded+Currently Loaded Modules: 
 +  1) 2023.01 (S)   2) StdEnv (S) 
 + 
 +  Where: 
 +   S:  Module is Sticky, requires --force to unload or purge
 [username@habrok ~]$  [username@habrok ~]$ 
 </code> </code>
 +
 +Note that, even with ''purge'', it will not unload the two default modules ''StdEnv'' and ''2023.01'', as you will lose access to all modules in that case. If you do really want to unload those ones as well, you can use ''module --force purge''. In order to regain access to the modules of the ''2023.01'' software stack later on, you can use ''module load 2023.01''.
  
 ==== module save ==== ==== module save ====
Line 225: Line 236:
 If you have a set of modules that you need to use more often, you can save this set into a configuration which is stored for reuse later. This can be done using the subcommand ''restore''. If you have a set of modules that you need to use more often, you can save this set into a configuration which is stored for reuse later. This can be done using the subcommand ''restore''.
 <code> <code>
-[username@habrok ~]$ module load BLAST+/2.7.1-foss-2018a  +[username@habrok ~]$ module load BLAST+/2.13.0-gompi-2022a  
-[username@habrok ~]$ module load Beast/2.6.1-foss-2018a +[username@habrok ~]$ module load Stacks/2.62-foss-2022a 
 [username@habrok ~]$ module save my_favorite_modules [username@habrok ~]$ module save my_favorite_modules
 Saved current collection of modules to: "my_favorite_modules" Saved current collection of modules to: "my_favorite_modules"
Line 237: Line 248:
 <code> <code>
 [username@habrok ~]$ module purge [username@habrok ~]$ module purge
 +The following modules were not unloaded:
 +  (Use "module --force purge" to unload all):
 +
 +  1) 2023.01   2) StdEnv
 [username@habrok ~]$ module list [username@habrok ~]$ module list
-No modules loaded+ 
 +Currently Loaded Modules: 
 +  1) 2023.01 (S)   2) StdEnv (S) 
 + 
 +  Where: 
 +   S:  Module is Sticky, requires --force to unload or purge 
 [username@habrok ~]$ module restore my_favorite_modules [username@habrok ~]$ module restore my_favorite_modules
 Restoring modules from user's my_favorite_modules Restoring modules from user's my_favorite_modules
Line 244: Line 265:
  
 Currently Loaded Modules: Currently Loaded Modules:
-  1) GCCcore/6.4.0                  7OpenBLAS/0.2.20-GCC-6.4.0-2.28               13bzip2/1.0.6-GCCcore-6.4.0    19) libjpeg-turbo/1.5.3-GCCcore-6.4.0 +  1) 2023.01                          (S)  13) libevent/2.1.12-GCCcore-11.3.0   25) libpng/1.6.37-GCCcore-11.3.0 
-  2binutils/2.28-GCCcore-6.4.0    8gompi/2018a                                  14) PCRE/8.41-GCCcore-6.4.0      20) LMDB/0.9.21-GCCcore-6.4.0 +  2StdEnv                           (S)  14) UCX/1.12.1-GCCcore-11.3.0        26) NASM/2.15.05-GCCcore-11.3.0 
-  3) GCC/6.4.0-2.28                 9FFTW/3.3.7-gompi-2018a                       15Boost/1.66.0-foss-2018a      21BLAST+/2.7.1-foss-2018a +  3GCCcore/11.3.0                        15) libfabric/1.15.1-GCCcore-11.3.0  27) libjpeg-turbo/2.1.3-GCCcore-11.3.0 
-  4) numactl/2.0.11-GCCcore-6.4.0  10ScaLAPACK/2.0.2-gompi-2018a-OpenBLAS-0.2.20  16GMP/6.1.2-GCCcore-6.4.0      22Java/1.8.0_162 +  4zlib/1.2.12-GCCcore-11.3.0            16PMIx/4.1.2-GCCcore-11.3.0        28) LMDB/0.9.29-GCCcore-11.3.0 
-  5hwloc/1.11.8-GCCcore-6.4.0    11foss/2018a                                   17libpng/1.6.34-GCCcore-6.4.0  23beagle-lib/3.0.1-foss-2018a +  5) binutils/2.38-GCCcore-11.3.0          17UCC/1.0.0-GCCcore-11.3.0         29BLAST+/2.13.0-gompi-2022a 
-  6OpenMPI/2.1.2-GCC-6.4.0-2.28  12zlib/1.2.11-GCCcore-6.4.0                    18NASM/2.13.03-GCCcore-6.4.0   24Beast/2.6.1-foss-2018a+  6GCC/11.3.0                            18) OpenMPI/4.1.4-GCC-11.3.0         30OpenBLAS/0.3.20-GCC-11.3.0 
 +  7) numactl/2.0.14-GCCcore-11.3.0         19gompi/2022a                      31) FlexiBLAS/3.2.0-GCC-11.3.
 +  8XZ/5.2.5-GCCcore-11.3.0               20bzip2/1.0.8-GCCcore-11.3.0       32) FFTW/3.3.10-GCC-11.3.0 
 +  9libxml2/2.9.13-GCCcore-11.3.0         21) PCRE/8.45-GCCcore-11.3.0         33FFTW.MPI/3.3.10-gompi-2022a 
 + 10libpciaccess/0.16-GCCcore-11.3.0      22ICU/71.1-GCCcore-11.3.0          34) ScaLAPACK/2.2.0-gompi-2022a-fb 
 + 11hwloc/2.7.1-GCCcore-11.3.0            23Boost/1.79.0-GCC-11.3.0          35foss/2022a 
 + 12) OpenSSL/1.1                           24) GMP/6.2.1-GCCcore-11.3.0         36Stacks/2.62-foss-2022a
 [username@habrok ~]$  [username@habrok ~]$ 
 </code> </code>