Software
Software can be loaded in two ways: using a Conda environment or loaded as a module. For most users, loading the software as a module is the preferred way to work.
Modules
What is a module?
The module system is a concept available on most cluster, simplifying the use of different software and software-versions in a precise and controlled manner. In general, more software is installed than the average user will ever use, and often there will be several versions provided for a package where it will be necessary for a user to choose between them. Furthermore, two different software packages might clash with eachother as they could overlap when loaded together. Loading software as modular packages overcomes this problem, as the module will manage the user environment for the installed software. In each module it is possible to define pre-requisites (other software it is depending on), or define which software can not be loaded at the same time to avoid conflict.
Working with modules
Using the command module avail will list all the software available in the cluster (a complete list can be found further down this page).
$ module avail
--------------------------- /opt/software/modules ------------------
anaconda2/4.0.0 ccp4/8.0 cuda/11.4 gcc/5.5.0 lapack/3.10.0 ngsadmix/1.0.0 python/3.9.7
anaconda3/4.0.0 ccpem/1.5.0 cuda/11.5 gcc/8.2.0 libxkbcommon/1.3.0 nodejs/14.17.0 python/3.9.9
anaconda3/5.3.1 ccpem/1.6.0 cuda/11.6 gcc/10.2.0 libxscrnsaver/1.0.0 openjdk/11.0.0 python2/2.0
anaconda3/2020.11 cellranger-arc/2.0.0 cuda/11.8 gcc/11.2.0 lightgbm/3.3.2-cpu openjdk/13.0.1 qpdf/10.3.1
anaconda3/2021.05 cellranger-atac/2.0.0 cudnn/8.1.1 gctf/1.06 ltr-retriever/2.9.0 openmpi/4.1.0 R/3.5.0
anaconda3/2021.11 cellranger/2.0.0 cudnn/8.2.1 genozip/11.0.11 mageck/0.5.9.4 openssl/1.1.1j R/3.6.1
...
-------------------------- /projects/mjolnir1/apps/modules ------------------------
abricate/1.0.1 cmake/3.22.2 geos/3.10.2 megahit/1.2.9 plink/1.90b6.21
abyss/2.1.0 cmake/3.25.1 geos/3.11.1 megan/6.21.7 plink2/2.00a2.3
abyss/2.3.4 colorama/0.4.4 gffcompare/0.11.2 meme/5.4.1 plotly/5.1.0
abyss/2.3.5 colorama/0.4.6 ghc/8.10.7 metabat2/2.15 plotly/5.11.0
adapterremoval/2.3.2 contammix/1.0.11 glimpse-bio/1.1.1 metabolic/4.0 pmdtools/0.60
adapterremoval/2.3.3 conterminator/1.c74b5 glimpse/4.18.7 metacache/2.2.1 poetry/1.1.13
adapterremovalfixprefix/0.0.5 crux-toolkit/3.2 gnu-parallel/20161122 metacache/2.2.3 poetry/1.3.1
admixfrog/20221018 crux-toolkit/4.1 gnuplot/5.4.3 metagenome-atlas/2.8.2 polypolish/0.5.0
...
Tip
As the output from module avail is quite long, it is recommended to
pipe the output into less
To get around this you can do the following,
$ module avail | less -S
To see what a module actually is doing you can use module show <module
name>. Modules are typically not doing much more than prepending/appending
things to key environment variables like $PATH, $LD_LIBRARY_PATH and so
on.
$ module show adapterremoval
module show adapterremoval
-------------------------------------------------------------------
/projects/mjolnir1/apps/modules/adapterremoval/2.3.3:
module-whatis {AdapterRemoval 2.3.3 searches for and removes remnant adapter sequences from High-Throughput Sequencing (HTS) data and (optionally) trims low quality bases from the 3' end of reads following adapter removal. AdapterRemoval can analyze both single end and paired end data, and can be used to merge overlapping paired-ended reads into (longer) consensus sequences. Additionally, Additionally, AdapterRemoval can construct a consensus adapter sequence for paired-ended reads, if which this information is not available.}
conflict adapterremoval
prepend-path PATH /projects/mjolnir1/apps/conda/adapterremoval-2.3.3/bin
NOTE: This is a conda-environment and conflicts with dependencies of other modules may occur
-------------------------------------------------------------------
Modules can be loaded with the command module load <module-name>.
If you want to load adapterremoval version 2.3.3 you simply type: module load adapterremoval/2.3.2
Load/Unload Modules
You can see which modules you have loaded with: module list
$ module list
Currently Loaded Modulefiles:
1) adapterremoval/2.3.3 2) bwa/0.7.17 3) tensorflow/2.10.0
Modules can have multiple versions of the software. You can see the various
versions with module avail <modulename>
$ module avail bwa
bwa/0.7.15 bwa/0.7.17
You can also search for all modules with a specific keyword in their
description using: module apropos <keyword>
$ module apropos bwa
bwa/0.7.15: BWA 0.7.15 is a software package for mapping low-divergent sequences against a large reference genome, such as the human genome. It consists of three algorithms: BWA-backtrack, BWA-SW and BWA-MEM. The first algorithm is designed for Illumina sequence reads up to 100bp, while the rest two for longer sequences ranged from 70bp to 1Mbp. BWA-MEM and BWA-SW share similar features such as long-read support and split alignment, but BWA-MEM, which is the latest, is generally recommended for high-quality queries as it is faster and more accurate. BWA-MEM also has better performance than BWA-backtrack for 70-100bp Illumina reads.
bwa/0.7.17: BWA 0.7.17 is a software package for mapping low-divergent sequences against a large reference genome, such as the human genome. It consists of three algorithms: BWA-backtrack, BWA-SW and BWA-MEM. The first algorithm is designed for Illumina sequence reads up to 100bp, while the rest two for longer sequences ranged from 70bp to 1Mbp. BWA-MEM and BWA-SW share similar features such as long-read support and split alignment, but BWA-MEM, which is the latest, is generally recommended for high-quality queries as it is faster and more accurate. BWA-MEM also has better performance than BWA-backtrack for 70-100bp Illumina reads.
circularMapper/1.93.5: circularmapper 1.93.5 A method to improve mappings on circular genomes, using the BWA mapper.
You can load a module by doing:
# Load the latest version of the module
module load modulename
# Load a specific version of a module
module load modulename/version
You can unload a module:
module unload modulename
You can also unload ALL loaded modules:
module purge
List all installed modules
The following software can be loaded as modules. You can sort after “date” to see the newest installed. The sorting function will only appear from a laptop.
Conda Environments
Version specific conda environments can be located in:
/projects/mjolnir1/apps/conda/software-version
If you want to activate the Conda environment bwa version 0.7.17 you simply type:
conda activate /projects/mjolnir1/apps/conda/bwa-0.7.17
When you are finished using the software and want to deactivate it, you type:
conda deactivate
For more information in using conda environments please refer to:
Conda userguide