Configuration of device-level merge primitives.
More...
#include <device_merge_sort_config.hpp>
template<unsigned int MergeOddevenBlockSize = 512, unsigned int SortBlockSize = MergeOddevenBlockSize, unsigned int SortItemsPerThread = 1, unsigned int MergeMergepathPartitionBlockSize = 128, unsigned int MergeMergepathBlockSize = 128, unsigned int MergeMergepathItemsPerThread = 4, unsigned int MinInputSizeMergepath = (1 << 17) + 70000>
struct merge_sort_config< MergeOddevenBlockSize, SortBlockSize, SortItemsPerThread, MergeMergepathPartitionBlockSize, MergeMergepathBlockSize, MergeMergepathItemsPerThread, MinInputSizeMergepath >
Configuration of device-level merge primitives.
- Template Parameters
-
SortBlockSize | - block size in the block-sort step |
SortItemsPerThread | - ItemsPerThread in the block-sort step |
MergeOddevenBlockSize | - block size in the block merge step using oddeven impl (used when input_size < MinInputSizeMergepath) |
MergeMergepathPartitionBlockSize | - block size of the partition kernel in the block merge step using mergepath impl |
MergeMergepathBlockSize | - block size in the block merge step using mergepath impl |
MergeMergepathItemsPerThread | - ItemsPerThread in the block merge step using mergepath impl |
MinInputSizeMergepath | - breakpoint of input-size to use mergepath impl for block merge step |
◆ block_sort_config
template<unsigned int MergeOddevenBlockSize = 512, unsigned int SortBlockSize = MergeOddevenBlockSize, unsigned int SortItemsPerThread = 1, unsigned int MergeMergepathPartitionBlockSize = 128, unsigned int MergeMergepathBlockSize = 128, unsigned int MergeMergepathItemsPerThread = 4, unsigned int MinInputSizeMergepath = (1 << 17) + 70000>
The documentation for this struct was generated from the following file: