Salmon Beta v0.2.5
Pre-releaseWhat is Salmon?
It's a type of fish! But, in the context of RNA-seq, it's the
successor to Sailfish (a rapid "alignment-free" method for transcript
quantification from RNA-seq reads).
Why use Salmon?
Well, Salmon is designed with a lot of what we learned from Sailfish
in mind. We're still adding to and improving Salmon, but it already
has a number of benefits over Sailfish; for example:
- Salmon can make better use of paired-end information than Sailfish. The
algorithm used in Salmon considers both ends of a paired-end read
simultaneously, rather than independently as does Sailfish. Therefore it is
able to make use of any increased specificity that results from this
information. - Salmon has a smaller memory footprint that Sailfish. While the
quantification phase of Sailfish already has a fairly compact memory
footprint, Salmon's is even smaller. Additionally, building the Salmon index
(which is only required if you don't use the alignment-based mode) requires
substantially less memory, and can be faster, than building the Sailfish
index. - Salmon can use (but doesn't require) pre-computed alignments. If you want,
you can use Salmon much like Sailfish, by building an index and feeding it
raw reads. However, if you already have reads from your favorite, super-fast
aligner (cough cough maybe STAR), you can use them with Salmon to quantify
the transcript abundances. - Salmon is fast --- in all of our testing so far, it's actually faster than
Sailfish (though the same relationship doesn't hold between the actual fish).
Further details are contained in the online documentation.
What's New
Version 0.2.5 significantly speeds up read-based salmon on small datasets by keeping the mapping cache in memory. It also fixes a concurrency-related bug in alignment-based salmon that could result in some input alignments being skipped (again, this issue was most prevalent on relatively small datasets). There are also further, general stability, speed, and error-reporting improvements.
Version 0.2.3 fixes a very rare but potentially frustrating bug in v0.2.2, where read-based salmon could encounter a race condition when using the mapping cache and dealing with very small data sets.