NVBIO
|
A work-stream class to be used with a WorkQueue. This class implements the context to fetch and run parallel alignment jobs.
In particular, it provides utilities for accessing all the temporary alignment storage bound to a given queue slot, which is represented by vectors with a strided memory layout in order to favor read/write coalescing.
stream_type | the underlying BatchedAlignmentScore stream_type (see Batch Alignments and BatchedAlignmentScore). |
Definition at line 54 of file batched_stream.h.
#include <batched_stream.h>
Public Types | |
typedef stream_type::aligner_type | aligner_type |
the aligner type More... | |
typedef checkpoint_storage_type < aligner_type >::type | cell_type |
the DP cell type More... | |
typedef strided_iterator < cell_type * > | checkpoint_type |
the strided DP checkpoint type More... | |
typedef strided_iterator < cell_type * > | column_type |
the strided DP column type More... | |
Public Methods | |
ScoreStream (const stream_type _stream, uint8 *_columns, uint8 *_checkpoints, const uint32 _stride) | |
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE uint32 | size () const |
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE checkpoint_type | checkpoint (const uint32 i) const |
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE column_type | column (const uint32 i) const |
template<typename score_unit_type > | |
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE void | get (const uint32 job_id, score_unit_type *unit, const uint2 queue_slot) const |
Public Members | |
stream_type | stream |
alignment stream More... | |
cell_type * | columns |
temporary columns storage More... | |
cell_type * | checkpoints |
temporary checkpoints storage More... | |
uint32 | stride |
memory stride More... | |
typedef stream_type::aligner_type nvbio::aln::ScoreStream< stream_type >::aligner_type |
the aligner type
Definition at line 56 of file batched_stream.h.
typedef checkpoint_storage_type<aligner_type>::type nvbio::aln::ScoreStream< stream_type >::cell_type |
the DP cell type
Definition at line 57 of file batched_stream.h.
typedef strided_iterator<cell_type*> nvbio::aln::ScoreStream< stream_type >::checkpoint_type |
the strided DP checkpoint type
Definition at line 58 of file batched_stream.h.
typedef strided_iterator<cell_type*> nvbio::aln::ScoreStream< stream_type >::column_type |
the strided DP column type
Definition at line 59 of file batched_stream.h.
|
inline |
constructor
Definition at line 63 of file batched_stream.h.
|
inline |
return the i-th checkpoint
Definition at line 78 of file batched_stream.h.
|
inline |
return the i-th checkpoint
Definition at line 86 of file batched_stream.h.
|
inline |
get the i-th work unit
Definition at line 95 of file batched_stream.h.
|
inline |
stream size
Definition at line 73 of file batched_stream.h.
cell_type* nvbio::aln::ScoreStream< stream_type >::checkpoints |
temporary checkpoints storage
Definition at line 103 of file batched_stream.h.
cell_type* nvbio::aln::ScoreStream< stream_type >::columns |
temporary columns storage
Definition at line 102 of file batched_stream.h.
stream_type nvbio::aln::ScoreStream< stream_type >::stream |
alignment stream
Definition at line 101 of file batched_stream.h.
uint32 nvbio::aln::ScoreStream< stream_type >::stride |
memory stride
Definition at line 104 of file batched_stream.h.