diff --git a/CUDADataFormats/HcalDigi/BuildFile.xml b/CUDADataFormats/HcalDigi/BuildFile.xml
deleted file mode 100644
index 2e8ab2fe58fcf..0000000000000
--- a/CUDADataFormats/HcalDigi/BuildFile.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/CUDADataFormats/HcalDigi/interface/DigiCollection.h b/CUDADataFormats/HcalDigi/interface/DigiCollection.h
deleted file mode 100644
index e2f4bf0848e94..0000000000000
--- a/CUDADataFormats/HcalDigi/interface/DigiCollection.h
+++ /dev/null
@@ -1,160 +0,0 @@
-#ifndef CUDADataFormats_HcalDigi_interface_DigiCollection_h
-#define CUDADataFormats_HcalDigi_interface_DigiCollection_h
-
-#include "CUDADataFormats/CaloCommon/interface/Common.h"
-
-namespace hcal {
-
- // FLAVOR_HE_QIE11 = 1; Phase1 upgrade
- struct Flavor1 {
- static constexpr int WORDS_PER_SAMPLE = 1;
- static constexpr int SAMPLES_PER_WORD = 1;
- static constexpr int HEADER_WORDS = 1;
-
- static constexpr uint8_t adc(uint16_t const* const sample_start) { return (*sample_start & 0xff); }
- static constexpr uint8_t tdc(uint16_t const* const sample_start) { return (*sample_start >> 8) & 0x3f; }
- static constexpr uint8_t soibit(uint16_t const* const sample_start) { return (*sample_start >> 14) & 0x1; }
- };
-
- // FLAVOR_HB_QIE11 = 3; Phase1 upgrade
- struct Flavor3 {
- static constexpr int WORDS_PER_SAMPLE = 1;
- static constexpr int SAMPLES_PER_WORD = 1;
- static constexpr int HEADER_WORDS = 1;
-
- static constexpr uint8_t adc(uint16_t const* const sample_start) { return (*sample_start & 0xff); }
- static constexpr uint8_t tdc(uint16_t const* const sample_start) { return ((*sample_start >> 8) & 0x3); }
- static constexpr uint8_t soibit(uint16_t const* const sample_start) { return ((*sample_start >> 14) & 0x1); }
- static constexpr uint8_t capid(uint16_t const* const sample_start) { return ((*sample_start >> 10) & 0x3); }
- };
-
- // FLAVOR_HB_QIE10 = 5; Phase0
- struct Flavor5 {
- static constexpr float WORDS_PER_SAMPLE = 0.5;
- static constexpr int SAMPLES_PER_WORD = 2;
- static constexpr int HEADER_WORDS = 1;
-
- static constexpr uint8_t adc(uint16_t const* const sample_start, uint8_t const shifter) {
- return ((*sample_start >> shifter * 8) & 0x7f);
- }
- };
-
- template
- constexpr uint8_t capid_for_sample(uint16_t const* const dfstart, uint32_t const sample) {
- auto const capid_first = (*dfstart >> 8) & 0x3;
- return (capid_first + sample) & 0x3; // same as % 4
- }
-
- template <>
- constexpr uint8_t capid_for_sample(uint16_t const* const dfstart, uint32_t const sample) {
- return Flavor3::capid(dfstart + Flavor3::HEADER_WORDS + sample * Flavor3::WORDS_PER_SAMPLE);
- }
-
- template
- constexpr uint8_t soibit_for_sample(uint16_t const* const dfstart, uint32_t const sample) {
- return Flavor::soibit(dfstart + Flavor::HEADER_WORDS + sample * Flavor::WORDS_PER_SAMPLE);
- }
-
- template
- constexpr uint8_t adc_for_sample(uint16_t const* const dfstart, uint32_t const sample) {
- return Flavor::adc(dfstart + Flavor::HEADER_WORDS + sample * Flavor::WORDS_PER_SAMPLE);
- }
-
- template
- constexpr uint8_t tdc_for_sample(uint16_t const* const dfstart, uint32_t const sample) {
- return Flavor::tdc(dfstart + Flavor::HEADER_WORDS + sample * Flavor::WORDS_PER_SAMPLE);
- }
-
- template <>
- constexpr uint8_t adc_for_sample(uint16_t const* const dfstart, uint32_t const sample) {
- // avoid using WORDS_PER_SAMPLE and simply shift
- return Flavor5::adc(dfstart + Flavor5::HEADER_WORDS + (sample >> 1), sample % 2);
- }
-
- template
- constexpr uint32_t compute_stride(uint32_t const nsamples) {
- return static_cast(nsamples * Flavor::WORDS_PER_SAMPLE) + Flavor::HEADER_WORDS;
- }
-
- template
- constexpr uint32_t compute_nsamples(uint32_t const nwords) {
- if constexpr (Flavor::SAMPLES_PER_WORD >= 1)
- return (nwords - Flavor::HEADER_WORDS) * Flavor::SAMPLES_PER_WORD;
- else
- return (nwords - Flavor::HEADER_WORDS) / Flavor::WORDS_PER_SAMPLE;
- }
-
- //
- template
- struct DigiCollectionBase : public ::calo::common::AddSize {
- DigiCollectionBase() = default;
- DigiCollectionBase(DigiCollectionBase const&) = default;
- DigiCollectionBase& operator=(DigiCollectionBase const&) = default;
-
- DigiCollectionBase(DigiCollectionBase&&) = default;
- DigiCollectionBase& operator=(DigiCollectionBase&&) = default;
-
- template
- typename std::enable_if::value, void>::type resize(std::size_t size) {
- ids.resize(size);
- data.resize(size * stride);
- }
-
- template
- typename std::enable_if::value, void>::type reserve(std::size_t size) {
- ids.reserve(size);
- data.reserve(size * stride);
- }
-
- template
- typename std::enable_if::value, void>::type clear() {
- ids.clear();
- data.clear();
- }
-
- typename StoragePolicy::template StorageSelector::type ids;
- typename StoragePolicy::template StorageSelector::type data;
- uint32_t stride{0};
- };
-
- template
- struct DigiCollection : public DigiCollectionBase {
- using DigiCollectionBase::DigiCollectionBase;
- };
-
- // NOTE: base ctors will not be available
- template
- struct DigiCollection : public DigiCollectionBase {
- DigiCollection() = default;
-
- DigiCollection(DigiCollection const&) = default;
- DigiCollection& operator=(DigiCollection const&) = default;
-
- DigiCollection(DigiCollection&&) = default;
- DigiCollection& operator=(DigiCollection&&) = default;
-
- template
- typename std::enable_if::value, void>::type resize(std::size_t size) {
- DigiCollectionBase::resize(size);
- npresamples.resize(size);
- }
-
- template
- typename std::enable_if::value, void>::type reserve(std::size_t size) {
- DigiCollectionBase::reserve(size);
- npresamples.reserve(size);
- }
-
- template
- typename std::enable_if::value, void>::type clear() {
- DigiCollectionBase::clear();
- npresamples.clear();
- }
-
- // add npresamples member
- typename StoragePolicy::template StorageSelector::type npresamples;
- };
-
-} // namespace hcal
-
-#endif // CUDADataFormats_HcalDigi_interface_DigiCollection_h
diff --git a/CUDADataFormats/HcalDigi/src/classes.h b/CUDADataFormats/HcalDigi/src/classes.h
deleted file mode 100644
index 8c4a20318928e..0000000000000
--- a/CUDADataFormats/HcalDigi/src/classes.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#include "CUDADataFormats/Common/interface/Product.h"
-#include "CUDADataFormats/HcalDigi/interface/DigiCollection.h"
-#include "DataFormats/Common/interface/Wrapper.h"
diff --git a/CUDADataFormats/HcalDigi/src/classes_def.xml b/CUDADataFormats/HcalDigi/src/classes_def.xml
deleted file mode 100644
index 7bb2d7f39c63a..0000000000000
--- a/CUDADataFormats/HcalDigi/src/classes_def.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/CUDADataFormats/HcalRecHitSoA/BuildFile.xml b/CUDADataFormats/HcalRecHitSoA/BuildFile.xml
deleted file mode 100644
index 245701de5fdb0..0000000000000
--- a/CUDADataFormats/HcalRecHitSoA/BuildFile.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
diff --git a/CUDADataFormats/HcalRecHitSoA/interface/RecHitCollection.h b/CUDADataFormats/HcalRecHitSoA/interface/RecHitCollection.h
deleted file mode 100644
index 424b2c0813b4c..0000000000000
--- a/CUDADataFormats/HcalRecHitSoA/interface/RecHitCollection.h
+++ /dev/null
@@ -1,38 +0,0 @@
-#ifndef CUDADataFormats_HcalRecHitCollectionSoA_interface_RecHitCollection_h
-#define CUDADataFormats_HcalRecHitCollectionSoA_interface_RecHitCollection_h
-
-#include
-
-#include "CUDADataFormats/CaloCommon/interface/Common.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-
-namespace hcal {
-
- template
- struct RecHitCollection : public ::calo::common::AddSize {
- RecHitCollection() = default;
- RecHitCollection(const RecHitCollection&) = default;
- RecHitCollection& operator=(const RecHitCollection&) = default;
-
- RecHitCollection(RecHitCollection&&) = default;
- RecHitCollection& operator=(RecHitCollection&&) = default;
-
- typename StoragePolicy::template StorageSelector::type energy;
- typename StoragePolicy::template StorageSelector::type chi2;
- typename StoragePolicy::template StorageSelector::type energyM0;
- typename StoragePolicy::template StorageSelector::type timeM0;
- typename StoragePolicy::template StorageSelector::type did;
-
- template
- typename std::enable_if::value, void>::type resize(size_t size) {
- energy.resize(size);
- chi2.resize(size);
- energyM0.resize(size);
- timeM0.resize(size);
- did.resize(size);
- }
- };
-
-} // namespace hcal
-
-#endif // RecoLocalCalo_HcalRecAlgos_interface_RecHitCollection_h
diff --git a/CUDADataFormats/HcalRecHitSoA/src/classes.h b/CUDADataFormats/HcalRecHitSoA/src/classes.h
deleted file mode 100644
index a13782165c413..0000000000000
--- a/CUDADataFormats/HcalRecHitSoA/src/classes.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#include "CUDADataFormats/Common/interface/Product.h"
-#include "CUDADataFormats/HcalRecHitSoA/interface/RecHitCollection.h"
-#include "DataFormats/Common/interface/Wrapper.h"
diff --git a/CUDADataFormats/HcalRecHitSoA/src/classes_def.xml b/CUDADataFormats/HcalRecHitSoA/src/classes_def.xml
deleted file mode 100644
index 2ae114c84b945..0000000000000
--- a/CUDADataFormats/HcalRecHitSoA/src/classes_def.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/CondFormats/DataRecord/interface/HcalCombinedRecordsGPU.h b/CondFormats/DataRecord/interface/HcalCombinedRecordsGPU.h
deleted file mode 100644
index c802c599ed4c5..0000000000000
--- a/CondFormats/DataRecord/interface/HcalCombinedRecordsGPU.h
+++ /dev/null
@@ -1,19 +0,0 @@
-#ifndef CondFormats_DataRecord_interface_HcalCombinedRecordsGPU_h
-#define CondFormats_DataRecord_interface_HcalCombinedRecordsGPU_h
-
-#include "CondFormats/DataRecord/interface/HcalPedestalWidthsRcd.h"
-#include "CondFormats/DataRecord/interface/HcalPedestalsRcd.h"
-#include "CondFormats/DataRecord/interface/HcalQIEDataRcd.h"
-#include "CondFormats/DataRecord/interface/HcalQIETypesRcd.h"
-#include "FWCore/Framework/interface/DependentRecordImplementation.h"
-
-template
-class HcalCombinedRecord : public edm::eventsetup::DependentRecordImplementation,
- edm::mpl::Vector> {};
-
-using HcalConvertedPedestalsRcd = HcalCombinedRecord;
-
-using HcalConvertedPedestalWidthsRcd =
- HcalCombinedRecord;
-
-#endif // CondFormats_DataRecord_interface_HcalCombinedRecordsGPU_h
diff --git a/CondFormats/DataRecord/src/HcalCombinedRecordsGPU.cc b/CondFormats/DataRecord/src/HcalCombinedRecordsGPU.cc
deleted file mode 100644
index 6da5efbef4f20..0000000000000
--- a/CondFormats/DataRecord/src/HcalCombinedRecordsGPU.cc
+++ /dev/null
@@ -1,5 +0,0 @@
-#include "CondFormats/DataRecord/interface/HcalCombinedRecordsGPU.h"
-#include "FWCore/Framework/interface/eventsetuprecord_registration_macro.h"
-
-EVENTSETUP_RECORD_REG(HcalConvertedPedestalsRcd);
-EVENTSETUP_RECORD_REG(HcalConvertedPedestalWidthsRcd);
diff --git a/CondFormats/HcalObjects/BuildFile.xml b/CondFormats/HcalObjects/BuildFile.xml
index 34f054dc82699..f3e01e6d7499c 100644
--- a/CondFormats/HcalObjects/BuildFile.xml
+++ b/CondFormats/HcalObjects/BuildFile.xml
@@ -10,12 +10,6 @@
-
-
-
-
-
-
diff --git a/CondFormats/HcalObjects/interface/HcalChannelQualityGPU.h b/CondFormats/HcalObjects/interface/HcalChannelQualityGPU.h
deleted file mode 100644
index 4abdcc3e52c82..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalChannelQualityGPU.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalChannelQualityGPU_h
-#define CondFormats_HcalObjects_interface_HcalChannelQualityGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalChannelQuality.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalChannelQualityGPU {
-public:
- struct Product {
- edm::propagate_const_array> status;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalChannelQualityGPU(HcalChannelQuality const &);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalChannelQualityGPU() = default;
-
- // get device pointers
- Product const &getProduct(cudaStream_t) const;
-
-private:
- uint64_t totalChannels_;
- std::vector> status_;
-
- cms::cuda::ESProduct product_;
-#endif // __CUDACC__
-};
-
-#endif // RecoLocalCalo_HcalRecAlgos_interface_HcalChannelQualityGPU_h
diff --git a/CondFormats/HcalObjects/interface/HcalConvertedEffectivePedestalWidthsGPU.h b/CondFormats/HcalObjects/interface/HcalConvertedEffectivePedestalWidthsGPU.h
deleted file mode 100644
index b2232d5d647a2..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalConvertedEffectivePedestalWidthsGPU.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalConvertedEffectivePedestalWidthsGPU_h
-#define CondFormats_HcalObjects_interface_HcalConvertedEffectivePedestalWidthsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalConvertedPedestalWidthsGPU.h"
-
-// similar to converted effective pedestals
-class HcalConvertedEffectivePedestalWidthsGPU final : public HcalConvertedPedestalWidthsGPU {
-public:
- using HcalConvertedPedestalWidthsGPU::HcalConvertedPedestalWidthsGPU;
-};
-
-#endif // RecoLocalCalo_HcalRecAlgos_interface_HcalConvertedEffectivePedestalWidthsGPU_h
diff --git a/CondFormats/HcalObjects/interface/HcalConvertedEffectivePedestalsGPU.h b/CondFormats/HcalObjects/interface/HcalConvertedEffectivePedestalsGPU.h
deleted file mode 100644
index 311485ac7275a..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalConvertedEffectivePedestalsGPU.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalConvertedEffectivePedestalsGPU_h
-#define CondFormats_HcalObjects_interface_HcalConvertedEffectivePedestalsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalConvertedPedestalsGPU.h"
-
-// Separate access to effective and regular pedestals
-// No need to transfer/rearrange effective or vice versa if they are not going
-// to be used
-class HcalConvertedEffectivePedestalsGPU final : public HcalConvertedPedestalsGPU {
-public:
- using HcalConvertedPedestalsGPU::HcalConvertedPedestalsGPU;
-};
-
-#endif // RecoLocalCalo_HcalRecAlgos_interface_HcalConvertedEffectivePedestalsGPU_h
diff --git a/CondFormats/HcalObjects/interface/HcalConvertedPedestalWidthsGPU.h b/CondFormats/HcalObjects/interface/HcalConvertedPedestalWidthsGPU.h
deleted file mode 100644
index bf212265fe5ae..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalConvertedPedestalWidthsGPU.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalConvertedPedestalWidthsGPU_h
-#define CondFormats_HcalObjects_interface_HcalConvertedPedestalWidthsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalPedestalWidths.h"
-#include "CondFormats/HcalObjects/interface/HcalPedestals.h"
-#include "CondFormats/HcalObjects/interface/HcalQIEData.h"
-#include "CondFormats/HcalObjects/interface/HcalQIETypes.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalConvertedPedestalWidthsGPU {
-public:
- struct Product {
- edm::propagate_const_array> values;
- };
-
-#ifndef __CUDACC__
- // order matters!
- HcalConvertedPedestalWidthsGPU(HcalPedestals const&,
- HcalPedestalWidths const&,
- HcalQIEData const&,
- HcalQIETypes const&);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalConvertedPedestalWidthsGPU() = default;
-
- // get device pointers
- Product const& getProduct(cudaStream_t) const;
-
-private:
- uint64_t totalChannels_;
- std::vector> values_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalConvertedPedestalsGPU.h b/CondFormats/HcalObjects/interface/HcalConvertedPedestalsGPU.h
deleted file mode 100644
index 84824fbeb1d2a..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalConvertedPedestalsGPU.h
+++ /dev/null
@@ -1,42 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalConvertedPedestalsGPU_h
-#define CondFormats_HcalObjects_interface_HcalConvertedPedestalsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalPedestals.h"
-#include "CondFormats/HcalObjects/interface/HcalQIEData.h"
-#include "CondFormats/HcalObjects/interface/HcalQIETypes.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalConvertedPedestalsGPU {
-public:
- struct Product {
- edm::propagate_const_array> values;
- };
-
-#ifndef __CUDACC__
- // order matters!
- HcalConvertedPedestalsGPU(HcalPedestals const&, HcalQIEData const&, HcalQIETypes const&);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalConvertedPedestalsGPU() = default;
-
- // get device pointers
- Product const& getProduct(cudaStream_t) const;
-
- uint32_t offsetForHashes() const { return offsetForHashes_; }
-
-protected:
- uint64_t totalChannels_;
- uint32_t offsetForHashes_;
- std::vector> values_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalGainWidthsGPU.h b/CondFormats/HcalObjects/interface/HcalGainWidthsGPU.h
deleted file mode 100644
index 4851239f171df..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalGainWidthsGPU.h
+++ /dev/null
@@ -1,40 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalGainWidthsGPU_h
-#define CondFormats_HcalObjects_interface_HcalGainWidthsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalGainWidths.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalGainWidthsGPU {
-public:
- struct Product {
- edm::propagate_const_array> value0;
- edm::propagate_const_array> value1;
- edm::propagate_const_array> value2;
- edm::propagate_const_array> value3;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalGainWidthsGPU(HcalGainWidths const &);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalGainWidthsGPU() = default;
-
- // get device pointers
- Product const &getProduct(cudaStream_t) const;
-
-private:
- uint64_t totalChannels_;
- std::vector> value0_, value1_, value2_, value3_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalGainsGPU.h b/CondFormats/HcalObjects/interface/HcalGainsGPU.h
deleted file mode 100644
index 030146ffc7cdf..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalGainsGPU.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalGainsGPU_h
-#define CondFormats_HcalObjects_interface_HcalGainsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalGains.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalGainsGPU {
-public:
- struct Product {
- edm::propagate_const_array> values;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalGainsGPU(HcalGains const&);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalGainsGPU() = default;
-
- // get device pointers
- Product const& getProduct(cudaStream_t) const;
-
-private:
- uint64_t totalChannels_;
- std::vector> values_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalLUTCorrsGPU.h b/CondFormats/HcalObjects/interface/HcalLUTCorrsGPU.h
deleted file mode 100644
index 699dfb9706147..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalLUTCorrsGPU.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalLUTCorrsGPU_h
-#define CondFormats_HcalObjects_interface_HcalLUTCorrsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalLUTCorrs.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalLUTCorrsGPU {
-public:
- struct Product {
- edm::propagate_const_array> value;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalLUTCorrsGPU(HcalLUTCorrs const&);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalLUTCorrsGPU() = default;
-
- // get device pointers
- Product const& getProduct(cudaStream_t) const;
-
-private:
- std::vector> value_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalPedestalWidthsGPU.h b/CondFormats/HcalObjects/interface/HcalPedestalWidthsGPU.h
deleted file mode 100644
index b39ed2545c5e2..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalPedestalWidthsGPU.h
+++ /dev/null
@@ -1,71 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalPedestalWidthsGPU_h
-#define CondFormats_HcalObjects_interface_HcalPedestalWidthsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalPedestalWidths.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalPedestalWidthsGPU {
-public:
- struct Product {
- edm::propagate_const_array> sigma00;
- edm::propagate_const_array> sigma01;
- edm::propagate_const_array> sigma02;
- edm::propagate_const_array> sigma03;
- edm::propagate_const_array> sigma10;
- edm::propagate_const_array> sigma11;
- edm::propagate_const_array> sigma12;
- edm::propagate_const_array> sigma13;
- edm::propagate_const_array> sigma20;
- edm::propagate_const_array> sigma21;
- edm::propagate_const_array> sigma22;
- edm::propagate_const_array> sigma23;
- edm::propagate_const_array> sigma30;
- edm::propagate_const_array> sigma31;
- edm::propagate_const_array> sigma32;
- edm::propagate_const_array> sigma33;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalPedestalWidthsGPU(HcalPedestalWidths const&);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalPedestalWidthsGPU() = default;
-
- // get device pointers
- Product const& getProduct(cudaStream_t) const;
-
- // as in cpu version
- bool unitIsADC() const { return unitIsADC_; }
-
-private:
- bool unitIsADC_;
- uint64_t totalChannels_;
- std::vector> sigma00_;
- std::vector> sigma01_;
- std::vector> sigma02_;
- std::vector> sigma03_;
- std::vector> sigma10_;
- std::vector> sigma11_;
- std::vector> sigma12_;
- std::vector> sigma13_;
- std::vector> sigma20_;
- std::vector> sigma21_;
- std::vector> sigma22_;
- std::vector> sigma23_;
- std::vector> sigma30_;
- std::vector> sigma31_;
- std::vector> sigma32_;
- std::vector> sigma33_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalPedestalsGPU.h b/CondFormats/HcalObjects/interface/HcalPedestalsGPU.h
deleted file mode 100644
index 957f6f88ef2fa..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalPedestalsGPU.h
+++ /dev/null
@@ -1,46 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalPedestalsGPU_h
-#define CondFormats_HcalObjects_interface_HcalPedestalsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalPedestals.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalPedestalsGPU {
-public:
- struct Product {
- edm::propagate_const_array> values;
- edm::propagate_const_array> widths;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalPedestalsGPU(HcalPedestals const &);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalPedestalsGPU() = default;
-
- // get device pointers
- Product const &getProduct(cudaStream_t) const;
-
- // as in cpu version
- bool unitIsADC() const { return unitIsADC_; }
-
- uint32_t offsetForHashes() const { return offsetForHashes_; }
-
-private:
- bool unitIsADC_;
- uint64_t totalChannels_;
- uint32_t offsetForHashes_;
- std::vector> values_;
- std::vector> widths_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalQIECodersGPU.h b/CondFormats/HcalObjects/interface/HcalQIECodersGPU.h
deleted file mode 100644
index 0ed389f9c9cca..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalQIECodersGPU.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalQIECodersGPU_h
-#define CondFormats_HcalObjects_interface_HcalQIECodersGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalQIEData.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalQIECodersGPU {
-public:
- static constexpr uint32_t numValuesPerChannel = 16;
-
- struct Product {
- edm::propagate_const_array> offsets;
- edm::propagate_const_array> slopes;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalQIECodersGPU(HcalQIEData const &);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalQIECodersGPU() = default;
-
- // get device pointers
- Product const &getProduct(cudaStream_t) const;
-
-private:
- uint64_t totalChannels_;
- std::vector> offsets_;
- std::vector> slopes_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalQIETypesGPU.h b/CondFormats/HcalObjects/interface/HcalQIETypesGPU.h
deleted file mode 100644
index cdb49764c9145..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalQIETypesGPU.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalQIETypesGPU_h
-#define CondFormats_HcalObjects_interface_HcalQIETypesGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalQIETypes.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalQIETypesGPU {
-public:
- struct Product {
- edm::propagate_const_array> values;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalQIETypesGPU(HcalQIETypes const&);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalQIETypesGPU() = default;
-
- // get device pointers
- Product const& getProduct(cudaStream_t) const;
-
-private:
- std::vector> values_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalRecoParamsGPU.h b/CondFormats/HcalObjects/interface/HcalRecoParamsGPU.h
deleted file mode 100644
index f85d26a431ebb..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalRecoParamsGPU.h
+++ /dev/null
@@ -1,40 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalRecoParamsGPU_h
-#define CondFormats_HcalObjects_interface_HcalRecoParamsGPU_h
-
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalRecoParams;
-
-class HcalRecoParamsGPU {
-public:
- struct Product {
- edm::propagate_const_array> param1;
- edm::propagate_const_array> param2;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalRecoParamsGPU(HcalRecoParams const&);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalRecoParamsGPU() = default;
-
- // get device pointers
- Product const& getProduct(cudaStream_t) const;
-
-private:
- uint64_t totalChannels_; // hb + he
- std::vector> param1_;
- std::vector> param2_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalRespCorrsGPU.h b/CondFormats/HcalObjects/interface/HcalRespCorrsGPU.h
deleted file mode 100644
index 6bc570ab52575..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalRespCorrsGPU.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalRespCorrsGPU_h
-#define CondFormats_HcalObjects_interface_HcalRespCorrsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalRespCorrs.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalRespCorrsGPU {
-public:
- struct Product {
- edm::propagate_const_array> values;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalRespCorrsGPU(HcalRespCorrs const&);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalRespCorrsGPU() = default;
-
- // get device pointers
- Product const& getProduct(cudaStream_t) const;
-
-private:
- std::vector> values_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalSiPMCharacteristicsGPU.h b/CondFormats/HcalObjects/interface/HcalSiPMCharacteristicsGPU.h
deleted file mode 100644
index 9615d8011a256..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalSiPMCharacteristicsGPU.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalSiPMCharacteristicsGPU_h
-#define CondFormats_HcalObjects_interface_HcalSiPMCharacteristicsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalSiPMCharacteristics.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalSiPMCharacteristicsGPU {
-public:
- struct Product {
- edm::propagate_const_array> pixels;
- edm::propagate_const_array> parLin1;
- edm::propagate_const_array> parLin2;
- edm::propagate_const_array> parLin3;
- edm::propagate_const_array> crossTalk;
- edm::propagate_const_array> auxi1;
- edm::propagate_const_array> auxi2;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalSiPMCharacteristicsGPU(HcalSiPMCharacteristics const &);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalSiPMCharacteristicsGPU() = default;
-
- // get device pointers
- Product const &getProduct(cudaStream_t) const;
-
-private:
- std::vector> pixels_, auxi1_;
- std::vector> parLin1_, parLin2_, parLin3_, crossTalk_, auxi2_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/interface/HcalSiPMParametersGPU.h b/CondFormats/HcalObjects/interface/HcalSiPMParametersGPU.h
deleted file mode 100644
index 10a69f70defa2..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalSiPMParametersGPU.h
+++ /dev/null
@@ -1,42 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalSiPMParametersGPU_h
-#define CondFormats_HcalObjects_interface_HcalSiPMParametersGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalSiPMParameters.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalSiPMParametersGPU {
-public:
- struct Product {
- edm::propagate_const_array> type;
- edm::propagate_const_array> auxi1;
- edm::propagate_const_array> fcByPE;
- edm::propagate_const_array> darkCurrent;
- edm::propagate_const_array> auxi2;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalSiPMParametersGPU(HcalSiPMParameters const &);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalSiPMParametersGPU() = default;
-
- // get device pointers
- Product const &getProduct(cudaStream_t) const;
-
-private:
- uint64_t totalChannels_;
- std::vector> type_, auxi1_;
- std::vector> fcByPE_, darkCurrent_, auxi2_;
-
- cms::cuda::ESProduct product_;
-#endif // __CUDACC__
-};
-
-#endif // RecoLocalCalo_HcalRecAlgos_interface_HcalSiPMParametersGPU_h
diff --git a/CondFormats/HcalObjects/interface/HcalTimeCorrsGPU.h b/CondFormats/HcalObjects/interface/HcalTimeCorrsGPU.h
deleted file mode 100644
index bac5be06198d4..0000000000000
--- a/CondFormats/HcalObjects/interface/HcalTimeCorrsGPU.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifndef CondFormats_HcalObjects_interface_HcalTimeCorrsGPU_h
-#define CondFormats_HcalObjects_interface_HcalTimeCorrsGPU_h
-
-#include "CondFormats/HcalObjects/interface/HcalTimeCorrs.h"
-#include "FWCore/Utilities/interface/propagate_const_array.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-
-#ifndef __CUDACC__
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDACore/interface/ESProduct.h"
-#endif
-
-class HcalTimeCorrsGPU {
-public:
- struct Product {
- edm::propagate_const_array> value;
- };
-
-#ifndef __CUDACC__
- // rearrange reco params
- HcalTimeCorrsGPU(HcalTimeCorrs const&);
-
- // will trigger deallocation of Product thru ~Product
- ~HcalTimeCorrsGPU() = default;
-
- // get device pointers
- Product const& getProduct(cudaStream_t) const;
-
-private:
- std::vector> value_;
-
- cms::cuda::ESProduct product_;
-#endif
-};
-
-#endif
diff --git a/CondFormats/HcalObjects/src/HcalChannelQualityGPU.cc b/CondFormats/HcalObjects/src/HcalChannelQualityGPU.cc
deleted file mode 100644
index 103dcdc86c26a..0000000000000
--- a/CondFormats/HcalObjects/src/HcalChannelQualityGPU.cc
+++ /dev/null
@@ -1,39 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalChannelQuality.h"
-#include "CondFormats/HcalObjects/interface/HcalChannelQualityGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalChannelQualityGPU::HcalChannelQualityGPU(HcalChannelQuality const& quality)
- : totalChannels_{quality.getAllContainers()[0].second.size() + quality.getAllContainers()[1].second.size()},
- status_(totalChannels_) {
- auto const containers = quality.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- status_[i] = barrelValues[i].getValue();
- }
-
- // fill in ee
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- status_[i + offset] = endcapValues[i].getValue();
- }
-}
-
-HcalChannelQualityGPU::Product const& HcalChannelQualityGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalChannelQualityGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.status = cms::cuda::make_device_unique(status_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.status, status_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalChannelQualityGPU);
diff --git a/CondFormats/HcalObjects/src/HcalConvertedEffectivePedestalWidthsGPU.cc b/CondFormats/HcalObjects/src/HcalConvertedEffectivePedestalWidthsGPU.cc
deleted file mode 100644
index dfc9a9e099ea1..0000000000000
--- a/CondFormats/HcalObjects/src/HcalConvertedEffectivePedestalWidthsGPU.cc
+++ /dev/null
@@ -1,4 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalConvertedEffectivePedestalWidthsGPU.h"
-
-#include "FWCore/Utilities/interface/typelookup.h"
-TYPELOOKUP_DATA_REG(HcalConvertedEffectivePedestalWidthsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalConvertedEffectivePedestalsGPU.cc b/CondFormats/HcalObjects/src/HcalConvertedEffectivePedestalsGPU.cc
deleted file mode 100644
index 92cb76edc6d6f..0000000000000
--- a/CondFormats/HcalObjects/src/HcalConvertedEffectivePedestalsGPU.cc
+++ /dev/null
@@ -1,4 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalConvertedEffectivePedestalsGPU.h"
-
-#include "FWCore/Utilities/interface/typelookup.h"
-TYPELOOKUP_DATA_REG(HcalConvertedEffectivePedestalsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalConvertedPedestalWidthsGPU.cc b/CondFormats/HcalObjects/src/HcalConvertedPedestalWidthsGPU.cc
deleted file mode 100644
index c03bef2e3439b..0000000000000
--- a/CondFormats/HcalObjects/src/HcalConvertedPedestalWidthsGPU.cc
+++ /dev/null
@@ -1,150 +0,0 @@
-#include
-
-#include "CondFormats/HcalObjects/interface/HcalConvertedPedestalWidthsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-namespace {
- float convert(
- float const value, float const width, int const i, HcalQIECoder const& coder, HcalQIEShape const& shape) {
- float const y = value;
- float const x = width;
- unsigned const x1 = static_cast(std::floor(y));
- unsigned const x2 = static_cast(std::floor(y + 1.));
- unsigned iun = static_cast(i);
- float const y1 = coder.charge(shape, x1, iun);
- float const y2 = coder.charge(shape, x2, iun);
- return (y2 - y1) * x;
- }
-} // namespace
-
-// FIXME: add proper getters to conditions
-HcalConvertedPedestalWidthsGPU::HcalConvertedPedestalWidthsGPU(HcalPedestals const& pedestals,
- HcalPedestalWidths const& pedestalWidths,
- HcalQIEData const& qieData,
- HcalQIETypes const& qieTypes)
- : totalChannels_{pedestals.getAllContainers()[0].second.size() + pedestals.getAllContainers()[1].second.size()},
- values_(totalChannels_ * 4) {
-#ifdef HCAL_MAHI_CPUDEBUG
- std::cout << "hello from converted pedestal widths" << std::endl;
- std::cout << "pedestals HB values = " << pedestals.getAllContainers()[0].second.size()
- << " HE values = " << pedestals.getAllContainers()[1].second.size() << std::endl;
- std::cout << "qiedata HB values = " << qieData.getAllContainers()[0].second.size()
- << " HE values = " << qieData.getAllContainers()[1].second.size() << std::endl;
-#endif
-
- // retrieve all collections
- auto const pedestalsAll = pedestals.getAllContainers();
- auto const pedestalWidthsAll = pedestalWidths.getAllContainers();
- auto const qieDataAll = qieData.getAllContainers();
- auto const qieTypesAll = qieTypes.getAllContainers();
-
- // have to convert to fc if stored in adc
- auto const unitIsADC = pedestals.isADC();
-
- // fill in barrel
- auto const& pedestalBarrelValues = pedestalsAll[0].second;
- auto const& pedestalWidthBarrelValues = pedestalWidthsAll[0].second;
- auto const& qieDataBarrelValues = qieDataAll[0].second;
- auto const& qieTypesBarrelValues = qieTypesAll[0].second;
-
-#ifdef HCAL_MAHI_CPUDEBUG
- assert(pedestalWidthBarrelValues.size() == pedestalBarrelValues.size());
- assert(pedestalBarrelValues.size() == qieDataBarrelValues.size());
- assert(pedestalBarrelValues.size() == qieTypesBarrelValues.size());
-#endif
-
- for (uint64_t i = 0; i < pedestalBarrelValues.size(); ++i) {
- auto const& qieCoder = qieDataBarrelValues[i];
- auto const qieType = qieTypesBarrelValues[i].getValue() > 1 ? 1 : 0;
- auto const& qieShape = qieData.getShape(qieType);
-
- values_[i * 4] =
- unitIsADC
- ? convert(
- pedestalBarrelValues[i].getValue(0), pedestalWidthBarrelValues[i].getWidth(0), 0, qieCoder, qieShape)
- : pedestalWidthBarrelValues[i].getWidth(0);
- values_[i * 4 + 1] =
- unitIsADC
- ? convert(
- pedestalBarrelValues[i].getValue(1), pedestalWidthBarrelValues[i].getWidth(1), 1, qieCoder, qieShape)
- : pedestalWidthBarrelValues[i].getWidth(1);
- values_[i * 4 + 2] =
- unitIsADC
- ? convert(
- pedestalBarrelValues[i].getValue(2), pedestalWidthBarrelValues[i].getWidth(2), 2, qieCoder, qieShape)
- : pedestalWidthBarrelValues[i].getWidth(2);
- values_[i * 4 + 3] =
- unitIsADC
- ? convert(
- pedestalBarrelValues[i].getValue(3), pedestalWidthBarrelValues[i].getWidth(3), 3, qieCoder, qieShape)
- : pedestalWidthBarrelValues[i].getWidth(3);
- }
-
- // fill in endcap
- auto const& pedestalEndcapValues = pedestalsAll[1].second;
- auto const& pedestalWidthEndcapValues = pedestalWidthsAll[1].second;
- auto const& qieDataEndcapValues = qieDataAll[1].second;
- auto const& qieTypesEndcapValues = qieTypesAll[1].second;
-
-#ifdef HCAL_MAHI_CPUDEBUG
- assert(pedestalWidthEndcapValues.size() == pedestalEndcapValues.size());
- assert(pedestalEndcapValues.size() == qieDataEndcapValues.size());
- assert(pedestalEndcapValues.size() == qieTypesEndcapValues.size());
-#endif
-
- auto const offset = pedestalWidthBarrelValues.size();
- for (uint64_t i = 0; i < pedestalEndcapValues.size(); ++i) {
- auto const& qieCoder = qieDataEndcapValues[i];
- auto const qieType = qieTypesEndcapValues[i].getValue() > 1 ? 1 : 0;
- auto const& qieShape = qieData.getShape(qieType);
- auto const off = offset + i;
-
- values_[off * 4] =
- unitIsADC
- ? convert(
- pedestalEndcapValues[i].getValue(0), pedestalWidthEndcapValues[i].getWidth(0), 0, qieCoder, qieShape)
- : pedestalWidthEndcapValues[i].getWidth(0);
- values_[off * 4 + 1] =
- unitIsADC
- ? convert(
- pedestalEndcapValues[i].getValue(1), pedestalWidthEndcapValues[i].getWidth(1), 1, qieCoder, qieShape)
- : pedestalWidthEndcapValues[i].getWidth(1);
- values_[off * 4 + 2] =
- unitIsADC
- ? convert(
- pedestalEndcapValues[i].getValue(2), pedestalWidthEndcapValues[i].getWidth(2), 2, qieCoder, qieShape)
- : pedestalWidthEndcapValues[i].getWidth(2);
- values_[off * 4 + 3] =
- unitIsADC
- ? convert(
- pedestalEndcapValues[i].getValue(3), pedestalWidthEndcapValues[i].getWidth(3), 3, qieCoder, qieShape)
- : pedestalWidthEndcapValues[i].getWidth(3);
-
-#ifdef HCAL_MAHI_CPUDEBUG
- if (pedestalEndcapValues[i].rawId() == DETID_TO_DEBUG) {
- for (int i = 0; i < 4; i++)
- printf("pedestalWidth(%d) = %f original pedestalWidth(%d) = %f\n",
- i,
- values_[off * 4 + i],
- i,
- pedestalWidthEndcapValues[i].getWidth(3));
- }
-#endif
- }
-}
-
-HcalConvertedPedestalWidthsGPU::Product const& HcalConvertedPedestalWidthsGPU::getProduct(cudaStream_t stream) const {
- auto const& product = product_.dataForCurrentDeviceAsync(
- stream, [this](HcalConvertedPedestalWidthsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.values = cms::cuda::make_device_unique(values_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.values, values_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalConvertedPedestalWidthsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalConvertedPedestalsGPU.cc b/CondFormats/HcalObjects/src/HcalConvertedPedestalsGPU.cc
deleted file mode 100644
index 5d44f1fd6bd2e..0000000000000
--- a/CondFormats/HcalObjects/src/HcalConvertedPedestalsGPU.cc
+++ /dev/null
@@ -1,122 +0,0 @@
-#include
-
-#include "CondFormats/HcalObjects/interface/HcalConvertedPedestalsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-namespace {
- float convert(float const x, int const i, HcalQIECoder const& coder, HcalQIEShape const& shape) {
- int const x1 = static_cast(std::floor(x));
- int const x2 = static_cast(std::floor(x + 1));
- float const y2 = coder.charge(shape, x2, i);
- float const y1 = coder.charge(shape, x1, i);
- return (y2 - y1) * (x - x1) + y1;
- }
-} // namespace
-
-// FIXME: add proper getters to conditions
-HcalConvertedPedestalsGPU::HcalConvertedPedestalsGPU(HcalPedestals const& pedestals,
- HcalQIEData const& qieData,
- HcalQIETypes const& qieTypes)
- : totalChannels_{pedestals.getAllContainers()[0].second.size() + pedestals.getAllContainers()[1].second.size()},
- offsetForHashes_{static_cast(pedestals.getAllContainers()[0].second.size())},
- values_(totalChannels_ * 4) {
-#ifdef HCAL_MAHI_CPUDEBUG
- std::cout << "hello from converted pedestals" << std::endl;
- std::cout << "pedestals HB values = " << pedestals.getAllContainers()[0].second.size()
- << " HE values = " << pedestals.getAllContainers()[1].second.size() << std::endl;
- std::cout << "qiedata HB values = " << qieData.getAllContainers()[0].second.size()
- << " HE values = " << qieData.getAllContainers()[1].second.size() << std::endl;
-#endif
-
- // retrieve all collections
- auto const pedestalsAll = pedestals.getAllContainers();
- auto const qieDataAll = qieData.getAllContainers();
- auto const qieTypesAll = qieTypes.getAllContainers();
-
- // have to convert to fc if stored in adc
- auto const unitIsADC = pedestals.isADC();
-
- // fill in barrel
- auto const& pedestalBarrelValues = pedestalsAll[0].second;
- auto const& qieDataBarrelValues = qieDataAll[0].second;
- auto const& qieTypesBarrelValues = qieTypesAll[0].second;
-
-#ifdef HCAL_MAHI_CPUDEBUG
- assert(pedestalBarrelValues.size() == qieDataBarrelValues.size());
- assert(pedestalBarrelValues.size() == qieTypesBarrelValues.size());
-#endif
-
- for (uint64_t i = 0; i < pedestalBarrelValues.size(); ++i) {
- auto const& qieCoder = qieDataBarrelValues[i];
- auto const qieType = qieTypesBarrelValues[i].getValue() > 1 ? 1 : 0;
- auto const& qieShape = qieData.getShape(qieType);
-
- values_[i * 4] = unitIsADC ? convert(pedestalBarrelValues[i].getValue(0), 0, qieCoder, qieShape)
- : pedestalBarrelValues[i].getValue(0);
- values_[i * 4 + 1] = unitIsADC ? convert(pedestalBarrelValues[i].getValue(1), 1, qieCoder, qieShape)
- : pedestalBarrelValues[i].getValue(1);
- values_[i * 4 + 2] = unitIsADC ? convert(pedestalBarrelValues[i].getValue(2), 2, qieCoder, qieShape)
- : pedestalBarrelValues[i].getValue(2);
- values_[i * 4 + 3] = unitIsADC ? convert(pedestalBarrelValues[i].getValue(3), 3, qieCoder, qieShape)
- : pedestalBarrelValues[i].getValue(3);
- }
-
- // fill in endcap
- auto const& pedestalEndcapValues = pedestalsAll[1].second;
- auto const& qieDataEndcapValues = qieDataAll[1].second;
- auto const& qieTypesEndcapValues = qieTypesAll[1].second;
-
-#ifdef HCAL_MAHI_CPUDEBUG
- assert(pedestalEndcapValues.size() == qieDataEndcapValues.size());
- assert(pedestalEndcapValues.size() == qieTypesEndcapValues.size());
-#endif
-
- auto const offset = pedestalBarrelValues.size();
- for (uint64_t i = 0; i < pedestalEndcapValues.size(); ++i) {
- auto const& qieCoder = qieDataEndcapValues[i];
- auto const qieType = qieTypesEndcapValues[i].getValue() > 1 ? 1 : 0;
- auto const& qieShape = qieData.getShape(qieType);
- auto const off = offset + i;
-
- values_[off * 4] = unitIsADC ? convert(pedestalEndcapValues[i].getValue(0), 0, qieCoder, qieShape)
- : pedestalEndcapValues[i].getValue(0);
- values_[off * 4 + 1] = unitIsADC ? convert(pedestalEndcapValues[i].getValue(1), 1, qieCoder, qieShape)
- : pedestalEndcapValues[i].getValue(1);
- values_[off * 4 + 2] = unitIsADC ? convert(pedestalEndcapValues[i].getValue(2), 2, qieCoder, qieShape)
- : pedestalEndcapValues[i].getValue(2);
- values_[off * 4 + 3] = unitIsADC ? convert(pedestalEndcapValues[i].getValue(3), 3, qieCoder, qieShape)
- : pedestalEndcapValues[i].getValue(3);
-
-#ifdef HCAL_MAHI_CPUDEBUG
- if (pedestalEndcapValues[i].rawId() == DETID_TO_DEBUG) {
- printf("qietype = %d\n", qieType);
- printf("ped0 = %f ped1 = %f ped2 = %f ped3 = %f\n",
- pedestalEndcapValues[i].getValue(0),
- pedestalEndcapValues[i].getValue(1),
- pedestalEndcapValues[i].getValue(2),
- pedestalEndcapValues[i].getValue(3));
- printf("converted: ped0 = %f ped1 = %f ped2 = %f ped3 = %f\n",
- values_[off * 4],
- values_[off * 4 + 1],
- values_[off * 4 + 2],
- values_[off * 4 + 3]);
- }
-#endif
- }
-}
-
-HcalConvertedPedestalsGPU::Product const& HcalConvertedPedestalsGPU::getProduct(cudaStream_t stream) const {
- auto const& product = product_.dataForCurrentDeviceAsync(
- stream, [this](HcalConvertedPedestalsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.values = cms::cuda::make_device_unique(values_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.values, values_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalConvertedPedestalsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalGainWidthsGPU.cc b/CondFormats/HcalObjects/src/HcalGainWidthsGPU.cc
deleted file mode 100644
index fc86ce24b8e2c..0000000000000
--- a/CondFormats/HcalObjects/src/HcalGainWidthsGPU.cc
+++ /dev/null
@@ -1,54 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalGainWidths.h"
-#include "CondFormats/HcalObjects/interface/HcalGainWidthsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalGainWidthsGPU::HcalGainWidthsGPU(HcalGainWidths const& gains)
- : totalChannels_{gains.getAllContainers()[0].second.size() + gains.getAllContainers()[1].second.size()},
- value0_(totalChannels_),
- value1_(totalChannels_),
- value2_(totalChannels_),
- value3_(totalChannels_) {
- auto const gainContainers = gains.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = gainContainers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- value0_[i] = barrelValues[i].getValue(0);
- value1_[i] = barrelValues[i].getValue(1);
- value2_[i] = barrelValues[i].getValue(2);
- value3_[i] = barrelValues[i].getValue(3);
- }
-
- // fill in ee
- auto const& endcapValues = gainContainers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- value0_[i + offset] = endcapValues[i].getValue(0);
- value1_[i + offset] = endcapValues[i].getValue(1);
- value2_[i + offset] = endcapValues[i].getValue(2);
- value3_[i + offset] = endcapValues[i].getValue(3);
- }
-}
-
-HcalGainWidthsGPU::Product const& HcalGainWidthsGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalGainWidthsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.value0 = cms::cuda::make_device_unique(value0_.size(), stream);
- product.value1 = cms::cuda::make_device_unique(value1_.size(), stream);
- product.value2 = cms::cuda::make_device_unique(value2_.size(), stream);
- product.value3 = cms::cuda::make_device_unique(value3_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.value0, value0_, stream);
- cms::cuda::copyAsync(product.value1, value1_, stream);
- cms::cuda::copyAsync(product.value2, value2_, stream);
- cms::cuda::copyAsync(product.value3, value3_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalGainWidthsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalGainsGPU.cc b/CondFormats/HcalObjects/src/HcalGainsGPU.cc
deleted file mode 100644
index 27f7d548aa7b2..0000000000000
--- a/CondFormats/HcalObjects/src/HcalGainsGPU.cc
+++ /dev/null
@@ -1,46 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalGains.h"
-#include "CondFormats/HcalObjects/interface/HcalGainsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalGainsGPU::HcalGainsGPU(HcalGains const& gains)
- : totalChannels_{gains.getAllContainers()[0].second.size() + gains.getAllContainers()[1].second.size()},
- values_(totalChannels_ * 4) {
- auto const gainContainers = gains.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = gainContainers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- values_[i * 4] = barrelValues[i].getValue(0);
- values_[i * 4 + 1] = barrelValues[i].getValue(1);
- values_[i * 4 + 2] = barrelValues[i].getValue(2);
- values_[i * 4 + 3] = barrelValues[i].getValue(3);
- }
-
- // fill in ee
- auto const& endcapValues = gainContainers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- auto const off = offset + i;
- values_[off * 4] = endcapValues[i].getValue(0);
- values_[off * 4 + 1] = endcapValues[i].getValue(1);
- values_[off * 4 + 2] = endcapValues[i].getValue(2);
- values_[off * 4 + 3] = endcapValues[i].getValue(3);
- }
-}
-
-HcalGainsGPU::Product const& HcalGainsGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalGainsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.values = cms::cuda::make_device_unique(values_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.values, values_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalGainsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalLUTCorrsGPU.cc b/CondFormats/HcalObjects/src/HcalLUTCorrsGPU.cc
deleted file mode 100644
index 889125e92783b..0000000000000
--- a/CondFormats/HcalObjects/src/HcalLUTCorrsGPU.cc
+++ /dev/null
@@ -1,38 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalLUTCorrs.h"
-#include "CondFormats/HcalObjects/interface/HcalLUTCorrsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalLUTCorrsGPU::HcalLUTCorrsGPU(HcalLUTCorrs const& lutcorrs)
- : value_(lutcorrs.getAllContainers()[0].second.size() + lutcorrs.getAllContainers()[1].second.size()) {
- auto const containers = lutcorrs.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- value_[i] = barrelValues[i].getValue();
- }
-
- // fill in ee
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- value_[i + offset] = endcapValues[i].getValue();
- }
-}
-
-HcalLUTCorrsGPU::Product const& HcalLUTCorrsGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalLUTCorrsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.value = cms::cuda::make_device_unique(value_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.value, value_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalLUTCorrsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalPedestalWidthsGPU.cc b/CondFormats/HcalObjects/src/HcalPedestalWidthsGPU.cc
deleted file mode 100644
index 5e006aba764f8..0000000000000
--- a/CondFormats/HcalObjects/src/HcalPedestalWidthsGPU.cc
+++ /dev/null
@@ -1,121 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalPedestalWidths.h"
-#include "CondFormats/HcalObjects/interface/HcalPedestalWidthsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalPedestalWidthsGPU::HcalPedestalWidthsGPU(HcalPedestalWidths const& pedestals)
- : unitIsADC_{pedestals.isADC()},
- totalChannels_{pedestals.getAllContainers()[0].second.size() + pedestals.getAllContainers()[1].second.size()},
- sigma00_(totalChannels_),
- sigma01_(totalChannels_),
- sigma02_(totalChannels_),
- sigma03_(totalChannels_),
- sigma10_(totalChannels_),
- sigma11_(totalChannels_),
- sigma12_(totalChannels_),
- sigma13_(totalChannels_),
- sigma20_(totalChannels_),
- sigma21_(totalChannels_),
- sigma22_(totalChannels_),
- sigma23_(totalChannels_),
- sigma30_(totalChannels_),
- sigma31_(totalChannels_),
- sigma32_(totalChannels_),
- sigma33_(totalChannels_) {
- auto const containers = pedestals.getAllContainers();
-
- // fill in hb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- sigma00_[i] = *(barrelValues[i].getValues() /* + 0 */);
- sigma01_[i] = *(barrelValues[i].getValues() + 1);
- sigma02_[i] = *(barrelValues[i].getValues() + 2);
- sigma03_[i] = *(barrelValues[i].getValues() + 3);
- sigma10_[i] = *(barrelValues[i].getValues() + 3);
- sigma11_[i] = *(barrelValues[i].getValues() + 5);
- sigma12_[i] = *(barrelValues[i].getValues() + 6);
- sigma13_[i] = *(barrelValues[i].getValues() + 7);
- sigma20_[i] = *(barrelValues[i].getValues() + 8);
- sigma21_[i] = *(barrelValues[i].getValues() + 9);
- sigma22_[i] = *(barrelValues[i].getValues() + 10);
- sigma23_[i] = *(barrelValues[i].getValues() + 11);
- sigma30_[i] = *(barrelValues[i].getValues() + 12);
- sigma31_[i] = *(barrelValues[i].getValues() + 13);
- sigma32_[i] = *(barrelValues[i].getValues() + 14);
- sigma33_[i] = *(barrelValues[i].getValues() + 15);
- }
-
- // fill in he
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- sigma00_[i + offset] = *(endcapValues[i].getValues() /* + 0 */);
- sigma01_[i + offset] = *(endcapValues[i].getValues() + 1);
- sigma02_[i + offset] = *(endcapValues[i].getValues() + 2);
- sigma03_[i + offset] = *(endcapValues[i].getValues() + 3);
- sigma10_[i + offset] = *(endcapValues[i].getValues() + 3);
- sigma11_[i + offset] = *(endcapValues[i].getValues() + 5);
- sigma12_[i + offset] = *(endcapValues[i].getValues() + 6);
- sigma13_[i + offset] = *(endcapValues[i].getValues() + 7);
- sigma20_[i + offset] = *(endcapValues[i].getValues() + 8);
- sigma21_[i + offset] = *(endcapValues[i].getValues() + 9);
- sigma22_[i + offset] = *(endcapValues[i].getValues() + 10);
- sigma23_[i + offset] = *(endcapValues[i].getValues() + 11);
- sigma30_[i + offset] = *(endcapValues[i].getValues() + 12);
- sigma31_[i + offset] = *(endcapValues[i].getValues() + 13);
- sigma32_[i + offset] = *(endcapValues[i].getValues() + 14);
- sigma33_[i + offset] = *(endcapValues[i].getValues() + 15);
- }
-}
-
-HcalPedestalWidthsGPU::Product const& HcalPedestalWidthsGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalPedestalWidthsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.sigma00 = cms::cuda::make_device_unique(sigma00_.size(), stream);
- product.sigma01 = cms::cuda::make_device_unique(sigma01_.size(), stream);
- product.sigma02 = cms::cuda::make_device_unique(sigma02_.size(), stream);
- product.sigma03 = cms::cuda::make_device_unique(sigma03_.size(), stream);
-
- product.sigma10 = cms::cuda::make_device_unique(sigma10_.size(), stream);
- product.sigma11 = cms::cuda::make_device_unique(sigma11_.size(), stream);
- product.sigma12 = cms::cuda::make_device_unique(sigma12_.size(), stream);
- product.sigma13 = cms::cuda::make_device_unique(sigma13_.size(), stream);
-
- product.sigma20 = cms::cuda::make_device_unique(sigma20_.size(), stream);
- product.sigma21 = cms::cuda::make_device_unique(sigma21_.size(), stream);
- product.sigma22 = cms::cuda::make_device_unique(sigma22_.size(), stream);
- product.sigma23 = cms::cuda::make_device_unique(sigma23_.size(), stream);
-
- product.sigma30 = cms::cuda::make_device_unique(sigma30_.size(), stream);
- product.sigma31 = cms::cuda::make_device_unique(sigma31_.size(), stream);
- product.sigma32 = cms::cuda::make_device_unique(sigma32_.size(), stream);
- product.sigma33 = cms::cuda::make_device_unique(sigma33_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.sigma00, sigma00_, stream);
- cms::cuda::copyAsync(product.sigma01, sigma01_, stream);
- cms::cuda::copyAsync(product.sigma02, sigma02_, stream);
- cms::cuda::copyAsync(product.sigma03, sigma03_, stream);
-
- cms::cuda::copyAsync(product.sigma10, sigma10_, stream);
- cms::cuda::copyAsync(product.sigma11, sigma11_, stream);
- cms::cuda::copyAsync(product.sigma12, sigma12_, stream);
- cms::cuda::copyAsync(product.sigma13, sigma13_, stream);
-
- cms::cuda::copyAsync(product.sigma20, sigma20_, stream);
- cms::cuda::copyAsync(product.sigma21, sigma21_, stream);
- cms::cuda::copyAsync(product.sigma22, sigma22_, stream);
- cms::cuda::copyAsync(product.sigma23, sigma23_, stream);
-
- cms::cuda::copyAsync(product.sigma30, sigma30_, stream);
- cms::cuda::copyAsync(product.sigma31, sigma31_, stream);
- cms::cuda::copyAsync(product.sigma32, sigma32_, stream);
- cms::cuda::copyAsync(product.sigma33, sigma33_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalPedestalWidthsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalPedestalsGPU.cc b/CondFormats/HcalObjects/src/HcalPedestalsGPU.cc
deleted file mode 100644
index 57088a4f39621..0000000000000
--- a/CondFormats/HcalObjects/src/HcalPedestalsGPU.cc
+++ /dev/null
@@ -1,65 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalPedestals.h"
-#include "CondFormats/HcalObjects/interface/HcalPedestalsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalPedestalsGPU::HcalPedestalsGPU(HcalPedestals const& pedestals)
- : unitIsADC_{pedestals.isADC()},
- totalChannels_{pedestals.getAllContainers()[0].second.size() + pedestals.getAllContainers()[1].second.size()},
- offsetForHashes_{static_cast(pedestals.getAllContainers()[0].second.size())},
- values_(totalChannels_ * 4),
- widths_(totalChannels_ * 4) {
-#ifdef HCAL_MAHI_CPUDEBUG
- std::cout << "unitIsADC = " << unitIsADC_ << std::endl;
-#endif
-
- auto const containers = pedestals.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- values_[i * 4] = barrelValues[i].getValue(0);
- values_[i * 4 + 1] = barrelValues[i].getValue(1);
- values_[i * 4 + 2] = barrelValues[i].getValue(2);
- values_[i * 4 + 3] = barrelValues[i].getValue(3);
-
- widths_[i * 4] = barrelValues[i].getWidth(0);
- widths_[i * 4 + 1] = barrelValues[i].getWidth(1);
- widths_[i * 4 + 2] = barrelValues[i].getWidth(2);
- widths_[i * 4 + 3] = barrelValues[i].getWidth(3);
- }
-
- // fill in ee
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- auto const off = offset + i;
- values_[off * 4] = endcapValues[i].getValue(0);
- values_[off * 4 + 1] = endcapValues[i].getValue(1);
- values_[off * 4 + 2] = endcapValues[i].getValue(2);
- values_[off * 4 + 3] = endcapValues[i].getValue(3);
-
- widths_[off * 4] = endcapValues[i].getWidth(0);
- widths_[off * 4 + 1] = endcapValues[i].getWidth(1);
- widths_[off * 4 + 2] = endcapValues[i].getWidth(2);
- widths_[off * 4 + 3] = endcapValues[i].getWidth(3);
- }
-}
-
-HcalPedestalsGPU::Product const& HcalPedestalsGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalPedestalsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.values = cms::cuda::make_device_unique(values_.size(), stream);
- product.widths = cms::cuda::make_device_unique(widths_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.values, values_, stream);
- cms::cuda::copyAsync(product.widths, widths_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalPedestalsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalQIECodersGPU.cc b/CondFormats/HcalObjects/src/HcalQIECodersGPU.cc
deleted file mode 100644
index 2b9d9d4821e64..0000000000000
--- a/CondFormats/HcalObjects/src/HcalQIECodersGPU.cc
+++ /dev/null
@@ -1,51 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalQIECodersGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-HcalQIECodersGPU::HcalQIECodersGPU(HcalQIEData const& qiedata)
- : totalChannels_{qiedata.getAllContainers()[0].second.size() + qiedata.getAllContainers()[1].second.size()},
- offsets_(totalChannels_ * numValuesPerChannel),
- slopes_(totalChannels_ * numValuesPerChannel) {
- auto const containers = qiedata.getAllContainers();
-
- // fill in hb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- for (uint32_t k = 0; k < 4; k++)
- for (uint32_t l = 0; l < 4; l++) {
- auto const linear = k * 4 + l;
- offsets_[i * numValuesPerChannel + linear] = barrelValues[i].offset(k, l);
- slopes_[i * numValuesPerChannel + linear] = barrelValues[i].slope(k, l);
- }
- }
-
- // fill in he
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- auto const off = (i + offset) * numValuesPerChannel;
- for (uint32_t k = 0; k < 4; k++)
- for (uint32_t l = 0; l < 4; l++) {
- auto const linear = k * 4u + l;
- offsets_[off + linear] = endcapValues[i].offset(k, l);
- slopes_[off + linear] = endcapValues[i].slope(k, l);
- }
- }
-}
-
-HcalQIECodersGPU::Product const& HcalQIECodersGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalQIECodersGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.offsets = cms::cuda::make_device_unique(offsets_.size(), stream);
- product.slopes = cms::cuda::make_device_unique(slopes_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.offsets, offsets_, stream);
- cms::cuda::copyAsync(product.slopes, slopes_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalQIECodersGPU);
diff --git a/CondFormats/HcalObjects/src/HcalQIETypesGPU.cc b/CondFormats/HcalObjects/src/HcalQIETypesGPU.cc
deleted file mode 100644
index 77a7bf81c33f0..0000000000000
--- a/CondFormats/HcalObjects/src/HcalQIETypesGPU.cc
+++ /dev/null
@@ -1,38 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalQIETypes.h"
-#include "CondFormats/HcalObjects/interface/HcalQIETypesGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalQIETypesGPU::HcalQIETypesGPU(HcalQIETypes const& parameters)
- : values_(parameters.getAllContainers()[0].second.size() + parameters.getAllContainers()[1].second.size()) {
- auto const containers = parameters.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- values_[i] = barrelValues[i].getValue();
- }
-
- // fill in ee
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- values_[i + offset] = endcapValues[i].getValue();
- }
-}
-
-HcalQIETypesGPU::Product const& HcalQIETypesGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalQIETypesGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.values = cms::cuda::make_device_unique(values_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.values, values_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalQIETypesGPU);
diff --git a/CondFormats/HcalObjects/src/HcalRecoParamsGPU.cc b/CondFormats/HcalObjects/src/HcalRecoParamsGPU.cc
deleted file mode 100644
index 195028acf5746..0000000000000
--- a/CondFormats/HcalObjects/src/HcalRecoParamsGPU.cc
+++ /dev/null
@@ -1,44 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalRecoParams.h"
-#include "CondFormats/HcalObjects/interface/HcalRecoParamsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalRecoParamsGPU::HcalRecoParamsGPU(HcalRecoParams const& recoParams)
- : totalChannels_{recoParams.getAllContainers()[0].second.size() + recoParams.getAllContainers()[1].second.size()},
- param1_(totalChannels_),
- param2_(totalChannels_) {
- auto const& containers = recoParams.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- param1_[i] = barrelValues[i].param1();
- param2_[i] = barrelValues[i].param2();
- }
-
- // fill in ee
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- param1_[i + offset] = endcapValues[i].param1();
- param2_[i + offset] = endcapValues[i].param2();
- }
-}
-
-HcalRecoParamsGPU::Product const& HcalRecoParamsGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalRecoParamsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.param1 = cms::cuda::make_device_unique(param1_.size(), stream);
- product.param2 = cms::cuda::make_device_unique(param2_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.param1, param1_, stream);
- cms::cuda::copyAsync(product.param2, param2_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalRecoParamsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalRespCorrsGPU.cc b/CondFormats/HcalObjects/src/HcalRespCorrsGPU.cc
deleted file mode 100644
index f688191352353..0000000000000
--- a/CondFormats/HcalObjects/src/HcalRespCorrsGPU.cc
+++ /dev/null
@@ -1,38 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalRespCorrs.h"
-#include "CondFormats/HcalObjects/interface/HcalRespCorrsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalRespCorrsGPU::HcalRespCorrsGPU(HcalRespCorrs const& respcorrs)
- : values_(respcorrs.getAllContainers()[0].second.size() + respcorrs.getAllContainers()[1].second.size()) {
- auto const containers = respcorrs.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- values_[i] = barrelValues[i].getValue();
- }
-
- // fill in ee
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- values_[i + offset] = endcapValues[i].getValue();
- }
-}
-
-HcalRespCorrsGPU::Product const& HcalRespCorrsGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalRespCorrsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.values = cms::cuda::make_device_unique(values_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.values, values_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalRespCorrsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalSiPMCharacteristicsGPU.cc b/CondFormats/HcalObjects/src/HcalSiPMCharacteristicsGPU.cc
deleted file mode 100644
index 059eb8617c37d..0000000000000
--- a/CondFormats/HcalObjects/src/HcalSiPMCharacteristicsGPU.cc
+++ /dev/null
@@ -1,63 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalSiPMCharacteristics.h"
-#include "CondFormats/HcalObjects/interface/HcalSiPMCharacteristicsGPU.h"
-#include "FWCore/Utilities/interface/Exception.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-HcalSiPMCharacteristicsGPU::HcalSiPMCharacteristicsGPU(HcalSiPMCharacteristics const& parameters)
- : pixels_(parameters.getTypes()),
- auxi1_(parameters.getTypes()),
- parLin1_(parameters.getTypes()),
- parLin2_(parameters.getTypes()),
- parLin3_(parameters.getTypes()),
- crossTalk_(parameters.getTypes()),
- auxi2_(parameters.getTypes()) {
- for (uint32_t i = 0; i < parameters.getTypes(); i++) {
- auto const type = parameters.getType(i);
-#ifdef HCAL_MAHI_CPUDEBUG
- printf("index = %u type = %d\n", i, type);
-#endif
-
- // for now...
- if (static_cast(type) != i + 1)
- throw cms::Exception("HcalSiPMCharacteristics")
- << "Wrong assumption for HcalSiPMcharacteristics type values, "
- << "should be type value <- type index + 1" << std::endl
- << "Observed type value = " << type << " and index = " << i << std::endl;
-
- pixels_[i] = parameters.getPixels(type);
- auxi1_[i] = parameters.getAuxi1(type);
- parLin1_[i] = parameters.getNonLinearities(type)[0];
- parLin2_[i] = parameters.getNonLinearities(type)[1];
- parLin3_[i] = parameters.getNonLinearities(type)[2];
- crossTalk_[i] = parameters.getCrossTalk(type);
- auxi2_[i] = parameters.getAuxi2(type);
- }
-}
-
-HcalSiPMCharacteristicsGPU::Product const& HcalSiPMCharacteristicsGPU::getProduct(cudaStream_t stream) const {
- auto const& product = product_.dataForCurrentDeviceAsync(
- stream, [this](HcalSiPMCharacteristicsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.pixels = cms::cuda::make_device_unique(pixels_.size(), stream);
- product.auxi1 = cms::cuda::make_device_unique(auxi1_.size(), stream);
- product.parLin1 = cms::cuda::make_device_unique(parLin1_.size(), stream);
- product.parLin2 = cms::cuda::make_device_unique(parLin2_.size(), stream);
- product.parLin3 = cms::cuda::make_device_unique(parLin3_.size(), stream);
- product.crossTalk = cms::cuda::make_device_unique(crossTalk_.size(), stream);
- product.auxi2 = cms::cuda::make_device_unique(auxi2_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.pixels, pixels_, stream);
- cms::cuda::copyAsync(product.auxi1, auxi1_, stream);
- cms::cuda::copyAsync(product.parLin1, parLin1_, stream);
- cms::cuda::copyAsync(product.parLin2, parLin2_, stream);
- cms::cuda::copyAsync(product.parLin3, parLin3_, stream);
- cms::cuda::copyAsync(product.crossTalk, crossTalk_, stream);
- cms::cuda::copyAsync(product.auxi2, auxi2_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalSiPMCharacteristicsGPU);
diff --git a/CondFormats/HcalObjects/src/HcalSiPMParametersGPU.cc b/CondFormats/HcalObjects/src/HcalSiPMParametersGPU.cc
deleted file mode 100644
index 88120e02e54b5..0000000000000
--- a/CondFormats/HcalObjects/src/HcalSiPMParametersGPU.cc
+++ /dev/null
@@ -1,61 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalSiPMParameters.h"
-#include "CondFormats/HcalObjects/interface/HcalSiPMParametersGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-HcalSiPMParametersGPU::HcalSiPMParametersGPU(HcalSiPMParameters const& parameters)
- : totalChannels_{parameters.getAllContainers()[0].second.size() + parameters.getAllContainers()[1].second.size()},
- type_(totalChannels_),
- auxi1_(totalChannels_),
- fcByPE_(totalChannels_),
- darkCurrent_(totalChannels_),
- auxi2_(totalChannels_) {
- auto const containers = parameters.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- auto const& item = barrelValues[i];
- type_[i] = item.getType();
- auxi1_[i] = item.getauxi1();
- fcByPE_[i] = item.getFCByPE();
- darkCurrent_[i] = item.getDarkCurrent();
- auxi2_[i] = item.getauxi2();
- }
-
- // fill in ee
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- auto const off = offset + i;
- auto const& item = endcapValues[i];
- type_[off] = item.getType();
- auxi1_[off] = item.getauxi1();
- fcByPE_[off] = item.getFCByPE();
- darkCurrent_[off] = item.getDarkCurrent();
- auxi2_[off] = item.getauxi2();
- }
-}
-
-HcalSiPMParametersGPU::Product const& HcalSiPMParametersGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalSiPMParametersGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.type = cms::cuda::make_device_unique(type_.size(), stream);
- product.auxi1 = cms::cuda::make_device_unique(auxi1_.size(), stream);
- product.fcByPE = cms::cuda::make_device_unique(fcByPE_.size(), stream);
- product.darkCurrent = cms::cuda::make_device_unique(darkCurrent_.size(), stream);
- product.auxi2 = cms::cuda::make_device_unique(auxi2_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.type, type_, stream);
- cms::cuda::copyAsync(product.auxi1, auxi1_, stream);
- cms::cuda::copyAsync(product.fcByPE, fcByPE_, stream);
- cms::cuda::copyAsync(product.darkCurrent, darkCurrent_, stream);
- cms::cuda::copyAsync(product.auxi2, auxi2_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalSiPMParametersGPU);
diff --git a/CondFormats/HcalObjects/src/HcalTimeCorrsGPU.cc b/CondFormats/HcalObjects/src/HcalTimeCorrsGPU.cc
deleted file mode 100644
index 02ce05132479c..0000000000000
--- a/CondFormats/HcalObjects/src/HcalTimeCorrsGPU.cc
+++ /dev/null
@@ -1,38 +0,0 @@
-#include "CondFormats/HcalObjects/interface/HcalTimeCorrs.h"
-#include "CondFormats/HcalObjects/interface/HcalTimeCorrsGPU.h"
-#include "FWCore/Utilities/interface/typelookup.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/copyAsync.h"
-
-// FIXME: add proper getters to conditions
-HcalTimeCorrsGPU::HcalTimeCorrsGPU(HcalTimeCorrs const& timecorrs)
- : value_(timecorrs.getAllContainers()[0].second.size() + timecorrs.getAllContainers()[1].second.size()) {
- auto const containers = timecorrs.getAllContainers();
-
- // fill in eb
- auto const& barrelValues = containers[0].second;
- for (uint64_t i = 0; i < barrelValues.size(); ++i) {
- value_[i] = barrelValues[i].getValue();
- }
-
- // fill in ee
- auto const& endcapValues = containers[1].second;
- auto const offset = barrelValues.size();
- for (uint64_t i = 0; i < endcapValues.size(); ++i) {
- value_[i + offset] = endcapValues[i].getValue();
- }
-}
-
-HcalTimeCorrsGPU::Product const& HcalTimeCorrsGPU::getProduct(cudaStream_t stream) const {
- auto const& product =
- product_.dataForCurrentDeviceAsync(stream, [this](HcalTimeCorrsGPU::Product& product, cudaStream_t stream) {
- // allocate
- product.value = cms::cuda::make_device_unique(value_.size(), stream);
-
- // transfer
- cms::cuda::copyAsync(product.value, value_, stream);
- });
-
- return product;
-}
-
-TYPELOOKUP_DATA_REG(HcalTimeCorrsGPU);
diff --git a/EventFilter/HcalRawToDigi/bin/BuildFile.xml b/EventFilter/HcalRawToDigi/bin/BuildFile.xml
deleted file mode 100644
index c074e16ef4eab..0000000000000
--- a/EventFilter/HcalRawToDigi/bin/BuildFile.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
diff --git a/EventFilter/HcalRawToDigi/bin/makeHcalRaw2DigiGpuValidationPlots.cpp b/EventFilter/HcalRawToDigi/bin/makeHcalRaw2DigiGpuValidationPlots.cpp
deleted file mode 100644
index 039c38dd9df16..0000000000000
--- a/EventFilter/HcalRawToDigi/bin/makeHcalRaw2DigiGpuValidationPlots.cpp
+++ /dev/null
@@ -1,386 +0,0 @@
-#include
-#include
-#include
-#include
-
-#include
-#include
-#include
-#include
-#include
-#include
-
-#include "CUDADataFormats/HcalDigi/interface/DigiCollection.h"
-#include "DataFormats/Common/interface/Wrapper.h"
-#include "DataFormats/HcalDigi/interface/HcalDigiCollections.h"
-
-#define CREATE_HIST_1D(varname, nbins, first, last) auto varname = new TH1D(#varname, #varname, nbins, first, last)
-
-#define CREATE_HIST_2D(varname, nbins, first, last) \
- auto varname = new TH2D(#varname, #varname, nbins, first, last, nbins, first, last)
-
-QIE11DigiCollection filterQIE11(QIE11DigiCollection const& coll) {
- QIE11DigiCollection out;
- out.reserve(coll.size());
-
- for (uint32_t i = 0; i < coll.size(); i++) {
- auto const df = coll[i];
- auto const id = HcalDetId{df.id()};
- if (id.subdetId() != HcalEndcap)
- continue;
-
- out.push_back(QIE11DataFrame{df});
- }
-
- return out;
-}
-
-int main(int argc, char* argv[]) {
- if (argc < 3) {
- std::cout << "run with: ./ \n";
- exit(0);
- }
-
- auto filterf01HE = [](QIE11DigiCollection const& coll) {
- QIE11DigiCollection out{coll.samples(), coll.subdetId()};
- out.reserve(coll.size());
-
- for (uint32_t i = 0; i < coll.size(); i++) {
- auto const df = QIE11DataFrame{coll[i]};
- auto const id = HcalDetId{df.id()};
- if ((df.flavor() == 0 or df.flavor() == 1) and id.subdetId() == HcalEndcap)
- out.push_back(df);
- }
-
- return out;
- };
-
- auto filterf3HB = [](QIE11DigiCollection const& coll) {
- QIE11DigiCollection out{coll.samples(), coll.subdetId()};
- out.reserve(coll.size());
-
- for (uint32_t i = 0; i < coll.size(); i++) {
- auto const df = QIE11DataFrame{coll[i]};
- auto const did = HcalDetId{df.id()};
- if (df.flavor() == 3 and did.subdetId() == HcalBarrel)
- out.push_back(df);
- }
-
- return out;
- };
-
- // branches to use
- using Collectionf01 =
- hcal::DigiCollection>;
- using Collectionf5 =
- hcal::DigiCollection>;
- using Collectionf3 =
- hcal::DigiCollection>;
- edm::Wrapper* wgpuf01he = nullptr;
- edm::Wrapper* wgpuf5hb = nullptr;
- edm::Wrapper* wgpuf3hb = nullptr;
- edm::Wrapper* wcpuf01he = nullptr;
- edm::Wrapper* wcpuf5hb = nullptr;
-
- std::string inFileName{argv[1]};
- std::string outFileName{argv[2]};
-
- // prep output
- TFile rfout{outFileName.c_str(), "recreate"};
-
- CREATE_HIST_1D(hADCf01HEGPU, 256, 0, 256);
- CREATE_HIST_1D(hADCf01HECPU, 256, 0, 256);
- CREATE_HIST_1D(hADCf5HBGPU, 128, 0, 128);
- CREATE_HIST_1D(hADCf5HBCPU, 128, 0, 128);
- CREATE_HIST_1D(hADCf3HBGPU, 256, 0, 256);
- CREATE_HIST_1D(hADCf3HBCPU, 256, 0, 256);
- CREATE_HIST_1D(hTDCf01HEGPU, 64, 0, 64);
- CREATE_HIST_1D(hTDCf01HECPU, 64, 0, 64);
-
- CREATE_HIST_2D(hADCf01HEGPUvsCPU, 256, 0, 256);
- CREATE_HIST_2D(hADCf3HBGPUvsCPU, 256, 0, 256);
- CREATE_HIST_2D(hADCf5HBGPUvsCPU, 128, 0, 128);
- CREATE_HIST_2D(hTDCf01HEGPUvsCPU, 64, 0, 64);
- CREATE_HIST_2D(hTDCf3HBGPUvsCPU, 4, 0, 4);
-
- // prep input
- TFile rfin{inFileName.c_str()};
- TTree* rt = (TTree*)rfin.Get("Events");
- rt->SetBranchAddress("QIE11DataFrameHcalDataFrameContainer_hcalDigis__RECO.", &wcpuf01he);
- rt->SetBranchAddress("HBHEDataFramesSorted_hcalDigis__RECO.", &wcpuf5hb);
- rt->SetBranchAddress(
- "hcalFlavor5calocommonCUDAHostAllocatorAliascalocommonVecStoragePolicyhcalDigiCollection_hcalCPUDigisProducer_"
- "f5HBDigis_RECO.",
- &wgpuf5hb);
- rt->SetBranchAddress(
- "hcalFlavor1calocommonCUDAHostAllocatorAliascalocommonVecStoragePolicyhcalDigiCollection_hcalCPUDigisProducer_"
- "f01HEDigis_RECO.",
- &wgpuf01he);
- rt->SetBranchAddress(
- "hcalFlavor3calocommonCUDAHostAllocatorAliascalocommonVecStoragePolicyhcalDigiCollection_hcalCPUDigisProducer_"
- "f3HBDigis_RECO.",
- &wgpuf3hb);
-
- // accumulate
- auto const nentries = rt->GetEntries();
- std::cout << ">>> nentries = " << nentries << std::endl;
- for (int ie = 0; ie < nentries; ++ie) {
- rt->GetEntry(ie);
-
- auto const& f01HEProduct = wgpuf01he->bareProduct();
- auto const& f5HBProduct = wgpuf5hb->bareProduct();
- auto const& f3HBProduct = wgpuf3hb->bareProduct();
- auto const& qie11Product = wcpuf01he->bareProduct();
- auto const qie11Filteredf01 = filterf01HE(qie11Product);
- auto const qie11Filteredf3 = filterf3HB(qie11Product);
- auto const& qie8Product = wcpuf5hb->bareProduct();
-
- auto const ngpuf01he = f01HEProduct.ids.size();
- auto const ngpuf5hb = f5HBProduct.ids.size();
- auto const ngpuf3hb = f3HBProduct.ids.size();
- auto const ncpuf01he = qie11Filteredf01.size();
- auto const ncpuf5hb = qie8Product.size();
- auto const ncpuf3hb = qie11Filteredf3.size();
-
- /*
- printf("ngpuf01he = %u nqie11 = %u ncpuf01he = %u ngpuf5hb = %u ncpuf5hb = %u\n",
- f01HEProduct.size(), qie11Product.size(), qie11Filtered.size(),
- f5HBProduct.size(),
- static_cast(qie8Product.size()));
- */
-
- if (ngpuf01he != ncpuf01he) {
- std::cerr << "*** mismatch in number of flavor 01 digis for event " << ie << std::endl
- << ">>> ngpuf01he = " << ngpuf01he << std::endl
- << ">>> ncpuf01he = " << ncpuf01he << std::endl;
- }
-
- {
- auto const& idsgpu = f01HEProduct.ids;
- auto const& datagpu = f01HEProduct.data;
-
- for (uint32_t ich = 0; ich < ncpuf01he; ich++) {
- auto const cpudf = QIE11DataFrame{qie11Filteredf01[ich]};
- auto const cpuid = cpudf.id();
- auto iter2idgpu = std::find(idsgpu.begin(), idsgpu.end(), cpuid);
-
- if (iter2idgpu == idsgpu.end()) {
- std::cerr << "missing " << HcalDetId{cpuid} << std::endl;
- continue;
- }
-
- // FIXME: cna fail...
- assert(*iter2idgpu == cpuid);
-
- auto const ptrdiff = iter2idgpu - idsgpu.begin();
- auto const nsamples_gpu = hcal::compute_nsamples(f01HEProduct.stride);
- auto const nsamples_cpu = qie11Filteredf01.samples();
- assert(static_cast(nsamples_cpu) == nsamples_gpu);
-
- uint32_t ichgpu = ptrdiff;
- uint32_t offset = ichgpu * f01HEProduct.stride;
- uint16_t const* df_start = datagpu.data() + offset;
- for (uint32_t sample = 0u; sample < nsamples_gpu; sample++) {
- auto const cpuadc = cpudf[sample].adc();
- auto const gpuadc = hcal::adc_for_sample(df_start, sample);
- auto const cputdc = cpudf[sample].tdc();
- auto const gputdc = hcal::tdc_for_sample(df_start, sample);
- auto const cpucapid = cpudf[sample].capid();
- auto const gpucapid = hcal::capid_for_sample(df_start, sample);
-
- hADCf01HEGPU->Fill(gpuadc);
- hADCf01HECPU->Fill(cpuadc);
- hTDCf01HEGPU->Fill(gputdc);
- hTDCf01HECPU->Fill(cputdc);
- hADCf01HEGPUvsCPU->Fill(cpuadc, gpuadc);
- hTDCf01HEGPUvsCPU->Fill(cputdc, gputdc);
-
- // At RAW Decoding level there must not be any mistmatches
- // in the adc values at all!
- assert(static_cast(cpuadc) == gpuadc);
- assert(static_cast(cputdc) == gputdc);
- assert(static_cast(cpucapid) == gpucapid);
- }
- }
- }
-
- if (ngpuf3hb != ncpuf3hb) {
- std::cerr << "*** mismatch in number of flavor 3 digis for event " << ie << std::endl
- << ">>> ngpuf01he = " << ngpuf3hb << std::endl
- << ">>> ncpuf01he = " << ncpuf3hb << std::endl;
- }
-
- {
- auto const& idsgpu = f3HBProduct.ids;
- auto const& datagpu = f3HBProduct.data;
-
- for (uint32_t ich = 0; ich < ncpuf3hb; ich++) {
- auto const cpudf = QIE11DataFrame{qie11Filteredf3[ich]};
- auto const cpuid = cpudf.id();
- auto iter2idgpu = std::find(idsgpu.begin(), idsgpu.end(), cpuid);
-
- if (iter2idgpu == idsgpu.end()) {
- std::cerr << "missing " << HcalDetId{cpuid} << std::endl;
- continue;
- }
-
- // FIXME: cna fail...
- assert(*iter2idgpu == cpuid);
-
- auto const ptrdiff = iter2idgpu - idsgpu.begin();
- auto const nsamples_gpu = hcal::compute_nsamples(f3HBProduct.stride);
- auto const nsamples_cpu = qie11Filteredf3.samples();
- assert(static_cast(nsamples_cpu) == nsamples_gpu);
-
- uint32_t ichgpu = ptrdiff;
- uint32_t offset = ichgpu * f3HBProduct.stride;
- uint16_t const* df_start = datagpu.data() + offset;
- for (uint32_t sample = 0u; sample < nsamples_gpu; sample++) {
- auto const cpuadc = cpudf[sample].adc();
- auto const gpuadc = hcal::adc_for_sample(df_start, sample);
- auto const cputdc = cpudf[sample].tdc();
- auto const gputdc = hcal::tdc_for_sample(df_start, sample);
-
- hADCf3HBGPU->Fill(gpuadc);
- hADCf3HBCPU->Fill(cpuadc);
- hADCf3HBGPUvsCPU->Fill(cpuadc, gpuadc);
- hTDCf3HBGPUvsCPU->Fill(cputdc, gputdc);
-
- // At RAW Decoding level there must not be any mistmatches
- // in the adc values at all!
- assert(static_cast(cpuadc) == gpuadc);
- assert(static_cast(cputdc) == gputdc);
- }
- }
- }
-
- if (ngpuf5hb != ncpuf5hb) {
- std::cerr << "*** mismatch in number of flavor 5 digis for event " << ie << std::endl
- << ">>> ngpuf5hb = " << ngpuf5hb << std::endl
- << ">>> ncpuf5hb = " << ncpuf5hb << std::endl;
- }
-
- {
- auto const& idsgpu = f5HBProduct.ids;
- auto const& datagpu = f5HBProduct.data;
- for (uint32_t i = 0; i < ncpuf5hb; i++) {
- auto const cpudf = qie8Product[i];
- auto const cpuid = cpudf.id().rawId();
- auto iter2idgpu = std::find(idsgpu.begin(), idsgpu.end(), cpuid);
- if (iter2idgpu == idsgpu.end()) {
- std::cerr << "missing " << HcalDetId{cpuid} << std::endl;
- continue;
- }
-
- assert(*iter2idgpu == cpuid);
-
- auto const ptrdiff = iter2idgpu - idsgpu.begin();
- auto const nsamples_gpu = hcal::compute_nsamples(f5HBProduct.stride);
- auto const nsamples_cpu = qie8Product[0].size();
- assert(static_cast(nsamples_cpu) == nsamples_gpu);
-
- uint32_t offset = ptrdiff * f5HBProduct.stride;
- uint16_t const* df_start = datagpu.data() + offset;
- for (uint32_t sample = 0u; sample < nsamples_gpu; sample++) {
- auto const cpuadc = cpudf.sample(sample).adc();
- auto const gpuadc = hcal::adc_for_sample(df_start, sample);
- auto const cpucapid = cpudf.sample(sample).capid();
- auto const gpucapid = hcal::capid_for_sample(df_start, sample);
-
- hADCf5HBGPU->Fill(gpuadc);
- hADCf5HBCPU->Fill(cpuadc);
- hADCf5HBGPUvsCPU->Fill(cpuadc, gpuadc);
-
- // the must for us at RAW Decoding stage
- assert(static_cast(cpuadc) == gpuadc);
- assert(static_cast(cpucapid) == gpucapid);
- }
- }
- }
- }
-
- {
- TCanvas c{"plots", "plots", 4200, 6200};
- c.Divide(3, 3);
- c.cd(1);
- {
- gPad->SetLogy();
- hADCf01HECPU->SetLineColor(kBlack);
- hADCf01HECPU->SetLineWidth(1.);
- hADCf01HECPU->Draw("");
- hADCf01HEGPU->SetLineColor(kBlue);
- hADCf01HEGPU->SetLineWidth(1.);
- hADCf01HEGPU->Draw("sames");
- gPad->Update();
- auto stats = (TPaveStats*)hADCf01HEGPU->FindObject("stats");
- auto y2 = stats->GetY2NDC();
- auto y1 = stats->GetY1NDC();
- stats->SetY2NDC(y1);
- stats->SetY1NDC(y1 - (y2 - y1));
- }
- c.cd(2);
- {
- gPad->SetLogy();
- hADCf5HBCPU->SetLineColor(kBlack);
- hADCf5HBCPU->SetLineWidth(1.);
- hADCf5HBCPU->Draw("");
- hADCf5HBGPU->SetLineColor(kBlue);
- hADCf5HBGPU->SetLineWidth(1.);
- hADCf5HBGPU->Draw("sames");
- gPad->Update();
- auto stats = (TPaveStats*)hADCf5HBGPU->FindObject("stats");
- auto y2 = stats->GetY2NDC();
- auto y1 = stats->GetY1NDC();
- stats->SetY2NDC(y1);
- stats->SetY1NDC(y1 - (y2 - y1));
- }
- c.cd(3);
- {
- gPad->SetLogy();
- hADCf3HBCPU->SetLineColor(kBlack);
- hADCf3HBCPU->SetLineWidth(1.);
- hADCf3HBCPU->Draw("");
- hADCf3HBGPU->SetLineColor(kBlue);
- hADCf3HBGPU->SetLineWidth(1.);
- hADCf3HBGPU->Draw("sames");
- gPad->Update();
- auto stats = (TPaveStats*)hADCf3HBGPU->FindObject("stats");
- auto y2 = stats->GetY2NDC();
- auto y1 = stats->GetY1NDC();
- stats->SetY2NDC(y1);
- stats->SetY1NDC(y1 - (y2 - y1));
- }
- c.cd(4);
- hADCf01HEGPUvsCPU->Draw("colz");
- c.cd(5);
- hADCf5HBGPUvsCPU->Draw("colz");
- c.cd(6);
- hADCf3HBGPUvsCPU->Draw("colz");
- c.cd(7);
- {
- gPad->SetLogy();
- hTDCf01HECPU->SetLineColor(kBlack);
- hTDCf01HECPU->SetLineWidth(1.);
- hTDCf01HECPU->Draw("");
- hTDCf01HEGPU->SetLineColor(kBlue);
- hTDCf01HEGPU->SetLineWidth(1.);
- hTDCf01HEGPU->Draw("sames");
- gPad->Update();
- auto stats = (TPaveStats*)hTDCf01HEGPU->FindObject("stats");
- auto y2 = stats->GetY2NDC();
- auto y1 = stats->GetY1NDC();
- stats->SetY2NDC(y1);
- stats->SetY1NDC(y1 - (y2 - y1));
- }
- c.cd(8);
- hTDCf01HEGPUvsCPU->Draw("colz");
- c.cd(9);
- hTDCf3HBGPUvsCPU->Draw("colz");
-
- c.SaveAs("plots.pdf");
- }
-
- rfin.Close();
- rfout.Write();
- rfout.Close();
-}
diff --git a/EventFilter/HcalRawToDigi/plugins/BuildFile.xml b/EventFilter/HcalRawToDigi/plugins/BuildFile.xml
index a3d283e9805b6..ad5c632ae409c 100644
--- a/EventFilter/HcalRawToDigi/plugins/BuildFile.xml
+++ b/EventFilter/HcalRawToDigi/plugins/BuildFile.xml
@@ -16,16 +16,6 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/EventFilter/HcalRawToDigi/plugins/DeclsForKernels.h b/EventFilter/HcalRawToDigi/plugins/DeclsForKernels.h
deleted file mode 100644
index 9903b77efb341..0000000000000
--- a/EventFilter/HcalRawToDigi/plugins/DeclsForKernels.h
+++ /dev/null
@@ -1,86 +0,0 @@
-#ifndef EventFilter_HcalRawToDigi_interface_DeclsForKernels_h
-#define EventFilter_HcalRawToDigi_interface_DeclsForKernels_h
-
-#include
-
-#include "CUDADataFormats/HcalDigi/interface/DigiCollection.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h"
-#include "HeterogeneousCore/CUDAUtilities/interface/host_unique_ptr.h"
-
-#include "ElectronicsMappingGPU.h"
-
-namespace hcal {
- namespace raw {
-
- constexpr int32_t empty_event_size = 32;
- constexpr uint32_t utca_nfeds_max = 50;
- constexpr uint32_t nbytes_per_fed_max = 10 * 1024;
-
- // each collection corresponds to a particular flavor with a certain number of
- // samples per digi
- constexpr uint32_t numOutputCollections = 3;
- constexpr uint8_t OutputF01HE = 0;
- constexpr uint8_t OutputF5HB = 1;
- constexpr uint8_t OutputF3HB = 2;
-
- struct ConfigurationParameters {
- uint32_t maxChannelsF01HE;
- uint32_t maxChannelsF5HB;
- uint32_t maxChannelsF3HB;
- uint32_t nsamplesF01HE;
- uint32_t nsamplesF5HB;
- uint32_t nsamplesF3HB;
- };
-
- struct InputDataCPU {
- cms::cuda::host::unique_ptr data;
- cms::cuda::host::unique_ptr offsets;
- cms::cuda::host::unique_ptr feds;
- };
-
- struct OutputDataCPU {
- cms::cuda::host::unique_ptr nchannels;
- };
-
- struct ScratchDataGPU {
- // depends on the number of output collections
- // that is a statically known predefined number
- cms::cuda::device::unique_ptr pChannelsCounters;
- };
-
- struct OutputDataGPU {
- DigiCollection digisF01HE;
- DigiCollection digisF5HB;
- DigiCollection digisF3HB;
-
- void allocate(ConfigurationParameters const &config, cudaStream_t cudaStream) {
- digisF01HE.data = cms::cuda::make_device_unique