Tile status interface specialized for scan status and value types that cannot be combined into one machine word.
Definition at line 287 of file single_pass_scan_operators.cuh.
Public Types | |
enum | { TILE_STATUS_PADDING = CUB_PTX_WARP_THREADS } |
typedef char | StatusWord |
Public Member Functions | |
__host__ __device__ __forceinline__ | ScanTileState () |
Constructor. | |
__host__ __device__ __forceinline__ cudaError_t | Init (int num_tiles, void *d_temp_storage, size_t temp_storage_bytes) |
Initializer. More... | |
__device__ __forceinline__ void | InitializeStatus (int num_tiles) |
__device__ __forceinline__ void | SetInclusive (int tile_idx, T tile_inclusive) |
__device__ __forceinline__ void | SetPartial (int tile_idx, T tile_partial) |
__device__ __forceinline__ void | WaitForValid (int tile_idx, StatusWord &status, T &value) |
Static Public Member Functions | |
__host__ __device__ static __forceinline__ cudaError_t | AllocationSize (int num_tiles, size_t &temp_storage_bytes) |
Data Fields | |
StatusWord * | d_tile_status |
T * | d_tile_partial |
T * | d_tile_inclusive |
|
inlinestatic |
Compute device memory needed for tile status
[in] | num_tiles | Number of tiles |
[out] | temp_storage_bytes | Size in bytes of \t d_temp_storage allocation |
Definition at line 348 of file single_pass_scan_operators.cuh.
|
inline |
Initializer.
[in] | num_tiles | Number of tiles |
[in] | d_temp_storage | Device-accessible allocation of temporary storage. When NULL, the required allocation size is written to temp_storage_bytes and no work is done. |
[in] | temp_storage_bytes | Size in bytes of \t d_temp_storage allocation |
Definition at line 315 of file single_pass_scan_operators.cuh.
|
inline |
Initialize (from device)
Definition at line 367 of file single_pass_scan_operators.cuh.
|
inline |
Update the specified tile's inclusive value and corresponding status
Definition at line 387 of file single_pass_scan_operators.cuh.
|
inline |
Update the specified tile's partial value and corresponding status
Definition at line 403 of file single_pass_scan_operators.cuh.
|
inline |
Wait for the corresponding tile to become non-invalid
Definition at line 418 of file single_pass_scan_operators.cuh.