|
HIPCUB_DEVICE | BlockExchange (TempStorage &temp_storage) |
|
template<typename OutputT > |
HIPCUB_DEVICE void | StripedToBlocked (InputT(&input_items)[ITEMS_PER_THREAD], OutputT(&output_items)[ITEMS_PER_THREAD]) |
|
template<typename OutputT > |
HIPCUB_DEVICE void | BlockedToStriped (InputT(&input_items)[ITEMS_PER_THREAD], OutputT(&output_items)[ITEMS_PER_THREAD]) |
|
template<typename OutputT > |
HIPCUB_DEVICE void | WarpStripedToBlocked (InputT(&input_items)[ITEMS_PER_THREAD], OutputT(&output_items)[ITEMS_PER_THREAD]) |
|
template<typename OutputT > |
HIPCUB_DEVICE void | BlockedToWarpStriped (InputT(&input_items)[ITEMS_PER_THREAD], OutputT(&output_items)[ITEMS_PER_THREAD]) |
|
template<typename OutputT , typename OffsetT > |
HIPCUB_DEVICE void | ScatterToBlocked (InputT(&input_items)[ITEMS_PER_THREAD], OutputT(&output_items)[ITEMS_PER_THREAD], OffsetT(&ranks)[ITEMS_PER_THREAD]) |
|
template<typename OutputT , typename OffsetT > |
HIPCUB_DEVICE void | ScatterToStriped (InputT(&input_items)[ITEMS_PER_THREAD], OutputT(&output_items)[ITEMS_PER_THREAD], OffsetT(&ranks)[ITEMS_PER_THREAD]) |
|
template<typename OutputT , typename OffsetT > |
HIPCUB_DEVICE void | ScatterToStripedGuarded (InputT(&input_items)[ITEMS_PER_THREAD], OutputT(&output_items)[ITEMS_PER_THREAD], OffsetT(&ranks)[ITEMS_PER_THREAD]) |
|
template<typename OutputT , typename OffsetT , typename ValidFlag > |
HIPCUB_DEVICE void | ScatterToStripedFlagged (InputT(&input_items)[ITEMS_PER_THREAD], OutputT(&output_items)[ITEMS_PER_THREAD], OffsetT(&ranks)[ITEMS_PER_THREAD], ValidFlag(&is_valid)[ITEMS_PER_THREAD]) |
|
HIPCUB_DEVICE void | StripedToBlocked (InputT(&items)[ITEMS_PER_THREAD]) |
|
HIPCUB_DEVICE void | BlockedToStriped (InputT(&items)[ITEMS_PER_THREAD]) |
|
HIPCUB_DEVICE void | WarpStripedToBlocked (InputT(&items)[ITEMS_PER_THREAD]) |
|
HIPCUB_DEVICE void | BlockedToWarpStriped (InputT(&items)[ITEMS_PER_THREAD]) |
|
template<typename OffsetT > |
HIPCUB_DEVICE void | ScatterToBlocked (InputT(&items)[ITEMS_PER_THREAD], OffsetT(&ranks)[ITEMS_PER_THREAD]) |
|
template<typename OffsetT > |
HIPCUB_DEVICE void | ScatterToStriped (InputT(&items)[ITEMS_PER_THREAD], OffsetT(&ranks)[ITEMS_PER_THREAD]) |
|
template<typename OffsetT > |
HIPCUB_DEVICE void | ScatterToStripedGuarded (InputT(&items)[ITEMS_PER_THREAD], OffsetT(&ranks)[ITEMS_PER_THREAD]) |
|
template<typename OffsetT , typename ValidFlag > |
HIPCUB_DEVICE void | ScatterToStripedFlagged (InputT(&items)[ITEMS_PER_THREAD], OffsetT(&ranks)[ITEMS_PER_THREAD], ValidFlag(&is_valid)[ITEMS_PER_THREAD]) |
|
template<typename InputT , int BLOCK_DIM_X, int ITEMS_PER_THREAD, bool WARP_TIME_SLICING = false, int BLOCK_DIM_Y = 1, int BLOCK_DIM_Z = 1, int ARCH = HIPCUB_ARCH>
template<typename OffsetT >
HIPCUB_DEVICE void BlockExchange< InputT, BLOCK_DIM_X, ITEMS_PER_THREAD, WARP_TIME_SLICING, BLOCK_DIM_Y, BLOCK_DIM_Z, ARCH >::ScatterToBlocked |
( |
InputT(&) |
items[ITEMS_PER_THREAD], |
|
|
OffsetT(&) |
ranks[ITEMS_PER_THREAD] |
|
) |
| |
|
inline |
- Parameters
-
[in,out] | items | Items to exchange, converting between striped and blocked arrangements. |
[in] | ranks | Corresponding scatter ranks |
template<typename InputT , int BLOCK_DIM_X, int ITEMS_PER_THREAD, bool WARP_TIME_SLICING = false, int BLOCK_DIM_Y = 1, int BLOCK_DIM_Z = 1, int ARCH = HIPCUB_ARCH>
template<typename OffsetT >
HIPCUB_DEVICE void BlockExchange< InputT, BLOCK_DIM_X, ITEMS_PER_THREAD, WARP_TIME_SLICING, BLOCK_DIM_Y, BLOCK_DIM_Z, ARCH >::ScatterToStriped |
( |
InputT(&) |
items[ITEMS_PER_THREAD], |
|
|
OffsetT(&) |
ranks[ITEMS_PER_THREAD] |
|
) |
| |
|
inline |
- Parameters
-
[in,out] | items | Items to exchange, converting between striped and blocked arrangements. |
[in] | ranks | Corresponding scatter ranks |
template<typename InputT , int BLOCK_DIM_X, int ITEMS_PER_THREAD, bool WARP_TIME_SLICING = false, int BLOCK_DIM_Y = 1, int BLOCK_DIM_Z = 1, int ARCH = HIPCUB_ARCH>
template<typename OffsetT , typename ValidFlag >
HIPCUB_DEVICE void BlockExchange< InputT, BLOCK_DIM_X, ITEMS_PER_THREAD, WARP_TIME_SLICING, BLOCK_DIM_Y, BLOCK_DIM_Z, ARCH >::ScatterToStripedFlagged |
( |
InputT(&) |
items[ITEMS_PER_THREAD], |
|
|
OffsetT(&) |
ranks[ITEMS_PER_THREAD], |
|
|
ValidFlag(&) |
is_valid[ITEMS_PER_THREAD] |
|
) |
| |
|
inline |
- Parameters
-
[in,out] | items | Items to exchange, converting between striped and blocked arrangements. |
[in] | ranks | Corresponding scatter ranks |
[in] | is_valid | Corresponding flag denoting item validity |
template<typename InputT , int BLOCK_DIM_X, int ITEMS_PER_THREAD, bool WARP_TIME_SLICING = false, int BLOCK_DIM_Y = 1, int BLOCK_DIM_Z = 1, int ARCH = HIPCUB_ARCH>
template<typename OffsetT >
HIPCUB_DEVICE void BlockExchange< InputT, BLOCK_DIM_X, ITEMS_PER_THREAD, WARP_TIME_SLICING, BLOCK_DIM_Y, BLOCK_DIM_Z, ARCH >::ScatterToStripedGuarded |
( |
InputT(&) |
items[ITEMS_PER_THREAD], |
|
|
OffsetT(&) |
ranks[ITEMS_PER_THREAD] |
|
) |
| |
|
inline |
- Parameters
-
[in,out] | items | Items to exchange, converting between striped and blocked arrangements. |
[in] | ranks | Corresponding scatter ranks |