#include <CAHitNtupletGeneratorOnGPU.h>
Public Types | |
using | Counters = cAHitNtupletGenerator::Counters |
using | hindex_type = TrackingRecHit2DSOAView::hindex_type |
using | HitContainer = pixelTrack::HitContainer |
using | HitsOnCPU = TrackingRecHit2DGPU |
using | HitsOnGPU = TrackingRecHit2DSOAView |
using | OutputSoA = pixelTrack::TrackSoA |
using | Params = cAHitNtupletGenerator::Params |
using | Quality = pixelTrack::Quality |
using | QualityCuts = cAHitNtupletGenerator::QualityCuts |
using | Tuple = HitContainer |
Public Member Functions | |
CAHitNtupletGeneratorOnGPU (const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC) | |
CAHitNtupletGeneratorOnGPU (const edm::ParameterSet &cfg, edm::ConsumesCollector &iC) | |
PixelTrackHeterogeneous | makeTuples (TrackingRecHit2DCPU const &hits_d, float bfield) const |
PixelTrackHeterogeneous | makeTuplesAsync (TrackingRecHit2DGPU const &hits_d, float bfield, cudaStream_t stream) const |
~CAHitNtupletGeneratorOnGPU () | |
Static Public Member Functions | |
static void | fillDescriptions (edm::ParameterSetDescription &desc) |
static const char * | fillDescriptionsLabel () |
Private Member Functions | |
void | buildDoublets (HitsOnCPU const &hh, cudaStream_t stream) const |
void | hitNtuplets (HitsOnCPU const &hh, const edm::EventSetup &es, bool useRiemannFit, cudaStream_t cudaStream) |
void | launchKernels (HitsOnCPU const &hh, bool useRiemannFit, cudaStream_t cudaStream) const |
Private Attributes | |
Counters * | m_counters = nullptr |
Params | m_params |
Definition at line 24 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 37 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 28 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 32 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 27 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 26 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 31 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 36 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 30 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 35 of file CAHitNtupletGeneratorOnGPU.h.
Definition at line 33 of file CAHitNtupletGeneratorOnGPU.h.
|
inline |
Definition at line 40 of file CAHitNtupletGeneratorOnGPU.h.
CAHitNtupletGeneratorOnGPU::CAHitNtupletGeneratorOnGPU | ( | const edm::ParameterSet & | cfg, |
edm::ConsumesCollector & | iC | ||
) |
Definition at line 60 of file CAHitNtupletGeneratorOnGPU.cc.
References fwrapper::cs, cudaCheck, CUDAService::enabled(), m_counters, m_params, cAHitNtupletGenerator::Params::onGPU_, and gpuVertexFinder::printf().
CAHitNtupletGeneratorOnGPU::~CAHitNtupletGeneratorOnGPU | ( | ) |
Definition at line 117 of file CAHitNtupletGeneratorOnGPU.cc.
References fwrapper::cs, cAHitNtupletGenerator::Params::doStats_, CUDAService::enabled(), m_counters, m_params, cAHitNtupletGenerator::Params::onGPU_, and CAHitNtupletGeneratorKernels< TTraits >::printCounters().
|
private |
|
static |
Definition at line 136 of file CAHitNtupletGeneratorOnGPU.cc.
References edm::ParameterSetDescription::add(), caConstants::maxNumberOfDoublets, and edm::ParameterDescriptionNode::setComment().
Referenced by CAHitNtupletCUDA::fillDescriptions().
|
inlinestatic |
Definition at line 47 of file CAHitNtupletGeneratorOnGPU.h.
|
private |
|
private |
PixelTrackHeterogeneous CAHitNtupletGeneratorOnGPU::makeTuples | ( | TrackingRecHit2DCPU const & | hits_d, |
float | bfield | ||
) | const |
Definition at line 216 of file CAHitNtupletGeneratorOnGPU.cc.
References HelixFitOnGPU::allocateOnGPU(), CAHitNtupletGeneratorKernels< TTraits >::allocateOnGPU(), cms::cuda::assert(), CAHitNtupletGeneratorKernels< TTraits >::buildDoublets(), CAHitNtupletGeneratorKernels< TTraits >::classifyTuples(), gather_cfg::cout, cAHitNtupletGenerator::Params::fitNas4_, HeterogeneousSoA< T >::get(), HelixFitOnGPU::launchBrokenLineKernelsOnCPU(), CAHitNtupletGeneratorKernels< TTraits >::launchKernels(), HelixFitOnGPU::launchRiemannKernelsOnCPU(), m_counters, m_params, caConstants::maxNumberOfQuadruplets, TrackingRecHit2DHeterogeneous< Traits >::nHits(), CAHitNtupletGeneratorKernels< TTraits >::setCounters(), gpuVertexFinder::soa, tracks, CAHitNtupletGeneratorKernels< TTraits >::tupleMultiplicity(), cAHitNtupletGenerator::Params::useRiemannFit_, and TrackingRecHit2DHeterogeneous< Traits >::view().
Referenced by CAHitNtupletCUDA::produce().
PixelTrackHeterogeneous CAHitNtupletGeneratorOnGPU::makeTuplesAsync | ( | TrackingRecHit2DGPU const & | hits_d, |
float | bfield, | ||
cudaStream_t | stream | ||
) | const |
Definition at line 183 of file CAHitNtupletGeneratorOnGPU.cc.
References HelixFitOnGPU::allocateOnGPU(), CAHitNtupletGeneratorKernels< TTraits >::allocateOnGPU(), cms::cuda::assert(), CAHitNtupletGeneratorKernels< TTraits >::buildDoublets(), CAHitNtupletGeneratorKernels< TTraits >::classifyTuples(), gather_cfg::cout, cudaCheck, cAHitNtupletGenerator::Params::fitNas4_, HeterogeneousSoA< T >::get(), HelixFitOnGPU::launchBrokenLineKernels(), CAHitNtupletGeneratorKernels< TTraits >::launchKernels(), HelixFitOnGPU::launchRiemannKernels(), m_counters, m_params, caConstants::maxNumberOfQuadruplets, TrackingRecHit2DHeterogeneous< Traits >::nHits(), CAHitNtupletGeneratorKernels< TTraits >::setCounters(), gpuVertexFinder::soa, cms::cuda::stream, tracks, CAHitNtupletGeneratorKernels< TTraits >::tupleMultiplicity(), cAHitNtupletGenerator::Params::useRiemannFit_, and TrackingRecHit2DHeterogeneous< Traits >::view().
Referenced by CAHitNtupletCUDA::produce().
|
private |
Definition at line 62 of file CAHitNtupletGeneratorOnGPU.h.
Referenced by CAHitNtupletGeneratorOnGPU(), makeTuples(), makeTuplesAsync(), and ~CAHitNtupletGeneratorOnGPU().
|
private |
Definition at line 60 of file CAHitNtupletGeneratorOnGPU.h.
Referenced by CAHitNtupletGeneratorOnGPU(), makeTuples(), makeTuplesAsync(), and ~CAHitNtupletGeneratorOnGPU().