Table 2. Comparison on 16 sets of programs and parameters using 100 bp paired-end simulated reads.
GPU | CPU | |||||||||||||||||
6M 100 bp Paired-end reads, 1.2 Gbp bases. 500 bp insert size, 25 bp standard deviation. | SOAP3-dp1 (1/4 SA) | SOAP3-dp1 (1/2 SA) | SOAP3-dp1 (Full SA) | SOAP3-dp1 (Full SA, Binary) | SOAP3-dp1 (Full SA, Succinct) | SOAP3 | Bowtie2 (Sensititve) | Bowtie2 (Very-Sensititve) | Bowtie2 (Very-fast) | BWA2 | SeqAlto | SeqAlto (Fast alignement) | CUSHAW2 | GEM3 | GEM3 (Fast Mapping: adaptive) | GEM3 (Fast Mapping: 0) | ||
Configuration | CPU (thread: core i7-3930k) | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | |||
GPU (device: GTX680) | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
Computational | Total Elapsed | sec. | 132 | 137 | 162 | 111 | 112 | 132 | 966 | 1974 | 672 | 1154 | 495 | 379 | 1303 | 416 | 446 | 298 |
Resources | Fold | - | 1.04 | 1.23 | 0.84 | 0.85 | 1.00 | 7.32 | 14.95 | 5.09 | 8.74 | 3.75 | 2.87 | 9.87 | 3.15 | 3.38 | 2.26 | |
Loading Index4 | sec. | 32 | 46 | 74 | 74 | 74 | 74 | 38 | 38 | 38 | 53+1+1 | 96 | 96 | 40 | 40+1 | 40+1 | 40+1 | |
Alignment5 | sec. | 100 | 91 | 88 | 37 | 38 | 58 | 928 | 1936 | 634 | 370+369+360 | 399 | 283 | 1263 | 199+176 | 238+167 | 90+167 | |
Fold | - | 0.91 | 0.88 | 0.37 | 0.38 | 0.58 | 9.28 | 19.36 | 6.34 | 10.99 | 3.99 | 2.83 | 12.63 | 3.75 | 4.05 | 2.57 | ||
Avg. Memory | GB | 9.3 | 11.9 | 17.2 | 17.2 | 17.2 | 17.3 | 3.3 | 3.3 | 3.3 | 3.5 | 7 | 6.9 | 3.6 | 4.3 | 4.3 | 4.3 | |
Peak Memory | GB | 9.7 | 12.5 | 18.1 | 18.1 | 18.1 | 19.2 | 3.5 | 3.5 | 3.5 | 4.8 | 7.2 | 7.2 | 3.6 | 4.3 | 4.3 | 4.3 | |
Alignment | Aligned | # | 11,999,827 | 11,870,740 | 11,999,763 | 11,999,936 | 11,998,226 | 11,998,804 | 12,000,000 | 11,995,872 | 11,999,975 | 11,999,763 | 11,999,484 | 11,995,422 | ||||
Metrics | Diff. | - | −129,087 | −64 | 109 | −1,601 | −1,023 | 173 | −3,955 | 148 | −64 | −343 | −4,405 | |||||
Properly Paired | # | 11,999,460 | 11,742,902 | 11,998,912 | 11,999,344 | 11,996,528 | 11,997,254 | 11,999,976 | 11,995,410 | 11,977,218 | 11,998,994 | 11,997,702 | 11,991,992 | |||||
Diff. | - | −256,558 | −548 | −116 | −2,932 | −2,206 | 516 | −4,050 | −22,242 | −466 | −1,758 | −7,468 | ||||||
Incorrectly Aligned | # | 40,561 | 138,655 | 143,012 | 141,373 | 147,764 | 85,297 | 95,672 | 99,243 | 99,243 | 56,514 | 61,642 | 61,887 | |||||
Diff. | - | 98,094 | 102,451 | 100,812 | 107,203 | 44,736 | 55,111 | 58,682 | 150,036 | 15,953 | 21,081 | 21,326 | ||||||
Sensitivity6 | % | 99.66% | 97.77% | 98.81% | 98.82% | 98.75% | 99.28% | 99.20% | 99.14% | 99.17% | 99.53% | 99.48% | 99.45% | |||||
Diff. | - | −1.89% | −0.85% | −0.84% | −0.91% | −0.38% | −0.46% | −0.52% | −0.49% | −0.13% | −0.18% | −0.21% | ||||||
FDR7 | % | 0.34% | 1.17% | 1.19% | 1.18% | 1.23% | 0.71% | 0.80% | 0.83% | 0.83% | 0.47% | 0.51% | 0.52% | |||||
Diff. | - | 0.83% | 0.85% | 0.84% | 0.89% | 0.37% | 0.46% | 0.49% | 0.49% | 0.13% | 0.18% | 0.18% |
Alignment results by the three entries of SOAP3-dp (1/4 SA, 1/2 SA, Full SA) are identical.
The time consumption of BWA is calculated as “align left reads”+“align right reads”+“sampe”. The index loading times of “align right reads” and “sampe” modules are 1 second due to the reason that, index files were cached during “align left reads”. However, datasets larger than the host memory will flush the cache during alignment.
The alignment time consumption of GEM is calculated as “alignment”+“convert to SAM format”. The conversion module was run with 4 threads in consistent with the alignment module.
SOAP3-dp, SOAP3, SeqAlto and GEM aligners explicitly provide index loading time consumption. The index loading time for Bowtie2, CUSHAW2 and BWA are calculated by the total size of index, divided by 100 MB/s, which is the average network file system speed of the testing environment. The index loading time maybe underestimated while the time processing the index was not calculated.
The alignment times were explicitly provided by the aligners (include results processing and input/output time) or calculated by total elapsed time minus estimated index loading time.
Sensitivity is calculated as “Correctly aligned reads”/“All simulated reads”. The higher the better.
FDR is calculated as “Incorrectly aligned reads”/“All aligned reads”. The lower the better.