GENIE
|
#include <DeviceCompositeCodec.h>
Public Member Functions | |
__device__ __host__ | DeviceCompositeCodec () |
void | encodeArray (uint32_t *in, const size_t length, uint32_t *out, size_t &nvalue) |
const uint32_t * | decodeArray (const uint32_t *in, const size_t length, uint32_t *out, size_t &nvalue) |
__device__ uint32_t * | decodeArraySequential (uint32_t *d_in, size_t length, uint32_t *d_out, size_t &nvalue) |
__device__ uint32_t * | decodeArrayParallel (uint32_t *d_in, size_t length, uint32_t *d_out, size_t &nvalue) |
std::string | name () const |
__device__ __host__ int | decodeArrayParallel_minEffectiveLength () |
__device__ __host__ int | decodeArrayParallel_maxBlocks () |
__device__ __host__ int | decodeArrayParallel_lengthPerBlock () |
__device__ __host__ int | decodeArrayParallel_threadsPerBlock () |
__device__ __host__ int | decodeArrayParallel_threadLoad () |
![]() | |
__device__ __host__ | DeviceIntegerCODEC () |
__device__ const uint32_t * | decodeArraySequential (const uint32_t *d_in, const size_t length, uint32_t *d_out, size_t &nvalue) |
__device__ const uint32_t * | decodeArrayParallel (const uint32_t *d_in, const size_t length, uint32_t *d_out, size_t &nvalue) |
Public Attributes | |
Codec1 | codec1 |
Codec2 | codec2 |
This is a useful class for CODEC that only compress data having length a multiple of some unit length.
Definition at line 19 of file DeviceCompositeCodec.h.
|
inline |
Definition at line 23 of file DeviceCompositeCodec.h.
|
virtual |
Implements genie::compression::DeviceIntegerCODEC.
Definition at line 59 of file DeviceCompositeCodec.cu.
__device__ uint32_t * genie::compression::DeviceCompositeCodec< Codec1, Codec2 >::decodeArrayParallel | ( | uint32_t * | d_in, |
size_t | length, | ||
uint32_t * | d_out, | ||
size_t & | nvalue | ||
) |
Definition at line 109 of file DeviceCompositeCodec.cu.
|
inlinevirtual |
Maximal uncompressed (or compressed) size of the array the codec is able to process
Reimplemented from genie::compression::DeviceIntegerCODEC.
Definition at line 61 of file DeviceCompositeCodec.h.
|
inlinevirtual |
The amount of CUDA blocks this codec is able to operate on at the same time
Reimplemented from genie::compression::DeviceIntegerCODEC.
Definition at line 56 of file DeviceCompositeCodec.h.
|
inlinevirtual |
Minimal effective lenth of the compression
Reimplemented from genie::compression::DeviceIntegerCODEC.
Definition at line 51 of file DeviceCompositeCodec.h.
|
inlinevirtual |
Number of decompressed values extracted by a single thread
Reimplemented from genie::compression::DeviceIntegerCODEC.
Definition at line 72 of file DeviceCompositeCodec.h.
|
inlinevirtual |
Maximal number of threads per single block
Reimplemented from genie::compression::DeviceIntegerCODEC.
Definition at line 67 of file DeviceCompositeCodec.h.
__device__ uint32_t * genie::compression::DeviceCompositeCodec< Codec1, Codec2 >::decodeArraySequential | ( | uint32_t * | d_in, |
size_t | length, | ||
uint32_t * | d_out, | ||
size_t & | nvalue | ||
) |
Definition at line 101 of file DeviceCompositeCodec.cu.
|
virtual |
Implements genie::compression::DeviceIntegerCODEC.
Definition at line 29 of file DeviceCompositeCodec.cu.
|
inlinevirtual |
Reimplemented from genie::compression::DeviceIntegerCODEC.
Definition at line 44 of file DeviceCompositeCodec.h.
Codec1 genie::compression::DeviceCompositeCodec< Codec1, Codec2 >::codec1 |
Definition at line 28 of file DeviceCompositeCodec.h.
Codec2 genie::compression::DeviceCompositeCodec< Codec1, Codec2 >::codec2 |
Definition at line 29 of file DeviceCompositeCodec.h.