Skip to content

Commit f55e6a5

Browse files
authored
Merge pull request #46453 from thomreis/ecalrechitproducer-alpaka-migration
ECAL RecHit producer Alpaka migration
2 parents 2febf4f + 5e09bb4 commit f55e6a5

File tree

47 files changed

+1848
-26
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+1848
-26
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#ifndef CondFormats_DataRecord_EcalRecHitConditionsRcd_h
2+
#define CondFormats_DataRecord_EcalRecHitConditionsRcd_h
3+
4+
#include "FWCore/Framework/interface/DependentRecordImplementation.h"
5+
6+
#include "CondFormats/DataRecord/interface/EcalADCToGeVConstantRcd.h"
7+
#include "CondFormats/DataRecord/interface/EcalChannelStatusRcd.h"
8+
#include "CondFormats/DataRecord/interface/EcalIntercalibConstantsRcd.h"
9+
#include "CondFormats/DataRecord/interface/EcalLaserAPDPNRatiosRcd.h"
10+
#include "CondFormats/DataRecord/interface/EcalLaserAPDPNRatiosRefRcd.h"
11+
#include "CondFormats/DataRecord/interface/EcalLaserAlphasRcd.h"
12+
#include "CondFormats/DataRecord/interface/EcalLinearCorrectionsRcd.h"
13+
#include "CondFormats/DataRecord/interface/EcalTimeCalibConstantsRcd.h"
14+
#include "CondFormats/DataRecord/interface/EcalTimeOffsetConstantRcd.h"
15+
16+
class EcalRecHitConditionsRcd
17+
: public edm::eventsetup::DependentRecordImplementation<EcalRecHitConditionsRcd,
18+
edm::mpl::Vector<EcalADCToGeVConstantRcd,
19+
EcalChannelStatusRcd,
20+
EcalIntercalibConstantsRcd,
21+
EcalLaserAPDPNRatiosRcd,
22+
EcalLaserAPDPNRatiosRefRcd,
23+
EcalLaserAlphasRcd,
24+
EcalLinearCorrectionsRcd,
25+
EcalTimeCalibConstantsRcd,
26+
EcalTimeOffsetConstantRcd>> {};
27+
#endif
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#include "CondFormats/DataRecord/interface/EcalRecHitConditionsRcd.h"
2+
#include "FWCore/Framework/interface/eventsetuprecord_registration_macro.h"
3+
4+
EVENTSETUP_RECORD_REG(EcalRecHitConditionsRcd);
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#ifndef CondFormats_EcalObjects_interface_EcalRecHitConditionsHost_h
2+
#define CondFormats_EcalObjects_interface_EcalRecHitConditionsHost_h
3+
4+
#include "CondFormats/EcalObjects/interface/EcalRecHitConditionsSoA.h"
5+
#include "DataFormats/Portable/interface/PortableHostCollection.h"
6+
#include "HeterogeneousCore/AlpakaInterface/interface/config.h"
7+
#include "HeterogeneousCore/AlpakaInterface/interface/memory.h"
8+
9+
using EcalRecHitConditionsHost = PortableHostCollection<EcalRecHitConditionsSoA>;
10+
11+
#endif
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
#ifndef CondFormats_EcalObjects_EcalRecHitConditionsSoA_h
2+
#define CondFormats_EcalObjects_EcalRecHitConditionsSoA_h
3+
4+
#include "DataFormats/SoATemplate/interface/SoACommon.h"
5+
#include "DataFormats/SoATemplate/interface/SoALayout.h"
6+
#include "DataFormats/SoATemplate/interface/SoAView.h"
7+
#include "DataFormats/Provenance/interface/Timestamp.h"
8+
9+
GENERATE_SOA_LAYOUT(EcalRecHitConditionsSoALayout,
10+
SOA_COLUMN(uint32_t, rawid),
11+
// energy intercalibrations
12+
SOA_COLUMN(float, intercalibConstants),
13+
// time intercalibrations
14+
SOA_COLUMN(float, timeCalibConstants),
15+
// channel status
16+
SOA_COLUMN(uint16_t, channelStatus),
17+
// laser APDPN ratios
18+
SOA_COLUMN(float, laserAPDPNRatios_p1),
19+
SOA_COLUMN(float, laserAPDPNRatios_p2),
20+
SOA_COLUMN(float, laserAPDPNRatios_p3),
21+
SOA_COLUMN(edm::TimeValue_t, laserAPDPNRatios_t1),
22+
SOA_COLUMN(edm::TimeValue_t, laserAPDPNRatios_t2),
23+
SOA_COLUMN(edm::TimeValue_t, laserAPDPNRatios_t3),
24+
// laser APDPN reference
25+
SOA_COLUMN(float, laserAPDPNref),
26+
// laser alphas
27+
SOA_COLUMN(float, laserAlpha),
28+
// linear corrections
29+
SOA_COLUMN(float, linearCorrections_p1),
30+
SOA_COLUMN(float, linearCorrections_p2),
31+
SOA_COLUMN(float, linearCorrections_p3),
32+
SOA_COLUMN(edm::TimeValue_t, linearCorrections_t1),
33+
SOA_COLUMN(edm::TimeValue_t, linearCorrections_t2),
34+
SOA_COLUMN(edm::TimeValue_t, linearCorrections_t3),
35+
// ADC to GeV constants
36+
SOA_SCALAR(float, adcToGeVConstantEB),
37+
SOA_SCALAR(float, adcToGeVConstantEE),
38+
// time offsets constants
39+
SOA_SCALAR(float, timeOffsetConstantEB),
40+
SOA_SCALAR(float, timeOffsetConstantEE),
41+
// offset for hashed ID access to EE items of columns
42+
SOA_SCALAR(uint32_t, offsetEE))
43+
44+
using EcalRecHitConditionsSoA = EcalRecHitConditionsSoALayout<>;
45+
46+
#endif
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#ifndef CondFormats_EcalObjects_EcalRecHitParameters_h
2+
#define CondFormats_EcalObjects_EcalRecHitParameters_h
3+
4+
#include <bitset>
5+
#include <array>
6+
7+
constexpr size_t kNEcalChannelStatusCodes = 16; // The HW supports 16 channel status codes
8+
using RecoFlagBitsArray =
9+
std::array<uint32_t, kNEcalChannelStatusCodes>; // associate recoFlagBits to all channel status codes
10+
11+
struct EcalRecHitParameters {
12+
RecoFlagBitsArray recoFlagBits;
13+
std::bitset<kNEcalChannelStatusCodes> channelStatusCodesToBeExcluded;
14+
};
15+
16+
#endif
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#ifndef CondFormats_EcalObjects_interface_EcalRecHitParametersHost_h
2+
#define CondFormats_EcalObjects_interface_EcalRecHitParametersHost_h
3+
4+
#include "CondFormats/EcalObjects/interface/EcalRecHitParameters.h"
5+
#include "DataFormats/Portable/interface/PortableHostObject.h"
6+
7+
using EcalRecHitParametersHost = PortableHostObject<EcalRecHitParameters>;
8+
9+
#endif
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#ifndef CondFormats_EcalObjects_interface_alpaka_EcalRecHitConditionsDevice_h
2+
#define CondFormats_EcalObjects_interface_alpaka_EcalRecHitConditionsDevice_h
3+
4+
#include "CondFormats/EcalObjects/interface/EcalRecHitConditionsHost.h"
5+
#include "CondFormats/EcalObjects/interface/EcalRecHitConditionsSoA.h"
6+
#include "DataFormats/Portable/interface/alpaka/PortableCollection.h"
7+
#include "HeterogeneousCore/AlpakaInterface/interface/config.h"
8+
#include "HeterogeneousCore/AlpakaInterface/interface/memory.h"
9+
10+
namespace ALPAKA_ACCELERATOR_NAMESPACE {
11+
12+
using ::EcalRecHitConditionsHost;
13+
using EcalRecHitConditionsDevice = PortableCollection<EcalRecHitConditionsSoA>;
14+
15+
} // namespace ALPAKA_ACCELERATOR_NAMESPACE
16+
17+
#endif
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#ifndef CondFormats_EcalObjects_interface_alpaka_EcalRecHitParametersDevice_h
2+
#define CondFormats_EcalObjects_interface_alpaka_EcalRecHitParametersDevice_h
3+
4+
#include "CondFormats/EcalObjects/interface/EcalRecHitParameters.h"
5+
#include "CondFormats/EcalObjects/interface/EcalRecHitParametersHost.h"
6+
#include "DataFormats/Portable/interface/alpaka/PortableObject.h"
7+
#include "HeterogeneousCore/AlpakaInterface/interface/config.h"
8+
9+
namespace ALPAKA_ACCELERATOR_NAMESPACE {
10+
11+
using ::EcalRecHitParametersHost;
12+
using EcalRecHitParametersDevice = PortableObject<EcalRecHitParameters>;
13+
14+
} // namespace ALPAKA_ACCELERATOR_NAMESPACE
15+
16+
ASSERT_DEVICE_MATCHES_HOST_COLLECTION(EcalRecHitParametersDevice, EcalRecHitParametersHost);
17+
18+
#endif
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#include "CondFormats/EcalObjects/interface/EcalRecHitConditionsHost.h"
2+
#include "FWCore/Utilities/interface/typelookup.h"
3+
4+
TYPELOOKUP_DATA_REG(EcalRecHitConditionsHost);
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#include "CondFormats/EcalObjects/interface/EcalRecHitParametersHost.h"
2+
#include "FWCore/Utilities/interface/typelookup.h"
3+
4+
TYPELOOKUP_DATA_REG(EcalRecHitParametersHost);

0 commit comments

Comments
 (0)