NVBIO
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
ReduceDetail

Detailed Description

Functions

template<typename ScoringScheme , typename PipelineType , typename ReduceContext >
__global__ void nvbio::bowtie2::cuda::detail::score_reduce_kernel (const ReduceContext context, PipelineType pipeline, const ParamsPOD params)
 
template<typename ReduceContext >
NVBIO_FORCEINLINE
NVBIO_HOST_DEVICE void 
nvbio::bowtie2::cuda::detail::update_best (const uint32 read_id, io::BestPairedAlignments &best_pairs, const io::PairedAlignments &pair, ReduceContext &context, const ParamsPOD params)
 
template<typename ReduceContext >
NVBIO_FORCEINLINE
NVBIO_HOST_DEVICE void 
nvbio::bowtie2::cuda::detail::replace_best (const uint32 read_id, io::BestPairedAlignments &best_pairs, const io::PairedAlignments &pair, ReduceContext &context, const ParamsPOD params)
 
template<typename ReduceContext >
NVBIO_FORCEINLINE
NVBIO_HOST_DEVICE void 
nvbio::bowtie2::cuda::detail::update_second (const uint32 read_id, io::BestPairedAlignments &best_pairs, const io::PairedAlignments &pair, ReduceContext &context, const ParamsPOD params)
 
template<typename ReduceContext >
NVBIO_FORCEINLINE
NVBIO_HOST_DEVICE bool 
nvbio::bowtie2::cuda::detail::try_update (const uint32 read_id, io::BestPairedAlignments &best_pairs, const io::PairedAlignments &pair, const uint32 min_distance, ReduceContext &context, const ParamsPOD params)
 
template<typename ReduceContext >
NVBIO_FORCEINLINE
NVBIO_HOST_DEVICE void 
nvbio::bowtie2::cuda::detail::update_best (const uint32 read_id, io::Alignment &a1, io::Alignment &a2, const io::Alignment &a, ReduceContext &context, const ParamsPOD params)
 
template<typename ReduceContext >
NVBIO_FORCEINLINE
NVBIO_HOST_DEVICE void 
nvbio::bowtie2::cuda::detail::replace_best (const uint32 read_id, io::Alignment &a1, io::Alignment &a2, const io::Alignment &a, ReduceContext &context, const ParamsPOD params)
 
template<typename ReduceContext >
NVBIO_FORCEINLINE
NVBIO_HOST_DEVICE void 
nvbio::bowtie2::cuda::detail::update_second (const uint32 read_id, io::Alignment &a1, io::Alignment &a2, const io::Alignment &a, ReduceContext &context, const ParamsPOD params)
 
template<typename ReduceContext >
NVBIO_FORCEINLINE
NVBIO_HOST_DEVICE bool 
nvbio::bowtie2::cuda::detail::try_update (const uint32 read_id, io::Alignment &a1, io::Alignment &a2, const io::Alignment &a, const uint32 min_distance, ReduceContext &context, const ParamsPOD params)
 
template<typename ScoringScheme , typename PipelineType , typename ReduceContext >
__global__ void nvbio::bowtie2::cuda::detail::score_reduce_paired_kernel (const ReduceContext context, PipelineType pipeline, const ParamsPOD params)
 

Function Documentation

template<typename ReduceContext >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE void nvbio::bowtie2::cuda::detail::replace_best ( const uint32  read_id,
io::BestPairedAlignments &  best_pairs,
const io::PairedAlignments &  pair,
ReduceContext &  context,
const ParamsPOD  params 
)

Definition at line 175 of file reduce_inl.h.

template<typename ReduceContext >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE void nvbio::bowtie2::cuda::detail::replace_best ( const uint32  read_id,
io::Alignment &  a1,
io::Alignment &  a2,
const io::Alignment &  a,
ReduceContext &  context,
const ParamsPOD  params 
)

Definition at line 275 of file reduce_inl.h.

template<typename ScoringScheme , typename PipelineType , typename ReduceContext >
__global__ void nvbio::bowtie2::cuda::detail::score_reduce_kernel ( const ReduceContext  context,
PipelineType  pipeline,
const ParamsPOD  params 
)

Reduce the list of scores associated to each read in the input queue to find the best 2 alignments.

this kernel takes a batch of extension results (one per active read, indexed by a sorting id) and 'reduces' them with best 2 results found so far. The kernel is parameterized by a templated context which can take further actions upon updates to the best or second best scores, as well as bailing-out on failures.

Parameters
contextthe template context
pipelinethe pipeline state
paramsalgorithm parameters

Definition at line 74 of file reduce_inl.h.

template<typename ScoringScheme , typename PipelineType , typename ReduceContext >
__global__ void nvbio::bowtie2::cuda::detail::score_reduce_paired_kernel ( const ReduceContext  context,
PipelineType  pipeline,
const ParamsPOD  params 
)

Reduce the list of scores associated to each read in the input queue to find the best 2 alignments.

this kernel takes a batch of extension results (one per active read, indexed by a sorting id) and 'reduces' them with best 2 results found so far. The kernel is parameterized by a templated context which can take further actions upon updates to the best or second best scores, as well as bailing-out on failures.

Parameters
contextthe template context
pipelinethe pipeline state
paramsalgorithm parameters

Definition at line 369 of file reduce_inl.h.

template<typename ReduceContext >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE bool nvbio::bowtie2::cuda::detail::try_update ( const uint32  read_id,
io::BestPairedAlignments &  best_pairs,
const io::PairedAlignments &  pair,
const uint32  min_distance,
ReduceContext &  context,
const ParamsPOD  params 
)

Definition at line 207 of file reduce_inl.h.

template<typename ReduceContext >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE bool nvbio::bowtie2::cuda::detail::try_update ( const uint32  read_id,
io::Alignment &  a1,
io::Alignment &  a2,
const io::Alignment &  a,
const uint32  min_distance,
ReduceContext &  context,
const ParamsPOD  params 
)

Definition at line 307 of file reduce_inl.h.

template<typename ReduceContext >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE void nvbio::bowtie2::cuda::detail::update_best ( const uint32  read_id,
io::BestPairedAlignments &  best_pairs,
const io::PairedAlignments &  pair,
ReduceContext &  context,
const ParamsPOD  params 
)

Definition at line 156 of file reduce_inl.h.

template<typename ReduceContext >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE void nvbio::bowtie2::cuda::detail::update_best ( const uint32  read_id,
io::Alignment &  a1,
io::Alignment &  a2,
const io::Alignment &  a,
ReduceContext &  context,
const ParamsPOD  params 
)

Definition at line 258 of file reduce_inl.h.

template<typename ReduceContext >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE void nvbio::bowtie2::cuda::detail::update_second ( const uint32  read_id,
io::BestPairedAlignments &  best_pairs,
const io::PairedAlignments &  pair,
ReduceContext &  context,
const ParamsPOD  params 
)

Definition at line 191 of file reduce_inl.h.

template<typename ReduceContext >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE void nvbio::bowtie2::cuda::detail::update_second ( const uint32  read_id,
io::Alignment &  a1,
io::Alignment &  a2,
const io::Alignment &  a,
ReduceContext &  context,
const ParamsPOD  params 
)

Definition at line 291 of file reduce_inl.h.