NVBIO
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Methods | Public Members | Static Public Members | List of all members
nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag > Struct Template Reference

Detailed description

template< uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type, typename offsets_iterator>
struct nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >

A helper class to load a chunk of a string_set from the host onto the device

Definition at line 1198 of file sufsort_priv.h.

#include <sufsort_priv.h>

Public Types

typedef std::iterator_traits
< storage_type >::value_type 
word_type
 
typedef std::iterator_traits
< offsets_iterator >
::value_type 
index_type
 
typedef cuda::load_pointer
< word_type, cuda::LOAD_LDG
word_pointer
 
typedef PackedStream
< word_pointer, uint8,
SYMBOL_SIZE, BIG_ENDIAN > 
packed_stream_type
 
typedef
packed_stream_type::iterator 
packed_stream_iterator
 
typedef ConcatenatedStringSet
< packed_stream_iterator,
uint32 * > 
chunk_set_type
 

Public Methods

uint64 needed_device_memory (const uint32 max_strings, const uint32 max_symbols) const
 
void reserve (const uint32 max_strings, const uint32 max_symbols)
 
chunk_set_type load (const ConcatenatedStringSet< typename PackedStream< storage_type, uint8, SYMBOL_SIZE, BIG_ENDIAN, index_type >::iterator, offsets_iterator > string_set, const uint32 chunk_begin, const uint32 chunk_end)
 

Public Members

thrust::host_vector< uint32h_chunk_offsets
 
thrust::device_vector< word_typed_chunk_string
 
thrust::device_vector< uint32d_chunk_offsets
 

Static Public Members

static const uint32 SYMBOLS_PER_WORD = uint32(8u*sizeof(word_type))/SYMBOL_SIZE
 

Member Typedef Documentation

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
typedef ConcatenatedStringSet<packed_stream_iterator,uint32*> nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::chunk_set_type

Definition at line 1209 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
typedef std::iterator_traits<offsets_iterator>::value_type nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::index_type

Definition at line 1202 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
typedef packed_stream_type::iterator nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::packed_stream_iterator

Definition at line 1207 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
typedef PackedStream<word_pointer,uint8,SYMBOL_SIZE,BIG_ENDIAN> nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::packed_stream_type

Definition at line 1206 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
typedef cuda::load_pointer<word_type,cuda::LOAD_LDG> nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::word_pointer

Definition at line 1204 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
typedef std::iterator_traits<storage_type>::value_type nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::word_type

Definition at line 1201 of file sufsort_priv.h.

Member Function Documentation

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
chunk_set_type nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::load ( const ConcatenatedStringSet< typename PackedStream< storage_type, uint8, SYMBOL_SIZE, BIG_ENDIAN, index_type >::iterator, offsets_iterator >  string_set,
const uint32  chunk_begin,
const uint32  chunk_end 
)
inline

Definition at line 1231 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
uint64 nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::needed_device_memory ( const uint32  max_strings,
const uint32  max_symbols 
) const
inline

Definition at line 1214 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
void nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::reserve ( const uint32  max_strings,
const uint32  max_symbols 
)
inline

Definition at line 1222 of file sufsort_priv.h.

Member Data Documentation

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
thrust::device_vector<uint32> nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::d_chunk_offsets

Definition at line 1285 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
thrust::device_vector<word_type> nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::d_chunk_string

Definition at line 1284 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
thrust::host_vector<uint32> nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::h_chunk_offsets

Definition at line 1283 of file sufsort_priv.h.

template<uint32 SYMBOL_SIZE, bool BIG_ENDIAN, typename storage_type , typename offsets_iterator >
const uint32 nvbio::priv::ChunkLoader< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator, host_tag, device_tag >::SYMBOLS_PER_WORD = uint32(8u*sizeof(word_type))/SYMBOL_SIZE
static

Definition at line 1212 of file sufsort_priv.h.


The documentation for this struct was generated from the following file: