andersen-lab / ivar

iVar is a computational package that contains functions broadly useful for viral amplicon-based sequencing.
https://andersen-lab.github.io/ivar/html/
GNU General Public License v3.0
115 stars 39 forks source link

Remove excess calls to insertionSort #147

Closed cmaceves closed 1 year ago

cmaceves commented 1 year ago

In the code for primer trimming insertionSort gets called every time get_overlapping_primers is called, creating a slowdown

std::vector<primer> test = insertionSort(primers, primers.size());

This should only be called once.

tseemann commented 1 year ago

@cmaceves we switched to ivar 1.3.2 last week and noticed it was taking 10x (!) longer to run on our 384 samples (~1 M reads each).

Would this bug explain the slowdown in ivar trim?

cmaceves commented 1 year ago

hi @tseemann! that's correct, it is causing the slowdown. we're aiming for a fast turn around time on 1.3.3 to address that oversight.

cmaceves commented 1 year ago

addressed in PR #155