Skip to content

Latest commit

 

History

History
26 lines (20 loc) · 1.34 KB

README.md

File metadata and controls

26 lines (20 loc) · 1.34 KB

cudaextender

This package implements CUDA-accelerated seed-extension algorithms that use seed positions in encoded input strands to extend and compute the alignment between the strands. Currently this module implements the ungapped X-drop algorithm, adapted from SegAlign's Ungapped Extender authored by Sneha Goenka ([email protected]) and Yatish Turakhia ([email protected]).

Library

Built as libcudaextender.[so|a]

  • Ungapped X-Drop extension

cudaextender provides host and device pointer APIs to enable ease of integration with other producer/consumer modules. The user is expected to handle all memory transactions and device sychronizations for the device pointer API. The host pointer API abstracts those operations away. Both APIs are documented here: extender.hpp

Encoded Input

cudaextender expects the input strands to be encoded as integer sequences. This encoding scheme is documented here: utils.hpp file. The provided encode_sequence() helper function will encode the input strands on CPU with the expected scheme.

Sample

sample_cudaextender - Protoype to show the usage of host and device pointer APIs on FASTA sequences.