CMS 3D CMS Logo

EcalLaserAPDPNRatiosGPU.h
Go to the documentation of this file.
1 #ifndef CondFormats_EcalObjects_interface_EcalLaserAPDPNRatiosGPU_h
2 #define CondFormats_EcalObjects_interface_EcalLaserAPDPNRatiosGPU_h
3 
7 
8 #ifndef __CUDACC__
11 #endif // __CUDACC__
12 
14 public:
15  struct Product {
22  };
23 
24 #ifndef __CUDACC__
25 
26  //
28 
29  // will call dealloation for Product thru ~Product
30  ~EcalLaserAPDPNRatiosGPU() = default;
31 
32  // get device pointers
33  Product const &getProduct(cudaStream_t) const;
34 
35  //
36  static std::string name() { return std::string{"ecalLaserAPDPNRatiosGPU"}; }
37 
38 private:
39  // in the future, we need to arrange so to avoid this copy on the host
40  // store eb first then ee
41  std::vector<float, cms::cuda::HostAllocator<float>> p1_;
42  std::vector<float, cms::cuda::HostAllocator<float>> p2_;
43  std::vector<float, cms::cuda::HostAllocator<float>> p3_;
44 
45  std::vector<edm::TimeValue_t, cms::cuda::HostAllocator<edm::TimeValue_t>> t1_;
46  std::vector<edm::TimeValue_t, cms::cuda::HostAllocator<edm::TimeValue_t>> t2_;
47  std::vector<edm::TimeValue_t, cms::cuda::HostAllocator<edm::TimeValue_t>> t3_;
48 
50 
51 #endif // __CUDACC__
52 };
53 
54 #endif // CondFormats_EcalObjects_interface_EcalLaserAPDPNRatiosGPU_h
EcalLaserAPDPNRatiosGPU::EcalLaserAPDPNRatiosGPU
EcalLaserAPDPNRatiosGPU(EcalLaserAPDPNRatios const &)
Definition: EcalLaserAPDPNRatiosGPU.cc:6
HostAllocator.h
EcalLaserAPDPNRatiosGPU::Product::p3
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > p3
Definition: EcalLaserAPDPNRatiosGPU.h:18
EcalLaserAPDPNRatiosGPU::Product::t1
edm::propagate_const_array< cms::cuda::device::unique_ptr< edm::TimeValue_t[]> > t1
Definition: EcalLaserAPDPNRatiosGPU.h:19
EcalLaserAPDPNRatiosGPU::p2_
std::vector< float, cms::cuda::HostAllocator< float > > p2_
Definition: EcalLaserAPDPNRatiosGPU.h:42
EcalLaserAPDPNRatiosGPU::Product
Definition: EcalLaserAPDPNRatiosGPU.h:15
device_unique_ptr.h
EcalLaserAPDPNRatiosGPU
Definition: EcalLaserAPDPNRatiosGPU.h:13
cms::cuda::ESProduct
Definition: ESProduct.h:20
EcalLaserAPDPNRatiosGPU::t2_
std::vector< edm::TimeValue_t, cms::cuda::HostAllocator< edm::TimeValue_t > > t2_
Definition: EcalLaserAPDPNRatiosGPU.h:46
EcalLaserAPDPNRatiosGPU::~EcalLaserAPDPNRatiosGPU
~EcalLaserAPDPNRatiosGPU()=default
EcalLaserAPDPNRatiosGPU::name
static std::string name()
Definition: EcalLaserAPDPNRatiosGPU.h:36
EcalLaserAPDPNRatiosGPU::t1_
std::vector< edm::TimeValue_t, cms::cuda::HostAllocator< edm::TimeValue_t > > t1_
Definition: EcalLaserAPDPNRatiosGPU.h:45
EcalLaserAPDPNRatios.h
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::propagate_const_array
Definition: propagate_const_array.h:61
EcalLaserAPDPNRatiosGPU::p3_
std::vector< float, cms::cuda::HostAllocator< float > > p3_
Definition: EcalLaserAPDPNRatiosGPU.h:43
propagate_const_array.h
EcalLaserAPDPNRatiosGPU::Product::p2
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > p2
Definition: EcalLaserAPDPNRatiosGPU.h:17
EcalLaserAPDPNRatiosGPU::p1_
std::vector< float, cms::cuda::HostAllocator< float > > p1_
Definition: EcalLaserAPDPNRatiosGPU.h:41
EcalLaserAPDPNRatiosGPU::product_
cms::cuda::ESProduct< Product > product_
Definition: EcalLaserAPDPNRatiosGPU.h:49
EcalLaserAPDPNRatiosGPU::Product::t2
edm::propagate_const_array< cms::cuda::device::unique_ptr< edm::TimeValue_t[]> > t2
Definition: EcalLaserAPDPNRatiosGPU.h:20
EcalLaserAPDPNRatios
Definition: EcalLaserAPDPNRatios.h:14
EcalLaserAPDPNRatiosGPU::getProduct
const Product & getProduct(cudaStream_t) const
Definition: EcalLaserAPDPNRatiosGPU.cc:39
EcalLaserAPDPNRatiosGPU::Product::t3
edm::propagate_const_array< cms::cuda::device::unique_ptr< edm::TimeValue_t[]> > t3
Definition: EcalLaserAPDPNRatiosGPU.h:21
ESProduct.h
EcalLaserAPDPNRatiosGPU::Product::p1
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > p1
Definition: EcalLaserAPDPNRatiosGPU.h:16
EcalLaserAPDPNRatiosGPU::t3_
std::vector< edm::TimeValue_t, cms::cuda::HostAllocator< edm::TimeValue_t > > t3_
Definition: EcalLaserAPDPNRatiosGPU.h:47