All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Algorithm Tags

Detailed Description

Algorithm tags are used to specify a DP algorithm. In order to avoid expensive memory transactions, the algorithms we designed block the matrix in stripes that are processed in registers. The blocking can happen either along the pattern or along the text. To communicate the values across stripes, the right-most column of each stripe must be stored in memory - hence the two algorithms differ for the amount of temporary storage needed (for long texts, text-blocking is preferred).

Additionally, for edit distance, the Myers bit-vector algorithm is available.


struct  nvbio::aln::PatternBlockingTag
 block along the pattern More...
struct  nvbio::aln::TextBlockingTag
 block along the text (at the moment, this is only supported for scoring) More...
struct  nvbio::aln::MyersTag< ALPHABET_SIZE_T >
 Myers bit-vector algorithm. More...
struct  nvbio::aln::transpose_tag< T >
struct  nvbio::aln::transpose_tag< PatternBlockingTag >
struct  nvbio::aln::transpose_tag< TextBlockingTag >
struct  nvbio::aln::transpose_aligner< T >