CMS 3D CMS Logo

KernelManagerHGCalRecHit.h
Go to the documentation of this file.
1 #ifndef RecoLocalCalo_HGCalRecProducers_KernelManagerHGCalRecHit_h
2 #define RecoLocalCalo_HGCalRecProducers_KernelManagerHGCalRecHit_h
3 
5 #include "RecoLocalCalo/HGCalRecProducers/plugins/HGCalRecHitKernelImpl.cuh"
9 
10 #include <vector>
11 #include <algorithm> //std::swap
12 #include <variant>
13 #include <cuda.h>
14 #include <cuda_runtime.h>
15 
16 #ifdef __CUDA_ARCH__
17 extern __constant__ uint32_t calo_rechit_masks[];
18 #endif
19 
20 template <typename T>
22 public:
27  "The KernelConstantData class does not support this type.");
28  }
31 };
32 
34 public:
39  void run_kernels(const KernelConstantData<HGCeeUncalibRecHitConstantData>*, const cudaStream_t&);
40  void run_kernels(const KernelConstantData<HGChefUncalibRecHitConstantData>*, const cudaStream_t&);
41  void run_kernels(const KernelConstantData<HGChebUncalibRecHitConstantData>*, const cudaStream_t&);
42  void transfer_soa_to_host(const cudaStream_t&);
43 
44 private:
45  void transfer_soa_to_device_(const cudaStream_t&);
46 
47  uint32_t nhits_;
48  uint32_t pad_;
49  uint32_t nbytes_host_;
50  uint32_t nbytes_device_;
54 };
55 
56 #endif //RecoLocalCalo_HGCalRecProducers_KernelManagerHGCalRecHit_h
ConstHGCRecHitSoA.h
KernelConstantData::vdata_
HGCConstantVectorData vdata_
Definition: KernelManagerHGCalRecHit.h:30
KernelConstantData::data_
T data_
Definition: KernelManagerHGCalRecHit.h:29
KernelManagerHGCalRecHit::transfer_soa_to_device_
void transfer_soa_to_device_(const cudaStream_t &)
calo_rechit_masks
constexpr uint32_t calo_rechit_masks[]
Definition: CaloRecHit.h:12
HGCConstantVectorData
Definition: HGCUncalibRecHitsToRecHitsConstants.h:7
KernelManagerHGCalRecHit::nbytes_device_
uint32_t nbytes_device_
Definition: KernelManagerHGCalRecHit.h:50
KernelManagerHGCalRecHit::nbytes_host_
uint32_t nbytes_host_
Definition: KernelManagerHGCalRecHit.h:49
KernelManagerHGCalRecHit::d_calibConstSoA_
ConstHGCRecHitSoA d_calibConstSoA_
Definition: KernelManagerHGCalRecHit.h:53
KernelManagerHGCalRecHit
Definition: KernelManagerHGCalRecHit.h:33
HGCConditions.h
KernelManagerHGCalRecHit::h_uncalibSoA_
HGCUncalibRecHitSoA h_uncalibSoA_
Definition: KernelManagerHGCalRecHit.h:51
KernelManagerHGCalRecHit::~KernelManagerHGCalRecHit
~KernelManagerHGCalRecHit()
KernelManagerHGCalRecHit::nhits_
uint32_t nhits_
Definition: KernelManagerHGCalRecHit.h:47
HGCUncalibRecHitSoA
Definition: HGCUncalibRecHitSoA.h:6
KernelManagerHGCalRecHit::d_uncalibSoA_
HGCUncalibRecHitSoA d_uncalibSoA_
Definition: KernelManagerHGCalRecHit.h:51
KernelManagerHGCalRecHit::d_calibSoA_
HGCRecHitSoA d_calibSoA_
Definition: KernelManagerHGCalRecHit.h:52
KernelManagerHGCalRecHit::transfer_soa_to_host
void transfer_soa_to_host(const cudaStream_t &)
HGCRecHitSoA
Definition: HGCRecHitSoA.h:6
HGCRecHitSoA.h
cudaCheck.h
KernelManagerHGCalRecHit::run_kernels
void run_kernels(const KernelConstantData< HGCeeUncalibRecHitConstantData > *, const cudaStream_t &)
ConstHGCRecHitSoA
Definition: ConstHGCRecHitSoA.h:6
T
long double T
Definition: Basic3DVectorLD.h:48
relativeConstraints.value
value
Definition: relativeConstraints.py:53
KernelManagerHGCalRecHit::KernelManagerHGCalRecHit
KernelManagerHGCalRecHit()
or
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12
data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
KernelConstantData
Definition: KernelManagerHGCalRecHit.h:21
KernelManagerHGCalRecHit::pad_
uint32_t pad_
Definition: KernelManagerHGCalRecHit.h:48
KernelManagerHGCalRecHit::h_calibSoA_
HGCRecHitSoA h_calibSoA_
Definition: KernelManagerHGCalRecHit.h:52
KernelConstantData::KernelConstantData
KernelConstantData(T &data, HGCConstantVectorData &vdata)
Definition: KernelManagerHGCalRecHit.h:23