Difference between revisions of "Trinity"

From UFRC
Jump to navigation Jump to search
 
(36 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Trinity is an application for de novo reconstruction of transcriptomes from RNA-Seq data.  Its home page is at
+
__NOTOC__
http://trinityrnaseq.sourceforge.net/.
+
__NOEDITSECTION__
 +
[[Category:Software]][[Category:Biology]][[Category:NGS]][[Category:Sequencing]][[Category:RNA-Seq]]
 +
{|<!--Main settings - REQUIRED-->
 +
|{{#vardefine:app|trinity}}
 +
|{{#vardefine:url|http://trinityrnaseq.sourceforge.net/}}
 +
|{{#vardefine:exe|1}} <!--Present manual instructions for running the software -->
 +
|}
 +
<!-- ########  Template Body ######## -->
 +
<!--Description-->
 +
{{#if: {{#var: url}}|
 +
{{App_Description|app={{#var:app}}|url={{#var:url}}|name={{#var:app}}}}|}}
  
===Installation===
+
Trinity, developed at the Broad Institute and the Hebrew University of Jerusalem, represents a novel method for the efficient and robust de novo reconstruction of transcriptomes from RNA-seq data. Trinity combines three independent software modules: Inchworm, Chrysalis, and Butterfly, applied sequentially to process large volumes of RNA-seq reads. Trinity partitions the sequence data into many individual de Bruijn graphs, each representing the transcriptional complexity at at a given gene or locus, and then processes each graph independently to extract full-length splicing isoforms and to tease apart transcripts derived from paralogous genes. Briefly, the process works like so:
  
Trinity contains three applications - Inchworm, Chrysalis, and Butterfly.  They are meant to be install in-place.  To install, just download Trinity from their website, untar it, and type 'make'.
+
Inchworm assembles the RNA-seq data into the unique sequences of transcripts, often generating full-length transcripts for a dominant isoform, but then reports just the unique portions of alternatively spliced transcripts.
  
===Testing===
+
Chrysalis clusters the Inchworm contigs into clusters and constructs complete de Bruijn graphs for each cluster. Each cluster represents the full transcriptonal complexity for a given gene (or sets of genes that share sequences in common). Chrysalis then partitions the full read set among these disjoint graphs.
  
There are two tests which come with Trinity:
+
Butterfly then processes the individual graphs in parallel, tracing the paths that reads and pairs of reads take within the graph, ultimately reporting full-length transcripts for alternatively spliced isoforms, and teasing apart transcripts that corresponds to paralogous genes.
 +
<!--Modules-->
 +
==Environment Modules==
 +
Run <code>module spider {{#var:app}}</code> to find out what environment modules are available for this application.
 +
==System Variables==
 +
* HPC_{{uc:{{#var:app}}}}_DIR - installation directory
 +
* ALLPATHSLG_BASEDIR - Allpaths-LG installation directory
 +
<!--Additional-->
 +
{{#if: {{#var: exe}}|==Additional Information==
 +
To run Trinity after you load the module use the "Trinity" command.
  
<pre>
+
----
/apps/trinity/r20110519/sample_data/runMe.sh
+
=General Performance=
/apps/trinity/r20110519/Butterfly/src/runExample.sh
+
See the [http://trinityrnaseq.github.io/performance/index.html Trinity Performance Page] for an overview of trinity performance and specific pages for [http://trinityrnaseq.github.io/performance/cpu.html CPU] and [http://trinityrnaseq.github.io/performance/mem.html memory] usage.
</pre>
 
  
The former tests the whole flow, and the latter tests Butterfly only.
+
=Local Drive Use=
 +
;Caution!
 +
You must use local scratch directories on compute nodes for Trinity output and then only copy the results back to your /blue/ directory tree. Local scratch directory for a job is available via the $TMPDIR variable provided by SLURM.  Put the output directory under $TMPDIR and then copy that directory to your /blue space ''at the end of the job''. If you do not use $TMPDIR for staging out the Trinity output directory your job(s) could be cancelled without warning. See [[Temporary Directories]] for more information.
 +
----
 +
 
 +
=Java Heap Memory=
 +
If the run produces an error that states that java could not create a virtual machine due to insufficient heap memory you can set the java memory with a command that looks like
 +
export _JAVA_OPTIONS="-Xmx2g"
 +
either at the command line if doing an interactive run on a test node or in the job script. Make sure that the value in the "-Xmx" is less than the amount of memory you requested from the batch system.
 +
 
 +
The default Butterfly memory setting in the Trinity script is '-Xmx20G', so plan your job resource request accordingly.
 +
|}}

Latest revision as of 17:10, 22 August 2022

Description

trinity website  

Trinity, developed at the Broad Institute and the Hebrew University of Jerusalem, represents a novel method for the efficient and robust de novo reconstruction of transcriptomes from RNA-seq data. Trinity combines three independent software modules: Inchworm, Chrysalis, and Butterfly, applied sequentially to process large volumes of RNA-seq reads. Trinity partitions the sequence data into many individual de Bruijn graphs, each representing the transcriptional complexity at at a given gene or locus, and then processes each graph independently to extract full-length splicing isoforms and to tease apart transcripts derived from paralogous genes. Briefly, the process works like so:

Inchworm assembles the RNA-seq data into the unique sequences of transcripts, often generating full-length transcripts for a dominant isoform, but then reports just the unique portions of alternatively spliced transcripts.

Chrysalis clusters the Inchworm contigs into clusters and constructs complete de Bruijn graphs for each cluster. Each cluster represents the full transcriptonal complexity for a given gene (or sets of genes that share sequences in common). Chrysalis then partitions the full read set among these disjoint graphs.

Butterfly then processes the individual graphs in parallel, tracing the paths that reads and pairs of reads take within the graph, ultimately reporting full-length transcripts for alternatively spliced isoforms, and teasing apart transcripts that corresponds to paralogous genes.

Environment Modules

Run module spider trinity to find out what environment modules are available for this application.

System Variables

  • HPC_TRINITY_DIR - installation directory
  • ALLPATHSLG_BASEDIR - Allpaths-LG installation directory

Additional Information

To run Trinity after you load the module use the "Trinity" command.


General Performance

See the Trinity Performance Page for an overview of trinity performance and specific pages for CPU and memory usage.

Local Drive Use

Caution!

You must use local scratch directories on compute nodes for Trinity output and then only copy the results back to your /blue/ directory tree. Local scratch directory for a job is available via the $TMPDIR variable provided by SLURM. Put the output directory under $TMPDIR and then copy that directory to your /blue space at the end of the job. If you do not use $TMPDIR for staging out the Trinity output directory your job(s) could be cancelled without warning. See Temporary Directories for more information.


Java Heap Memory

If the run produces an error that states that java could not create a virtual machine due to insufficient heap memory you can set the java memory with a command that looks like

export _JAVA_OPTIONS="-Xmx2g"

either at the command line if doing an interactive run on a test node or in the job script. Make sure that the value in the "-Xmx" is less than the amount of memory you requested from the batch system.

The default Butterfly memory setting in the Trinity script is '-Xmx20G', so plan your job resource request accordingly.