From my evaluation and an internal evaluation done by 1000g:
On specificity (well, bwa is not far off):
On single-end speed:
On paired-end speed:
On paired-end sensitivity, I guess:
On single-end sensitivity, I guess:
On memory (">" means better or less memory):
People choose bowtie and bwa more often probably because both natively support the SAM output, while soap2 not. Bowtie is often seen in RNA-seq/ChIP-seq because it is extremely fast for single-end reads and because the whole tophat/cufflink package is very useful. BWA is often seen for SNP/indel calling because it does gapped alignment and produces fewer false alignment. BWA/stampy/novoalign estimate mapping quality which is at times useful. Bowtie/soap2 do not, which is why they are faster.
When you really come to very rare events (e.g. somatic mutations, structural variations, RNA editing and rare splicing form), probably you should consider novoalign/stampy or even trying two aligners at the same time.
@lh3: I profiled both your latest version of bwa (short read) and soap2 in "intel vtune" for "single end read" of human "chromosomes10" and "chromsomeX" but found the soap2 faster. That doesn't follow your answer. Am I missing something?
I am saying for single-end reads soap2 is faster than bwa?
Probably just had trouble parsing that very useful and information dense paragraph. Would be a bit more readable if you tabulated those results or at least started each '>' string on its own line...
I just quickly edited the post because it was quite unreadable despite the interesting information.
I have a question regarding specificity: when comparing specificity for aligners and getting something below 100%, does that mean that some tools indeed call 'false' alignments. How is it at all possible?
Essentially no aligner guarantees to find the "best" alignment from the human genome. Even if an aligner could achieve the best, the "best" is not necessarily the correct.
You did not include novoalign in sensitivity, do you kow how it compares to soap2/bwa/bowtie?