NVBIO
|
A batch alignment is a parallel execution context for performing large batches of individual alignment jobs. There are several types of alignment jobs, mirroring the types of possible alignment operations, such as scoring, traceback, etc.
Batches can be executed according to several different parallel algorithms, specified by a Batch Scheduler.
Modules | |
Private | |
Namespaces | |
nvbio::aln::priv | |
Functions | |
template<typename aligner_type , typename pattern_set_type , typename text_set_type , typename sink_iterator , typename scheduler_type > | |
void | nvbio::aln::batch_alignment_score (const aligner_type aligner, const pattern_set_type patterns, const text_set_type texts, sink_iterator sinks, const scheduler_type scheduler, const uint32 max_pattern_length=1000, const uint32 max_text_length=1000) |
template<typename aligner_type , typename pattern_set_type , typename qualities_set_type , typename text_set_type , typename sink_iterator , typename scheduler_type > | |
void | nvbio::aln::batch_alignment_score (const aligner_type aligner, const pattern_set_type patterns, const qualities_set_type quals, const text_set_type texts, sink_iterator sinks, const scheduler_type scheduler, const uint32 max_pattern_length=1000, const uint32 max_text_length=1000) |
template<uint32 BAND_LEN, typename aligner_type , typename pattern_set_type , typename text_set_type , typename sink_iterator , typename scheduler_type > | |
void | nvbio::aln::batch_banded_alignment_score (const aligner_type aligner, const pattern_set_type patterns, const text_set_type texts, sink_iterator sinks, const scheduler_type scheduler, const uint32 max_pattern_length, const uint32 max_text_length) |
static uint64 | nvbio::aln::BatchedAlignmentScore< stream_type, HostThreadScheduler >::min_temp_storage (const uint32 max_pattern_len, const uint32 max_text_len, const uint32 stream_size) |
static uint64 | nvbio::aln::BatchedAlignmentScore< stream_type, HostThreadScheduler >::max_temp_storage (const uint32 max_pattern_len, const uint32 max_text_len, const uint32 stream_size) |
void | nvbio::aln::BatchedAlignmentScore< stream_type, HostThreadScheduler >::enact (stream_type stream, uint64 temp_size=0u, uint8 *temp=NULL) |
static uint64 | nvbio::aln::BatchedAlignmentScore< stream_type, DeviceThreadBlockScheduler< BLOCKDIM, MINBLOCKS > >::min_temp_storage (const uint32 max_pattern_len, const uint32 max_text_len, const uint32 stream_size) |
static uint64 | nvbio::aln::BatchedAlignmentScore< stream_type, DeviceThreadBlockScheduler< BLOCKDIM, MINBLOCKS > >::max_temp_storage (const uint32 max_pattern_len, const uint32 max_text_len, const uint32 stream_size) |
void | nvbio::aln::BatchedAlignmentScore< stream_type, DeviceThreadBlockScheduler< BLOCKDIM, MINBLOCKS > >::enact (stream_type stream, uint64 temp_size=0u, uint8 *temp=NULL) |
static uint64 | nvbio::aln::BatchedAlignmentScore< stream_type, DeviceWarpScheduler >::min_temp_storage (const uint32 max_pattern_len, const uint32 max_text_len, const uint32 stream_size) |
static uint64 | nvbio::aln::BatchedAlignmentScore< stream_type, DeviceWarpScheduler >::max_temp_storage (const uint32 max_pattern_len, const uint32 max_text_len, const uint32 stream_size) |
void | nvbio::aln::BatchedAlignmentScore< stream_type, DeviceWarpScheduler >::enact (stream_type stream, uint64 temp_size=0u, uint8 *temp=NULL) |
static uint64 | nvbio::aln::BatchedAlignmentTraceback< CHECKPOINTS, stream_type, DeviceThreadBlockScheduler< BLOCKDIM, MINBLOCKS > >::min_temp_storage (const uint32 max_pattern_len, const uint32 max_text_len, const uint32 stream_size) |
static uint64 | nvbio::aln::BatchedAlignmentTraceback< CHECKPOINTS, stream_type, DeviceThreadBlockScheduler< BLOCKDIM, MINBLOCKS > >::max_temp_storage (const uint32 max_pattern_len, const uint32 max_text_len, const uint32 stream_size) |
void | nvbio::aln::BatchedAlignmentTraceback< CHECKPOINTS, stream_type, DeviceThreadBlockScheduler< BLOCKDIM, MINBLOCKS > >::enact (stream_type stream, uint64 temp_size=0u, uint8 *temp=NULL) |
void nvbio::aln::batch_alignment_score | ( | const aligner_type | aligner, |
const pattern_set_type | patterns, | ||
const text_set_type | texts, | ||
sink_iterator | sinks, | ||
const scheduler_type | scheduler, | ||
const uint32 | max_pattern_length = 1000 , |
||
const uint32 | max_text_length = 1000 |
||
) |
A convenience function for aligning a batch of patterns to a corresponding batch of texts on the device. NOTE: this function allocates temporary storage, and doesn't perform any local memory caching of the input strings: hence, it might not attain maximum performance. For maximum speed, check the BatchedAlignmentScore contexts.
aligner_type | an Aligner algorithm |
pattern_set_type | a string set storing the patterns |
text_set_type | a string set storing the texts |
sink_iterator | a random access iterator to the output alignment sinks |
scheduler_type | a Batch Scheduler |
aligner | the Aligner algorithm |
patterns | the patterns string set |
texts | the texts string set |
sinks | the output alignment sinks |
scheduler | the Batch Scheduler |
Definition at line 995 of file batched_inl.h.
void nvbio::aln::batch_alignment_score | ( | const aligner_type | aligner, |
const pattern_set_type | patterns, | ||
const qualities_set_type | quals, | ||
const text_set_type | texts, | ||
sink_iterator | sinks, | ||
const scheduler_type | scheduler, | ||
const uint32 | max_pattern_length = 1000 , |
||
const uint32 | max_text_length = 1000 |
||
) |
A convenience function for aligning a batch of patterns to a corresponding batch of texts on the device. NOTE: this function allocates temporary storage, and doesn't perform any local memory caching of the input strings: hence, it might not attain maximum performance. For maximum speed, check the BatchedAlignmentScore contexts.
aligner_type | an Aligner algorithm |
pattern_set_type | a string set storing the patterns |
qualities_set_type | a string set storing the qualities |
text_set_type | a string set storing the texts |
sink_iterator | a random access iterator to the output alignment sinks |
scheduler_type | a Batch Scheduler |
aligner | the Aligner algorithm |
patterns | the patterns string set |
quals | the pattern qualities string set |
texts | the texts string set |
sinks | the output alignment sinks |
scheduler | the Batch Scheduler |
Definition at line 1034 of file batched_inl.h.
void nvbio::aln::batch_banded_alignment_score | ( | const aligner_type | aligner, |
const pattern_set_type | patterns, | ||
const text_set_type | texts, | ||
sink_iterator | sinks, | ||
const scheduler_type | scheduler, | ||
const uint32 | max_pattern_length, | ||
const uint32 | max_text_length | ||
) |
A convenience function for aligning a batch of patterns to a corresponding batch of texts on the device. NOTE: this function allocates temporary storage, and doesn't perform any local memory caching of the input strings: hence, it might not attain maximum performance. For maximum speed, check the BatchedAlignmentScore contexts.
aligner_type | an Aligner algorithm |
pattern_set_type | a string set storing the patterns |
text_set_type | a string set storing the texts |
sink_iterator | a random access iterator to the output alignment sinks |
scheduler_type | a Batch Scheduler |
aligner | the Aligner algorithm |
patterns | the patterns string set |
texts | the texts string set |
sinks | the output alignment sinks |
scheduler | the Batch Scheduler |
Definition at line 1074 of file batched_inl.h.
void nvbio::aln::BatchedAlignmentScore< stream_type, HostThreadScheduler >::enact | ( | stream_type | stream, |
uint64 | temp_size = 0u , |
||
uint8 * | temp = NULL |
||
) |
enact the batch execution
Definition at line 287 of file batched_inl.h.
void nvbio::aln::BatchedAlignmentScore< stream_type, DeviceThreadBlockScheduler< BLOCKDIM, MINBLOCKS > >::enact | ( | stream_type | stream, |
uint64 | temp_size = 0u , |
||
uint8 * | temp = NULL |
||
) |
enact the batch execution
Definition at line 378 of file batched_inl.h.
void nvbio::aln::BatchedAlignmentScore< stream_type, DeviceWarpScheduler >::enact | ( | stream_type | stream, |
uint64 | temp_size = 0u , |
||
uint8 * | temp = NULL |
||
) |
enact the batch execution
Definition at line 482 of file batched_inl.h.
void nvbio::aln::BatchedAlignmentTraceback< CHECKPOINTS, stream_type, DeviceThreadBlockScheduler< BLOCKDIM, MINBLOCKS > >::enact | ( | stream_type | stream, |
uint64 | temp_size = 0u , |
||
uint8 * | temp = NULL |
||
) |
enact the batch execution
Definition at line 794 of file batched_inl.h.
|
static |
return the maximum number of bytes required by the algorithm
Definition at line 279 of file batched_inl.h.
|
static |
return the maximum number of bytes required by the algorithm
Definition at line 370 of file batched_inl.h.
|
static |
return the maximum number of bytes required by the algorithm
Definition at line 474 of file batched_inl.h.
|
static |
return the maximum number of bytes required by the algorithm
Definition at line 786 of file batched_inl.h.
|
static |
return the minimum number of bytes required by the algorithm
Definition at line 271 of file batched_inl.h.
|
static |
return the minimum number of bytes required by the algorithm
Definition at line 362 of file batched_inl.h.
|
static |
return the minimum number of bytes required by the algorithm
Definition at line 466 of file batched_inl.h.
|
static |
return the minimum number of bytes required by the algorithm
Definition at line 778 of file batched_inl.h.