Go to the documentation of this file.
36 #include "util_namespace.cuh"
50 #ifndef DOXYGEN_SHOULD_SKIP_THIS // Do not document
54 #define CUB_PTX_ARCH 0
56 #define CUB_PTX_ARCH __CUDA_ARCH__
60 #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__>= 350 && defined(__CUDACC_RDC__))
61 #define CUB_RUNTIME_ENABLED
62 #define CUB_RUNTIME_FUNCTION __host__ __device__
64 #define CUB_RUNTIME_FUNCTION __host__
67 #endif // DOXYGEN_SHOULD_SKIP_THIS
71 #define CUB_LOG_WARP_THREADS(arch) \
75 #define CUB_WARP_THREADS(arch) \
76 (1 << CUB_LOG_WARP_THREADS(arch))
79 #define CUB_LOG_SMEM_BANKS(arch) \
85 #define CUB_SMEM_BANKS(arch) \
86 (1 << CUB_LOG_SMEM_BANKS(arch))
89 #define CUB_SMEM_BANK_BYTES(arch) \
93 #define CUB_SMEM_BYTES(arch) \
99 #define CUB_SMEM_ALLOC_UNIT(arch) \
107 #define CUB_REGS_BY_BLOCK(arch) \
113 #define CUB_REG_ALLOC_UNIT(arch) \
123 #define CUB_WARP_ALLOC_UNIT(arch) \
129 #define CUB_MAX_SM_THREADS(arch) \
139 #define CUB_MAX_SM_BLOCKS(arch) \
145 #define CUB_MAX_BLOCK_THREADS(arch) \
151 #define CUB_MAX_SM_REGISTERS(arch) \
161 #define CUB_SUBSCRIPTION_FACTOR(arch) \
169 #define CUB_PREFER_CONFLICT_OVER_PADDING(arch) \
174 #ifndef DOXYGEN_SHOULD_SKIP_THIS // Do not document
176 #define CUB_PTX_LOG_WARP_THREADS CUB_LOG_WARP_THREADS(CUB_PTX_ARCH)
177 #define CUB_PTX_WARP_THREADS CUB_WARP_THREADS(CUB_PTX_ARCH)
178 #define CUB_PTX_LOG_SMEM_BANKS CUB_LOG_SMEM_BANKS(CUB_PTX_ARCH)
179 #define CUB_PTX_SMEM_BANKS CUB_SMEM_BANKS(CUB_PTX_ARCH)
180 #define CUB_PTX_SMEM_BANK_BYTES CUB_SMEM_BANK_BYTES(CUB_PTX_ARCH)
181 #define CUB_PTX_SMEM_BYTES CUB_SMEM_BYTES(CUB_PTX_ARCH)
182 #define CUB_PTX_SMEM_ALLOC_UNIT CUB_SMEM_ALLOC_UNIT(CUB_PTX_ARCH)
183 #define CUB_PTX_REGS_BY_BLOCK CUB_REGS_BY_BLOCK(CUB_PTX_ARCH)
184 #define CUB_PTX_REG_ALLOC_UNIT CUB_REG_ALLOC_UNIT(CUB_PTX_ARCH)
185 #define CUB_PTX_WARP_ALLOC_UNIT CUB_WARP_ALLOC_UNIT(CUB_PTX_ARCH)
186 #define CUB_PTX_MAX_SM_THREADS CUB_MAX_SM_THREADS(CUB_PTX_ARCH)
187 #define CUB_PTX_MAX_SM_BLOCKS CUB_MAX_SM_BLOCKS(CUB_PTX_ARCH)
188 #define CUB_PTX_MAX_BLOCK_THREADS CUB_MAX_BLOCK_THREADS(CUB_PTX_ARCH)
189 #define CUB_PTX_MAX_SM_REGISTERS CUB_MAX_SM_REGISTERS(CUB_PTX_ARCH)
190 #define CUB_PTX_PREFER_CONFLICT_OVER_PADDING CUB_PREFER_CONFLICT_OVER_PADDING(CUB_PTX_ARCH)
192 #endif // Do not document