CMS 3D CMS Logo

EcalPedestalsGPU.h
Go to the documentation of this file.
1 #ifndef CondFormats_EcalObjects_interface_EcalPedestalsGPU_h
2 #define CondFormats_EcalObjects_interface_EcalPedestalsGPU_h
3 
7 
8 #ifndef __CUDACC__
11 #endif // __CUDACC__
12 
14 public:
15  struct Product {
22  };
23 
24 #ifndef __CUDACC__
25 
26  // rearrange pedestals
28 
29  // will call dealloation for Product thru ~Product
30  ~EcalPedestalsGPU() = default;
31 
32  // get device pointers
33  Product const &getProduct(cudaStream_t) const;
34 
35  //
36  static std::string name() { return std::string{"ecalPedestalsGPU"}; }
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>> mean_x12_;
42  std::vector<float, cms::cuda::HostAllocator<float>> rms_x12_;
43  std::vector<float, cms::cuda::HostAllocator<float>> mean_x6_;
44  std::vector<float, cms::cuda::HostAllocator<float>> rms_x6_;
45  std::vector<float, cms::cuda::HostAllocator<float>> mean_x1_;
46  std::vector<float, cms::cuda::HostAllocator<float>> rms_x1_;
47 
49 #endif // __CUDACC__
50 };
51 
52 #endif // CondFormats_EcalObjects_interface_EcalPedestalsGPU_h
EcalPedestalsGPU::product_
cms::cuda::ESProduct< Product > product_
Definition: EcalPedestalsGPU.h:48
EcalPedestalsGPU::~EcalPedestalsGPU
~EcalPedestalsGPU()=default
EcalPedestals.h
HostAllocator.h
device_unique_ptr.h
EcalCondObjectContainer
Definition: EcalCondObjectContainer.h:13
EcalPedestalsGPU::EcalPedestalsGPU
EcalPedestalsGPU(EcalPedestals const &)
Definition: EcalPedestalsGPU.cc:6
EcalPedestalsGPU::Product::rms_x1
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > rms_x1
Definition: EcalPedestalsGPU.h:21
EcalPedestalsGPU::mean_x12_
std::vector< float, cms::cuda::HostAllocator< float > > mean_x12_
Definition: EcalPedestalsGPU.h:41
EcalPedestalsGPU::rms_x6_
std::vector< float, cms::cuda::HostAllocator< float > > rms_x6_
Definition: EcalPedestalsGPU.h:44
cms::cuda::ESProduct
Definition: ESProduct.h:20
EcalPedestalsGPU::getProduct
const Product & getProduct(cudaStream_t) const
Definition: EcalPedestalsGPU.cc:37
EcalPedestalsGPU
Definition: EcalPedestalsGPU.h:13
EcalPedestalsGPU::mean_x1_
std::vector< float, cms::cuda::HostAllocator< float > > mean_x1_
Definition: EcalPedestalsGPU.h:45
EcalPedestalsGPU::Product::mean_x6
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > mean_x6
Definition: EcalPedestalsGPU.h:17
EcalPedestalsGPU::name
static std::string name()
Definition: EcalPedestalsGPU.h:36
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::propagate_const_array
Definition: propagate_const_array.h:61
EcalPedestalsGPU::Product::mean_x12
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > mean_x12
Definition: EcalPedestalsGPU.h:16
propagate_const_array.h
EcalPedestalsGPU::mean_x6_
std::vector< float, cms::cuda::HostAllocator< float > > mean_x6_
Definition: EcalPedestalsGPU.h:43
EcalPedestalsGPU::Product
Definition: EcalPedestalsGPU.h:15
EcalPedestalsGPU::Product::rms_x12
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > rms_x12
Definition: EcalPedestalsGPU.h:19
EcalPedestalsGPU::Product::mean_x1
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > mean_x1
Definition: EcalPedestalsGPU.h:18
ESProduct.h
EcalPedestalsGPU::rms_x1_
std::vector< float, cms::cuda::HostAllocator< float > > rms_x1_
Definition: EcalPedestalsGPU.h:46
EcalPedestalsGPU::Product::rms_x6
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > rms_x6
Definition: EcalPedestalsGPU.h:20
EcalPedestalsGPU::rms_x12_
std::vector< float, cms::cuda::HostAllocator< float > > rms_x12_
Definition: EcalPedestalsGPU.h:42