CMS 3D CMS Logo

CAHitNtupletGeneratorOnGPU.h
Go to the documentation of this file.
1 #ifndef RecoPixelVertexing_PixelTriplets_plugins_CAHitNtupletGeneratorOnGPU_h
2 #define RecoPixelVertexing_PixelTriplets_plugins_CAHitNtupletGeneratorOnGPU_h
3 
4 #include <cuda_runtime.h>
7 
12 
14 #include "HelixFitOnGPU.h"
15 
16 #include "GPUCACell.h"
17 
18 namespace edm {
19  class Event;
20  class EventSetup;
22 } // namespace edm
23 
25 public:
29 
34 
38 
39 public:
43 
45 
47  static const char* fillDescriptionsLabel() { return "caHitNtupletOnGPU"; }
48 
49  PixelTrackHeterogeneous makeTuplesAsync(TrackingRecHit2DGPU const& hits_d, float bfield, cudaStream_t stream) const;
50 
51  PixelTrackHeterogeneous makeTuples(TrackingRecHit2DCPU const& hits_d, float bfield) const;
52 
53 private:
54  void buildDoublets(HitsOnCPU const& hh, cudaStream_t stream) const;
55 
56  void hitNtuplets(HitsOnCPU const& hh, const edm::EventSetup& es, bool useRiemannFit, cudaStream_t cudaStream);
57 
58  void launchKernels(HitsOnCPU const& hh, bool useRiemannFit, cudaStream_t cudaStream) const;
59 
61 
62  Counters* m_counters = nullptr;
63 };
64 
65 #endif // RecoPixelVertexing_PixelTriplets_plugins_CAHitNtupletGeneratorOnGPU_h
CAHitNtupletGeneratorOnGPU::~CAHitNtupletGeneratorOnGPU
~CAHitNtupletGeneratorOnGPU()
Definition: CAHitNtupletGeneratorOnGPU.cc:111
PixelSubdetector.h
cAHitNtupletGenerator::QualityCuts
Definition: CAHitNtupletGeneratorKernels.h:36
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::Transition::Event
TrackingRecHit2DHeterogeneous.h
cms::cuda::stream
cudaStream_t stream
Definition: HistoContainer.h:57
CAHitNtupletGeneratorKernels.h
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
TrackingRecHit2DHeterogeneous
Definition: TrackingRecHit2DHeterogeneous.h:8
TrackingRecHit2DSOAView::hindex_type
uint32_t hindex_type
Definition: TrackingRecHit2DSOAView.h:18
HeterogeneousSoA
Definition: HeterogeneousSoA.h:13
TrackingRecHit2DSOAView
Definition: TrackingRecHit2DSOAView.h:15
TrackingRecHit2DCUDA
TrackingRecHit2DHeterogeneous< cms::cudacompat::GPUTraits > TrackingRecHit2DCUDA
Definition: TrackingRecHit2DHeterogeneous.h:137
pixelTrack::Quality
Quality
Definition: TrackSoAHeterogeneousT.h:10
CAHitNtupletGeneratorOnGPU::hitNtuplets
void hitNtuplets(HitsOnCPU const &hh, const edm::EventSetup &es, bool useRiemannFit, cudaStream_t cudaStream)
SimpleVector.h
EDGetToken.h
CAHitNtupletGeneratorOnGPU::fillDescriptions
static void fillDescriptions(edm::ParameterSetDescription &desc)
Definition: CAHitNtupletGeneratorOnGPU.cc:130
TrackSoAHeterogeneousT
Definition: TrackSoAHeterogeneousT.h:14
CAHitNtupletGeneratorOnGPU
Definition: CAHitNtupletGeneratorOnGPU.h:24
hh
const auto & hh
Definition: CAHitNtupletGeneratorKernelsImpl.h:455
edm::ParameterSet
Definition: ParameterSet.h:47
HelixFitOnGPU.h
CAHitNtupletGeneratorOnGPU::launchKernels
void launchKernels(HitsOnCPU const &hh, bool useRiemannFit, cudaStream_t cudaStream) const
CAHitNtupletGeneratorOnGPU::HitContainer
pixelTrack::HitContainer HitContainer
Definition: CAHitNtupletGeneratorOnGPU.h:32
edm::EventSetup
Definition: EventSetup.h:58
CAHitNtupletGeneratorOnGPU::makeTuplesAsync
PixelTrackHeterogeneous makeTuplesAsync(TrackingRecHit2DGPU const &hits_d, float bfield, cudaStream_t stream) const
Definition: CAHitNtupletGeneratorOnGPU.cc:176
CAHitNtupletGeneratorOnGPU::hindex_type
TrackingRecHit2DSOAView::hindex_type hindex_type
Definition: CAHitNtupletGeneratorOnGPU.h:28
looper.cfg
cfg
Definition: looper.py:297
CAHitNtupletGeneratorOnGPU::CAHitNtupletGeneratorOnGPU
CAHitNtupletGeneratorOnGPU(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
Definition: CAHitNtupletGeneratorOnGPU.h:40
CAHitNtupletGeneratorOnGPU::makeTuples
PixelTrackHeterogeneous makeTuples(TrackingRecHit2DCPU const &hits_d, float bfield) const
Definition: CAHitNtupletGeneratorOnGPU.cc:204
CAHitNtupletGeneratorOnGPU::buildDoublets
void buildDoublets(HitsOnCPU const &hh, cudaStream_t stream) const
cAHitNtupletGenerator::Counters
Definition: CAHitNtupletGeneratorKernels.h:12
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
CAHitNtupletGeneratorOnGPU::fillDescriptionsLabel
static const char * fillDescriptionsLabel()
Definition: CAHitNtupletGeneratorOnGPU.h:47
GPUCACell.h
ParameterSetDescription
PixelTrackHeterogeneous.h
CAHitNtupletGeneratorOnGPU::m_counters
Counters * m_counters
Definition: CAHitNtupletGeneratorOnGPU.h:62
pixelTrack::HitContainer
TrackSoA::HitContainer HitContainer
Definition: TrackSoAHeterogeneousT.h:69
CAHitNtupletGeneratorOnGPU::m_params
Params m_params
Definition: CAHitNtupletGeneratorOnGPU.h:60
pixelTrack::TrackSoA
TrackSoAHeterogeneousT< maxNumber()> TrackSoA
Definition: TrackSoAHeterogeneousT.h:67
EventSetup
cms::cuda::HistoContainer
Definition: HistoContainer.h:152
ParameterSet.h
cAHitNtupletGenerator::Params
Definition: CAHitNtupletGeneratorKernels.h:53
edm::ConsumesCollector
Definition: ConsumesCollector.h:45