01/05/2011
Started reading more in-depth into CUDA. Made some notes (I'll post them later).
Things to do:
- Finish up the local aligner changes and commit
- Create a small test driver that ties together the aligners and the has index to verify correctness.
01/06/2011
Finished redoing the banded local aligner. Now I just have to add
FullAlignment
methods into the vectorized aligners. Note that only the
ScoreOnlyMax
methods of the vectorized aligners actually are vectorized. The
FullAlignment
method is just a straight copy from the corresponding non-vectorized aligners, since
FullAlignment
is used much less.
Also, I took out all the kmer index/mapper stuff, since it was still using the old aligner and I didn't want to update it. Those files are really old anyway, and really haven't been updated much for a long time...
To do:
- Create a small test driver
- Add
FullAlignment
methods into the vectorized aligners.
01/07/2011
Finished adding in full alignment methods into the vectorized aligners. Now all the aligners are completely redone and I just have to do up the test driver.
To do:
- Create a small test driver
01/10/2011
Nearly finished the small test driver with a (very) small test set. I realized there's an issue with the hash index that doesn't actually allow me to get a sequence out for the local aligner, only a position, so I'll have to correct that before finishing. Otherwise, the very basic tests look good and it looks like everything is working properly.
To do:
01/13/2011
Finished the test driver, and it looks like it works, even when simulating low memory conditions in the hash index. I tested using a manually generated test sequence + some test reads, and also using the E. coli bacterial genome and both work fine. I decided to add an
ExtractString
method to the hash index to allow extraction of the string from a position (much like the
getPosition
method in the FMIndex) to make it all work. I feel like that method could be optimized, but that can be for later.
To do:
- Start a very basic GPU implementation of the aligners!
01/17/2011
Started a new branch for the GPU stuff. I think the first thing I'm going to implement is an "aligner" that just finds how many matches straight-up matches there are. I got the emulators and everything working again, so I have my development environment set up; I forgot to write down what I did last time to get everything to compile and run properly, so I ended up having to re-research it all again, which was a pain. Also started reading through guides and tutorials and taking notes.
To do:
-- Main.jayzhang - 05 Jan 2011