Running Trinity in Multiple Steps

Running Trinity with Paired-End fastq data with 8 CPUs and 100GB of RAM

The first step of running Trinity is to run Trinity with the option –no_run_inchworm:

trinity_step1.submit
#!/bin/bash
#SBATCH --job-name=Trinity_Step1
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=8
#SBATCH --time=168:00:00
#SBATCH --mem=100gb
#SBATCH --output=Trinity_Step1.%J.out
#SBATCH --error=Trinity_Step1.%J.err

module load trinity

Trinity --seqType fq --max_memory 100G --left input_reads_pair_1.fastq --right input_reads_pair_2.fastq --SS_lib_type FR --output trinity_out/ --CPU $SLURM_NTASKS_PER_NODE --no_run_inchworm

The second step of running Trinity is to run Trinity with the option –no_run_chrysalis:

trinity_step2.submit
#!/bin/bash
#SBATCH --job-name=Trinity_Step2
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=8
#SBATCH --time=168:00:00
#SBATCH --mem=100gb
#SBATCH --output=Trinity_Step2.%J.out
#SBATCH --error=Trinity_Step2.%J.err

module load trinity

Trinity --seqType fq --max_memory 100G --left input_reads_pair_1.fastq --right input_reads_pair_2.fastq --SS_lib_type FR --output trinity_out/ --CPU $SLURM_NTASKS_PER_NODE --no_run_chrysalis

The third step of running Trinity is to run Trinity with the option –no_distributed_trinity_exec:

trinity_step3.submit
#!/bin/bash
#SBATCH --job-name=Trinity_Step3
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=8
#SBATCH --time=168:00:00
#SBATCH --mem=100gb
#SBATCH --output=Trinity_Step3.%J.out
#SBATCH --error=Trinity_Step3.%J.err

module load trinity

Trinity --seqType fq --max_memory 100G --left input_reads_pair_1.fastq --right input_reads_pair_2.fastq --SS_lib_type FR --output trinity_out/ --CPU $SLURM_NTASKS_PER_NODE --no_distributed_trinity_exec

The fourth step of running Trinity is to run Trinity without any additional option:

trinity_step4.submit
#!/bin/bash
#SBATCH --job-name=Trinity_Step4
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=8
#SBATCH --time=168:00:00
#SBATCH --mem=100gb
#SBATCH --output=Trinity_Step4.%J.out
#SBATCH --error=Trinity_Step4.%J.err

module load trinity

Trinity --seqType fq --max_memory 100G --left input_reads_pair_1.fastq --right input_reads_pair_2.fastq --SS_lib_type FR --output trinity_out/ --CPU $SLURM_NTASKS_PER_NODE

Trinity Output

Trinity outputs number of files in its trinity_out/ output directory after each executed step. The output file Trinity.fasta is the final Trinity output that contains the assembled transcripts.

The Inchworm (step 2) and Chrysalis (step 3) steps can be memory intensive. A basic recommendation is to have 1GB of RAM per 1M ~76 base Illumina paired-end reads.