Salmon

Overview

Salmon is a tool for fast transcript quantification from RNA-seq data. It requires a set of target transcripts (either from a reference or de-novo assembly) to quantify. All you need to run Salmon is a FASTA file containing your reference transcripts and a (set of) FASTA/FASTQ file(s) containing your reads. Optionally, Salmon can make use of pre-computed alignments (in the form of a SAM/BAM file) to the transcripts rather than the raw reads.

Versions 0.14.1 and 1.3.0 are installed on the CSF.

Restrictions on use

Details of the licence, restrictions, links to licence docs etc
There are no restrictions on accessing this software on the CSF. It is release under the GNU GPL v3.0 license and all use must adhere to that license.

The authors of the software request that you cite your usage of the software using the reference:

Rob Patro, Geet Duggal, Michael I. Love, Rafael A. Irizarry, Carl Kingsford.
Salmon provides fast and bias-aware quantification of transcript expression.
Nature Methods. 2017;14(4):417-419. doi: 10.1038/nmeth.4197

Set up procedure

We now recommend loading modulefiles within your jobscript so that you have a full record of how the job was run. See the example jobscript below for how to do this. Alternatively, you may load modulefiles on the login node and let the job inherit these settings.

Load one of the following modulefiles:

module load apps/binapps/salmon/0.14.1

or

module load apps/binapps/salmon/1.3.0

Running the application

Please do not run salmon on the login node. Jobs should be submitted to the compute nodes via batch.

You may run salmon -h to get a list of commands that can be used with salmon. For example:

salmon -h
salmon v1.3.0
Usage:  salmon -h|--help or 
        salmon -v|--version or 
        salmon -c|--cite or 
        salmon [--no-version-check]  [-h | options]

Commands:
     index Create a salmon index
     quant Quantify a sample
     alevin single cell analysis
     swim  Perform super-secret operation
     quantmerge Merge multiple quantifications into a single file

You should use one of the commands in your jobscript (see below).

Serial batch job submission

Create a batch submission script (which will load the modulefile in the jobscript), for example:

#!/bin/bash --login
#$ -cwd             # Job will run from the current directory
                    # NO -V line - we load modulefiles in the jobscript

# We now recommend loading the modulefile in the jobscript. Choose your required version.
module load apps/binapps/salmon/1.3.0

# Inform salmon how many cores it can use. For serial jobs $NSLOTS will be set to 1.
export OMP_NUM_THREADS=$NSLOTS

salmon command files
        #
        # See above for the list of commands that salmon uses.

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Parallel batch job submission

Salmon can use multiple cores in a single compute node (in the smp.pe parallel environment). Create a batch submission script (which will load the modulefile in the jobscript), for example:

#!/bin/bash --login
#$ -cwd             # Job will run from the current directory
#$ -pe smp.pe 8     # Number of cores. Can be 2 -- 32.
                    # NO -V line - we load modulefiles in the jobscript

# We now recommend loading the modulefile in the jobscript. Choose your required version.
module load apps/binapps/salmon/1.3.0

# Inform salmon how many cores it can use. $NSLOTS will be set automatically
# to the number of cores requested above.
export OMP_NUM_THREADS=$NSLOTS

salmon command files
        #
        # See above for the list of commands that salmon uses.

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Further info

Updates

None.

Last modified on August 7, 2020 at 12:17 pm by Ben Pietras