cub::AgentRadixSortDownsweepPolicy#

template<int NominalBlockThreads4B, int NominalItemsPerThread4B, typename ComputeT, BlockLoadAlgorithm LoadAlgorithm, CacheLoadModifier LoadModifier, RadixRankAlgorithm RankAlgorithm, BlockScanAlgorithm ScanAlgorithm, int RadixBits, typename ScalingType = detail::RegBoundScaling<NominalBlockThreads4B, NominalItemsPerThread4B, ComputeT>>
struct AgentRadixSortDownsweepPolicy : public detail::RegBoundScaling<NominalBlockThreads4B, NominalItemsPerThread4B, ComputeT>#

Parameterizable tuning policy type for AgentRadixSortDownsweep.

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 keys (and values)

  • RankAlgorithm – The radix ranking algorithm to use

  • ScanAlgorithm – The block scan algorithm to use

  • RadixBits – The number of radix bits, i.e., log2(bins)

Public Static Attributes

static constexpr int RADIX_BITS = RadixBits#

The number of radix bits, i.e., log2(bins)

static constexpr BlockLoadAlgorithm LOAD_ALGORITHM = LoadAlgorithm#

The BlockLoad algorithm to use.

static constexpr CacheLoadModifier LOAD_MODIFIER = LoadModifier#

Cache load modifier for reading keys (and values)

static constexpr RadixRankAlgorithm RANK_ALGORITHM = RankAlgorithm#

The radix ranking algorithm to use.

static constexpr BlockScanAlgorithm SCAN_ALGORITHM = ScanAlgorithm#

The BlockScan algorithm to use.