opal
opal copied to clipboard
Improve alignment speed
I should improve alignment speed. One thing I can do for sure is make alignment algorithm banded. I should also investigate if there are any other ways to make algorithm faster, and I should do some comparison with other aligners.
There are two basic approaches: determining band in advance, or determining band dynamically. Although second approach may offer more speedup, it is also harder to implement and is it hard to say if all household operations will actually negate potential speedup. Therefore I decided to start with first approach, and if that works fine, I can implement second approach on top of it.
I implemented first approach!
TODO: Check out https://software.intel.com/en-us/comment/1824933 - here I asked for some insights regarding the SSE technology, I should take some time to go through the answers, learn something and possibly optimize my code.