Introduction to parasail
masterparasail is a SIMD C (C99) library for pairwise sequence alignment. It implements Smith-Waterman (local), Needleman-Wunsch (global), and various semi-global algorithms (where insertions before the start or after the end of sequences are optionally not penalized).
Supported algorithms include:
- Diagonal [Wozniak, 1997]
- Blocked [Rognes and Seeberg, 2000]
- Striped [Farrar, 2007]
- Prefix scan [Daily, 2015]
Implementation Variants: To maintain high performance, parasail provides three distinct implementation variants. You should choose based on your performance/data requirements:
- Score only: Returns the alignment score and ending locations.
- Score + Statistics: Returns score, ending locations, and alignment statistics (exact matches, similarities, and alignment length).
- Traceback: Returns score, ending locations, and stores a traceback for later retrieval as a SAM CIGAR string.
Note: When algorithms open a gap, only the gap open penalty is applied.