cub::AgentScanPolicy#

template<int NominalBlockThreads4B, int NominalItemsPerThread4B, typename ComputeT, BlockLoadAlgorithm LoadAlgorithm, CacheLoadModifier LoadModifier, BlockStoreAlgorithm StoreAlgorithm, BlockScanAlgorithm ScanAlgorithm, typename ScalingType = detail::MemBoundScaling<NominalBlockThreads4B, NominalItemsPerThread4B, ComputeT>, typename DelayConstructorT = detail::default_delay_constructor_t<ComputeT>>
struct AgentScanPolicy : public detail::MemBoundScaling<NominalBlockThreads4B, NominalItemsPerThread4B, ComputeT>#

Parameterizable tuning policy type for AgentScan.

Template Parameters:
  • NominalBlockThreads4B – Threads per thread block

  • NominalItemsPerThread4B – Items per thread (per tile of input)

  • ComputeT – Dominant compute type

  • LoadAlgorithm – The BlockLoad algorithm to use

  • LoadModifier – Cache load modifier for reading input elements

  • StoreAlgorithm – The BlockStore algorithm to use

  • ScanAlgorithm – The BlockScan algorithm to use

  • DelayConstructorT – Implementation detail, do not specify directly, requirements on the content of this type are subject to breaking change.

Public Static Attributes

static constexpr BlockLoadAlgorithm LOAD_ALGORITHM = LoadAlgorithm#
static constexpr CacheLoadModifier LOAD_MODIFIER = LoadModifier#
static constexpr BlockStoreAlgorithm STORE_ALGORITHM = StoreAlgorithm#
static constexpr BlockScanAlgorithm SCAN_ALGORITHM = ScanAlgorithm#