cub::TilePrefixCallbackOp#
-
template<typename T, typename ScanOpT, typename ScanTileStateT, typename DelayConstructorT = detail::default_delay_constructor_t<T>, bool StableReductionOrder = false>
struct TilePrefixCallbackOp# Public Types
-
using WarpReduceT = WarpReduce<T, (1 << (5))>#
-
using TempStorage = Uninitialized<_TempStorage>#
-
using StatusWord = typename ScanTileStateT::StatusWord#
Public Functions
- inline TilePrefixCallbackOp(
- ScanTileStateT &tile_status,
- TempStorage &temp_storage,
- ScanOpT scan_op,
- int tile_idx
- inline TilePrefixCallbackOp(
- ScanTileStateT &tile_status,
- TempStorage &temp_storage,
- ScanOpT scan_op
-
template<class DelayT = detail::default_delay_t<T>>
inline void ProcessWindow( - int predecessor_idx,
- StatusWord &predecessor_status,
- T &window_aggregate,
- DelayT delay = {}
Block until all predecessors within the warp-wide window have non-invalid status.
- Parameters:
predecessor_idx – Preceding tile index to inspect
predecessor_status – [out] Preceding tile status
window_aggregate – [out] Relevant partial reduction from this window of preceding tiles
-
inline int GetTileIdx() const#
Public Members
-
_TempStorage &temp_storage#
Reference to a warp-reduction instance.
-
ScanTileStateT &tile_status#
Interface to tile status (non-anchor tiles stay at PARTIAL on the deterministic path)
-
int tile_idx#
The current tile index.
-
struct _TempStorage#
-
using WarpReduceT = WarpReduce<T, (1 << (5))>#