Skip to content

Class muda::DeviceRadixSort

ClassList > muda > DeviceRadixSort

Inherits the following classes: muda::CubWrapper

Public Types inherited from muda::LaunchBase

See muda::LaunchBase

Type Name
typedef T derived_type

Public Attributes inherited from muda::CubWrapper

See muda::CubWrapper

Type Name
Stream * m_muda_stream = = nullptr

Public Functions

Type Name
DeviceRadixSort & SortKeys (const KeyT * d_keys_in, KeyT * d_keys_out, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortKeys (cub::DoubleBuffer< KeyT > & d_keys, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortKeys (void * d_temp_storage, size_t & temp_storage_bytes, const KeyT * d_keys_in, KeyT * d_keys_out, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortKeys (void * d_temp_storage, size_t & temp_storage_bytes, cub::DoubleBuffer< KeyT > & d_keys, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortKeysDescending (const KeyT * d_keys_in, KeyT * d_keys_out, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortKeysDescending (cub::DoubleBuffer< KeyT > & d_keys, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortKeysDescending (void * d_temp_storage, size_t & temp_storage_bytes, const KeyT * d_keys_in, KeyT * d_keys_out, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortKeysDescending (void * d_temp_storage, size_t & temp_storage_bytes, cub::DoubleBuffer< KeyT > & d_keys, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortPairs (const KeyT * d_keys_in, KeyT * d_keys_out, const ValueT * d_values_in, ValueT * d_values_out, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortPairs (DeviceVector< std::byte > & external_buffer, cub::DoubleBuffer< KeyT > & d_keys, cub::DoubleBuffer< ValueT > & d_values, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortPairs (void * d_temp_storage, size_t & temp_storage_bytes, const KeyT * d_keys_in, KeyT * d_keys_out, const ValueT * d_values_in, ValueT * d_values_out, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortPairs (void * d_temp_storage, size_t & temp_storage_bytes, cub::DoubleBuffer< KeyT > & d_keys, cub::DoubleBuffer< ValueT > & d_values, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortPairsDescending (const KeyT * d_keys_in, KeyT * d_keys_out, const ValueT * d_values_in, ValueT * d_values_out, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortPairsDescending (cub::DoubleBuffer< KeyT > & d_keys, cub::DoubleBuffer< ValueT > & d_values, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortPairsDescending (void * d_temp_storage, size_t & temp_storage_bytes, const KeyT * d_keys_in, KeyT * d_keys_out, const ValueT * d_values_in, ValueT * d_values_out, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)
DeviceRadixSort & SortPairsDescending (void * d_temp_storage, size_t & temp_storage_bytes, cub::DoubleBuffer< KeyT > & d_keys, cub::DoubleBuffer< ValueT > & d_values, NumItemsT num_items, int begin_bit=0, int end_bit=sizeof(KeyT) *8)

Public Functions inherited from muda::CubWrapper

See muda::CubWrapper

Type Name
CubWrapper (Stream & stream=Stream::Default())
void kernel_name (std::string_view) = delete

Public Functions inherited from muda::LaunchBase

See muda::LaunchBase

Type Name
MUDA_GENERIC LaunchBase (::cudaStream_t stream)
T & callback (const std::function< void(::cudaStream_t, ::cudaError)> & callback)
T & file_line (std::string_view file, int line)
T & kernel_name (std::string_view name)
Next next (Next n)
Next next (Args &&... args)
T & pop_range ()
T & push_range (const std::string & name)
T & record (cudaEvent_t e, int flag=cudaEventRecordDefault)
T & record (ComputeGraphVar< cudaEvent_t > & e, const std::vector< ComputeGraphVarBase * > & vars)
T & record (ComputeGraphVar< cudaEvent_t > & e, ComputeGraphVar< ViewT > &... vars)
T & wait (cudaEvent_t e, int flag=cudaEventWaitDefault)
T & wait (const ComputeGraphVar< cudaEvent_t > & e, const std::vector< ComputeGraphVarBase * > & vars)
T & wait (const ComputeGraphVar< cudaEvent_t > & e, ComputeGraphVar< ViewT > &... vars)
T & wait ()
T & when (cudaEvent_t e, int flag=cudaEventWaitDefault)
~LaunchBase ()

Public Functions inherited from muda::LaunchCore

See muda::LaunchCore

Type Name
MUDA_GENERIC LaunchCore (::cudaStream_t stream)
void callback (const std::function< void(::cudaStream_t, ::cudaError)> & callback)
void init_stream (::cudaStream_t s)
void pop_range ()
void push_range (const std::string & name)
void record (cudaEvent_t e, int flag=cudaEventRecordDefault)
void record (ComputeGraphVar< cudaEvent_t > & e, const std::vector< ComputeGraphVarBase * > & vars)
void record (ComputeGraphVar< cudaEvent_t > & e, ComputeGraphVar< ViewT > &... vars)
void wait (cudaEvent_t e, int flag=cudaEventWaitDefault)
void wait (const ComputeGraphVar< cudaEvent_t > & e, const std::vector< ComputeGraphVarBase * > & vars)
void wait (const ComputeGraphVar< cudaEvent_t > & e, ComputeGraphVar< ViewT > &... vars)
void wait ()
void when (cudaEvent_t e, int flag=cudaEventWaitDefault)
~LaunchCore ()

Public Static Functions inherited from muda::LaunchCore

See muda::LaunchCore

Type Name
void file_line (std::string_view file, int line)
void kernel_name (std::string_view name)
void wait_device ()
void wait_event (cudaEvent_t event)
void wait_stream (::cudaStream_t stream)

Protected Types inherited from muda::LaunchCore

See muda::LaunchCore

Type Name
typedef std::shared_ptr< T > S

Protected Attributes inherited from muda::LaunchCore

See muda::LaunchCore

Type Name
::cudaStream_t m_stream

Protected Functions inherited from muda::CubWrapper

See muda::CubWrapper

Type Name
std::byte * prepare_buffer (size_t reqSize)

Protected Functions inherited from muda::LaunchBase

See muda::LaunchBase

Type Name
T & pop_kernel_label ()

Protected Functions inherited from muda::LaunchCore

See muda::LaunchCore

Type Name
MUDA_HOST void pop_kernel_label ()
MUDA_GENERIC::cudaStream_t stream () const

Public Functions Documentation

function SortKeys [1/4]

template<typename KeyT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortKeys (
    const KeyT * d_keys_in,
    KeyT * d_keys_out,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortKeys [2/4]

template<typename KeyT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortKeys (
    cub::DoubleBuffer< KeyT > & d_keys,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortKeys [3/4]

template<typename KeyT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortKeys (
    void * d_temp_storage,
    size_t & temp_storage_bytes,
    const KeyT * d_keys_in,
    KeyT * d_keys_out,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortKeys [4/4]

template<typename KeyT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortKeys (
    void * d_temp_storage,
    size_t & temp_storage_bytes,
    cub::DoubleBuffer< KeyT > & d_keys,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortKeysDescending [1/4]

template<typename KeyT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortKeysDescending (
    const KeyT * d_keys_in,
    KeyT * d_keys_out,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortKeysDescending [2/4]

template<typename KeyT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortKeysDescending (
    cub::DoubleBuffer< KeyT > & d_keys,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortKeysDescending [3/4]

template<typename KeyT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortKeysDescending (
    void * d_temp_storage,
    size_t & temp_storage_bytes,
    const KeyT * d_keys_in,
    KeyT * d_keys_out,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortKeysDescending [4/4]

template<typename KeyT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortKeysDescending (
    void * d_temp_storage,
    size_t & temp_storage_bytes,
    cub::DoubleBuffer< KeyT > & d_keys,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortPairs [1/4]

template<typename KeyT, typename ValueT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortPairs (
    const KeyT * d_keys_in,
    KeyT * d_keys_out,
    const ValueT * d_values_in,
    ValueT * d_values_out,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortPairs [2/4]

template<typename KeyT, typename ValueT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortPairs (
    DeviceVector < std::byte > & external_buffer,
    cub::DoubleBuffer< KeyT > & d_keys,
    cub::DoubleBuffer< ValueT > & d_values,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortPairs [3/4]

template<typename KeyT, typename ValueT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortPairs (
    void * d_temp_storage,
    size_t & temp_storage_bytes,
    const KeyT * d_keys_in,
    KeyT * d_keys_out,
    const ValueT * d_values_in,
    ValueT * d_values_out,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortPairs [4/4]

template<typename KeyT, typename ValueT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortPairs (
    void * d_temp_storage,
    size_t & temp_storage_bytes,
    cub::DoubleBuffer< KeyT > & d_keys,
    cub::DoubleBuffer< ValueT > & d_values,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortPairsDescending [1/4]

template<typename KeyT, typename ValueT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortPairsDescending (
    const KeyT * d_keys_in,
    KeyT * d_keys_out,
    const ValueT * d_values_in,
    ValueT * d_values_out,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortPairsDescending [2/4]

template<typename KeyT, typename ValueT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortPairsDescending (
    cub::DoubleBuffer< KeyT > & d_keys,
    cub::DoubleBuffer< ValueT > & d_values,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortPairsDescending [3/4]

template<typename KeyT, typename ValueT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortPairsDescending (
    void * d_temp_storage,
    size_t & temp_storage_bytes,
    const KeyT * d_keys_in,
    KeyT * d_keys_out,
    const ValueT * d_values_in,
    ValueT * d_values_out,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 

function SortPairsDescending [4/4]

template<typename KeyT, typename ValueT, typename NumItemsT>
inline DeviceRadixSort & muda::DeviceRadixSort::SortPairsDescending (
    void * d_temp_storage,
    size_t & temp_storage_bytes,
    cub::DoubleBuffer< KeyT > & d_keys,
    cub::DoubleBuffer< ValueT > & d_values,
    NumItemsT num_items,
    int begin_bit=0,
    int end_bit=sizeof(KeyT) *8
) 


The documentation for this class was generated from the following file src/muda/cub/device/device_radix_sort.h