18 template <
typename InputIteratorT,
typename FlagIterator,
typename OutputIteratorT,
typename NumSelectedIteratorT>
21 OutputIteratorT d_out,
22 NumSelectedIteratorT d_num_selected_out,
25 MUDA_CUB_WRAPPER_IMPL(cub::DeviceSelect::Flagged(
26 d_temp_storage, temp_storage_bytes, d_in, d_flags, d_out, d_num_selected_out, num_items, _stream,
false));
29 template <
typename InputIteratorT,
typename OutputIteratorT,
typename NumSelectedIteratorT,
typename SelectOp>
31 OutputIteratorT d_out,
32 NumSelectedIteratorT d_num_selected_out,
36 MUDA_CUB_WRAPPER_IMPL(cub::DeviceSelect::If(
37 d_temp_storage, temp_storage_bytes, d_in, d_out, d_num_selected_out, num_items, select_op, _stream,
false));
40 template <
typename InputIteratorT,
typename OutputIteratorT,
typename NumSelectedIteratorT>
42 OutputIteratorT d_out,
43 NumSelectedIteratorT d_num_selected_out,
46 MUDA_CUB_WRAPPER_IMPL(cub::DeviceSelect::Unique(
47 d_temp_storage, temp_storage_bytes, d_in, d_out, d_num_selected_out, num_items, _stream,
false));
49#if CUB_VERSION >= 200200
50 template <
typename KeyInputIteratorT,
typename ValueInputIteratorT,
typename KeyOutputIteratorT,
typename ValueOutputIteratorT,
typename NumSelectedIteratorT>
52 ValueInputIteratorT d_values_in,
53 KeyOutputIteratorT d_keys_out,
54 ValueOutputIteratorT d_values_out,
55 NumSelectedIteratorT d_num_selected_out,
58 MUDA_CUB_WRAPPER_IMPL(cub::DeviceSelect::UniqueByKey(d_temp_storage,
73 template <
typename InputIteratorT,
typename FlagIterator,
typename OutputIteratorT,
typename NumSelectedIteratorT>
75 size_t& temp_storage_bytes,
78 OutputIteratorT d_out,
79 NumSelectedIteratorT d_num_selected_out,
82 MUDA_CUB_WRAPPER_FOR_COMPUTE_GRAPH_IMPL(cub::DeviceSelect::Flagged(
83 d_temp_storage, temp_storage_bytes, d_in, d_flags, d_out, d_num_selected_out, num_items, _stream,
false));
86 template <
typename InputIteratorT,
typename OutputIteratorT,
typename NumSelectedIteratorT,
typename SelectOp>
88 size_t& temp_storage_bytes,
90 OutputIteratorT d_out,
91 NumSelectedIteratorT d_num_selected_out,
95 MUDA_CUB_WRAPPER_FOR_COMPUTE_GRAPH_IMPL(cub::DeviceSelect::If(
96 d_temp_storage, temp_storage_bytes, d_in, d_out, d_num_selected_out, num_items, select_op, _stream,
false));
99 template <
typename InputIteratorT,
typename OutputIteratorT,
typename NumSelectedIteratorT>
101 size_t& temp_storage_bytes,
103 OutputIteratorT d_out,
104 NumSelectedIteratorT d_num_selected_out,
107 MUDA_CUB_WRAPPER_FOR_COMPUTE_GRAPH_IMPL(cub::DeviceSelect::Unique(
108 d_temp_storage, temp_storage_bytes, d_in, d_out, d_num_selected_out, num_items, _stream,
false));
110#if CUB_VERSION >= 200200
111 template <
typename KeyInputIteratorT,
typename ValueInputIteratorT,
typename KeyOutputIteratorT,
typename ValueOutputIteratorT,
typename NumSelectedIteratorT>
113 size_t& temp_storage_bytes,
114 KeyInputIteratorT d_keys_in,
115 ValueInputIteratorT d_values_in,
116 KeyOutputIteratorT d_keys_out,
117 ValueOutputIteratorT d_values_out,
118 NumSelectedIteratorT d_num_selected_out,
121 MUDA_CUB_WRAPPER_FOR_COMPUTE_GRAPH_IMPL(
122 cub::DeviceSelect::UniqueByKey(d_temp_storage,