#include <algorithm>
#include <atomic>
#include <cstddef>
#include <cstdint>
#include <type_traits>
#include "HeterogeneousCore/CUDAUtilities/interface/AtomicPairCounter.h"
#include "HeterogeneousCore/CUDAUtilities/interface/cudaCheck.h"
#include "HeterogeneousCore/CUDAUtilities/interface/cuda_assert.h"
#include "HeterogeneousCore/CUDAUtilities/interface/cudastdAlgorithm.h"
#include "HeterogeneousCore/CUDAUtilities/interface/prefixScan.h"
Go to the source code of this file.
Classes | |
class | cms::cuda::HistoContainer< T, NBINS, SIZE, S, I, NHISTS > |
Namespaces | |
cms | |
Namespace of DDCMS conversion namespace. | |
cms::cuda | |
Typedefs | |
template<typename I , uint32_t MAXONES, uint32_t MAXMANYS> | |
using | cms::cuda::OneToManyAssoc = HistoContainer< uint32_t, MAXONES, MAXMANYS, sizeof(uint32_t) *8, I, 1 > |
Functions | |
template<typename Histo , typename T > | |
cms::cuda::__attribute__ ((always_inline)) void countFromVector(Histo *__restrict__ h | |
cudaStream_t T uint32_t const T *__restrict__ const uint32_t *__restrict__ uint32_t int cudaStream_t Func __host__ __device__ | cms::cuda::__attribute__ ((always_inline)) void forEachInBins(Hist const &hist |
template<typename Histo > | |
cms::cuda::__attribute__ ((always_inline)) void launchZero(Histo *__restrict__ h | |
cms::cuda::assert (be >=bs) | |
cms::cuda::for (auto pj=hist.begin(bs);pj< hist.end(be);++pj) | |
cms::cuda::for (int i=first, nt=offsets[nh];i< nt;i+=gridDim.x *blockDim.x) | |
Variables | |
int | cms::cuda::be = std::min(int(Hist::nbins() - 1), bs + n) |
cms::cuda::bs = std::max(0, bs - n) | |
cudaStream_t T uint32_t const T *__restrict__ const uint32_t *__restrict__ uint32_t int cudaStream_t Func __host__ __device__ V int Func | cms::cuda::func |
cudaStream_t T uint32_t const T *__restrict__ const uint32_t *__restrict__ uint32_t int cudaStream_t Func __host__ __device__ V int | cms::cuda::n |
uint32_t | cms::cuda::nh |
cudaStream_t T uint32_t const T *__restrict__ const uint32_t *__restrict__ uint32_t int | cms::cuda::nthreads |
uint32_t const T *__restrict__ const uint32_t *__restrict__ | cms::cuda::offsets |
cudaStream_t | cms::cuda::stream |
cudaStream_t T uint32_t const T *__restrict__ const uint32_t *__restrict__ uint32_t | cms::cuda::totSize |
uint32_t const T *__restrict__ | cms::cuda::v |
cudaStream_t T uint32_t const T *__restrict__ const uint32_t *__restrict__ uint32_t int cudaStream_t | cms::cuda::V |
cudaStream_t T uint32_t const T *__restrict__ const uint32_t *__restrict__ uint32_t int cudaStream_t Func __host__ __device__ V | cms::cuda::value |
__host__ __device__ V V | cms::cuda::wmax |
__host__ __device__ V | cms::cuda::wmin |