Definition at line 52 of file block_adjacent_difference.cuh.
Data Structures | |
| struct | _TempStorage | 
| Shared memory storage layout type (last element from each thread's input)  More... | |
| struct | ApplyOp | 
| Specialization for when FlagOp has third index param.  More... | |
| struct | ApplyOp< FlagOp, false > | 
| Specialization for when FlagOp does not have a third index param.  More... | |
| struct | Iterate | 
| Templated unrolling of item comparison (inductive case)  More... | |
| struct | Iterate< MAX_ITERATIONS, MAX_ITERATIONS > | 
| Templated unrolling of item comparison (termination case)  More... | |
| struct | TempStorage | 
| \smemstorage{BlockDiscontinuity}  More... | |
Public Member Functions | |
Collective constructors  | |
| __device__ __forceinline__ | BlockAdjacentDifference () | 
| Collective constructor using a private static allocation of shared memory as temporary storage.   | |
| __device__ __forceinline__ | BlockAdjacentDifference (TempStorage &temp_storage) | 
| Collective constructor using the specified memory allocation as temporary storage.   | |
Head flag operations  | |
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagHeads (FlagT(&head_flags)[ITEMS_PER_THREAD], T(&input)[ITEMS_PER_THREAD], T(&preds)[ITEMS_PER_THREAD], FlagOp flag_op) | 
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagHeads (FlagT(&head_flags)[ITEMS_PER_THREAD], T(&input)[ITEMS_PER_THREAD], T(&preds)[ITEMS_PER_THREAD], FlagOp flag_op, T tile_predecessor_item) | 
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagHeads (FlagT(&head_flags)[ITEMS_PER_THREAD], T(&input)[ITEMS_PER_THREAD], FlagOp flag_op) | 
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagHeads (FlagT(&head_flags)[ITEMS_PER_THREAD], T(&input)[ITEMS_PER_THREAD], FlagOp flag_op, T tile_predecessor_item) | 
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagTails (FlagT(&tail_flags)[ITEMS_PER_THREAD], T(&input)[ITEMS_PER_THREAD], FlagOp flag_op) | 
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagTails (FlagT(&tail_flags)[ITEMS_PER_THREAD], T(&input)[ITEMS_PER_THREAD], FlagOp flag_op, T tile_successor_item) | 
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagHeadsAndTails (FlagT(&head_flags)[ITEMS_PER_THREAD], FlagT(&tail_flags)[ITEMS_PER_THREAD], T(&input)[ITEMS_PER_THREAD], FlagOp flag_op) | 
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagHeadsAndTails (FlagT(&head_flags)[ITEMS_PER_THREAD], FlagT(&tail_flags)[ITEMS_PER_THREAD], T tile_successor_item, T(&input)[ITEMS_PER_THREAD], FlagOp flag_op) | 
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagHeadsAndTails (FlagT(&head_flags)[ITEMS_PER_THREAD], T tile_predecessor_item, FlagT(&tail_flags)[ITEMS_PER_THREAD], T(&input)[ITEMS_PER_THREAD], FlagOp flag_op) | 
| template<int ITEMS_PER_THREAD, typename FlagT , typename FlagOp > | |
| __device__ __forceinline__ void | FlagHeadsAndTails (FlagT(&head_flags)[ITEMS_PER_THREAD], T tile_predecessor_item, FlagT(&tail_flags)[ITEMS_PER_THREAD], T tile_successor_item, T(&input)[ITEMS_PER_THREAD], FlagOp flag_op) | 
Private Types | |
| enum | { BLOCK_THREADS = BLOCK_DIM_X * BLOCK_DIM_Y * BLOCK_DIM_Z } | 
| Constants.  More... | |
Private Member Functions | |
| __device__ __forceinline__ _TempStorage & | PrivateStorage () | 
| Internal storage allocator.   | |
Private Attributes | |
| _TempStorage & | temp_storage | 
| Shared storage reference.   | |
| unsigned int | linear_tid | 
| Linear thread-id.   | |
      
  | 
  private | 
Constants.
| Enumerator | |
|---|---|
| BLOCK_THREADS | The thread block size in threads.  | 
Definition at line 61 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
Collective constructor using a private static allocation of shared memory as temporary storage.
Definition at line 215 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
Collective constructor using the specified memory allocation as temporary storage.
| [in] | temp_storage | Reference to memory allocation having layout type TempStorage | 
Definition at line 225 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | head_flags | Calling thread's discontinuity head_flags | 
| [in] | input | Calling thread's input items | 
| [in] | flag_op | Binary boolean flag predicate | 
Definition at line 306 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | head_flags | Calling thread's discontinuity head_flags | 
| [in] | input | Calling thread's input items | 
| [in] | flag_op | Binary boolean flag predicate | 
| [in] | tile_predecessor_item | [thread0 only] Item with which to compare the first tile item (input0 from thread0).  | 
Definition at line 320 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | head_flags | Calling thread's discontinuity head_flags | 
| [in] | input | Calling thread's input items | 
| [out] | preds | Calling thread's predecessor items | 
| [in] | flag_op | Binary boolean flag predicate | 
Definition at line 246 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | head_flags | Calling thread's discontinuity head_flags | 
| [in] | input | Calling thread's input items | 
| [out] | preds | Calling thread's predecessor items | 
| [in] | flag_op | Binary boolean flag predicate | 
| [in] | tile_predecessor_item | [thread0 only] Item with which to compare the first tile item (input0 from thread0).  | 
Definition at line 276 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | head_flags | Calling thread's discontinuity head_flags | 
| [out] | tail_flags | Calling thread's discontinuity tail_flags | 
| [in] | tile_successor_item | [threadBLOCK_THREADS-1 only] Item with which to compare the last tile item (inputITEMS_PER_THREAD-1 from threadBLOCK_THREADS-1).   | 
| [in] | input | Calling thread's input items | 
| [in] | flag_op | Binary boolean flag predicate | 
Definition at line 446 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | head_flags | Calling thread's discontinuity head_flags | 
| [out] | tail_flags | Calling thread's discontinuity tail_flags | 
| [in] | input | Calling thread's input items | 
| [in] | flag_op | Binary boolean flag predicate | 
Definition at line 395 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | head_flags | Calling thread's discontinuity head_flags | 
| [in] | tile_predecessor_item | [thread0 only] Item with which to compare the first tile item (input0 from thread0).   | 
| [out] | tail_flags | Calling thread's discontinuity tail_flags | 
| [in] | tile_successor_item | [threadBLOCK_THREADS-1 only] Item with which to compare the last tile item (inputITEMS_PER_THREAD-1 from threadBLOCK_THREADS-1).   | 
| [in] | input | Calling thread's input items | 
| [in] | flag_op | Binary boolean flag predicate | 
Definition at line 545 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | head_flags | Calling thread's discontinuity head_flags | 
| [in] | tile_predecessor_item | [thread0 only] Item with which to compare the first tile item (input0 from thread0).   | 
| [out] | tail_flags | Calling thread's discontinuity tail_flags | 
| [in] | input | Calling thread's input items | 
| [in] | flag_op | Binary boolean flag predicate | 
Definition at line 498 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | tail_flags | Calling thread's discontinuity tail_flags | 
| [in] | input | Calling thread's input items | 
| [in] | flag_op | Binary boolean flag predicate | 
Definition at line 336 of file block_adjacent_difference.cuh.
      
  | 
  inline | 
| [out] | tail_flags | Calling thread's discontinuity tail_flags | 
| [in] | input | Calling thread's input items | 
| [in] | flag_op | Binary boolean flag predicate | 
| [in] | tile_successor_item | [threadBLOCK_THREADS-1 only] Item with which to compare the last tile item (inputITEMS_PER_THREAD-1 from threadBLOCK_THREADS-1).  | 
Definition at line 364 of file block_adjacent_difference.cuh.
      
  | 
  inlineprivate | 
Internal storage allocator.
Definition at line 81 of file block_adjacent_difference.cuh.
      
  | 
  private | 
Linear thread-id.
Definition at line 198 of file block_adjacent_difference.cuh.
      
  | 
  private | 
Shared storage reference.
Definition at line 195 of file block_adjacent_difference.cuh.