Skip to content

Commit 5e09bb4

Browse files
committed
Replace PortableCollection with PortableObject.
1 parent a3010a9 commit 5e09bb4

File tree

8 files changed

+40
-44
lines changed

8 files changed

+40
-44
lines changed
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: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
#ifndef CondFormats_EcalObjects_interface_EcalRecHitParametersHost_h
22
#define CondFormats_EcalObjects_interface_EcalRecHitParametersHost_h
33

4-
#include "CondFormats/EcalObjects/interface/EcalRecHitParametersSoA.h"
5-
#include "DataFormats/Portable/interface/PortableHostCollection.h"
6-
#include "HeterogeneousCore/AlpakaInterface/interface/config.h"
7-
#include "HeterogeneousCore/AlpakaInterface/interface/memory.h"
4+
#include "CondFormats/EcalObjects/interface/EcalRecHitParameters.h"
5+
#include "DataFormats/Portable/interface/PortableHostObject.h"
86

9-
using EcalRecHitParametersHost = PortableHostCollection<EcalRecHitParametersSoA>;
7+
using EcalRecHitParametersHost = PortableHostObject<EcalRecHitParameters>;
108

119
#endif

CondFormats/EcalObjects/interface/EcalRecHitParametersSoA.h

Lines changed: 0 additions & 21 deletions
This file was deleted.
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
#ifndef CondFormats_EcalObjects_interface_alpaka_EcalRecHitParametersDevice_h
22
#define CondFormats_EcalObjects_interface_alpaka_EcalRecHitParametersDevice_h
33

4+
#include "CondFormats/EcalObjects/interface/EcalRecHitParameters.h"
45
#include "CondFormats/EcalObjects/interface/EcalRecHitParametersHost.h"
5-
#include "CondFormats/EcalObjects/interface/EcalRecHitParametersSoA.h"
6-
#include "DataFormats/Portable/interface/alpaka/PortableCollection.h"
6+
#include "DataFormats/Portable/interface/alpaka/PortableObject.h"
77
#include "HeterogeneousCore/AlpakaInterface/interface/config.h"
8-
#include "HeterogeneousCore/AlpakaInterface/interface/memory.h"
98

109
namespace ALPAKA_ACCELERATOR_NAMESPACE {
1110

1211
using ::EcalRecHitParametersHost;
13-
using EcalRecHitParametersDevice = PortableCollection<EcalRecHitParametersSoA>;
12+
using EcalRecHitParametersDevice = PortableObject<EcalRecHitParameters>;
1413

1514
} // namespace ALPAKA_ACCELERATOR_NAMESPACE
1615

16+
ASSERT_DEVICE_MATCHES_HOST_COLLECTION(EcalRecHitParametersDevice, EcalRecHitParametersHost);
17+
1718
#endif

RecoLocalCalo/EcalRecProducers/plugins/alpaka/EcalRecHitBuilder.dev.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE::ecal::rechit {
4444
ebRecHits.view(),
4545
eeRecHits.view(),
4646
conditionsDev.const_view(),
47-
parametersDev.const_view(),
47+
parametersDev.const_data(),
4848
eventTime,
4949
configParams);
5050
} else {
@@ -54,7 +54,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE::ecal::rechit {
5454
ebUncalibRecHits->const_view(),
5555
ebRecHits.view(),
5656
conditionsDev.const_view(),
57-
parametersDev.const_view(),
57+
parametersDev.const_data(),
5858
eventTime,
5959
configParams);
6060
}

RecoLocalCalo/EcalRecProducers/plugins/alpaka/EcalRecHitParametersESProducer.cc

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,11 @@
22
#include "FWCore/ParameterSet/interface/ParameterSet.h"
33

44
#include "CondFormats/EcalObjects/interface/EcalChannelStatusCode.h"
5-
#include "CondFormats/EcalObjects/interface/EcalRecHitParametersSoA.h"
5+
#include "CondFormats/EcalObjects/interface/EcalRecHitParameters.h"
66
#include "CondFormats/EcalObjects/interface/alpaka/EcalRecHitParametersDevice.h"
77

8+
#include "DataFormats/EcalRecHit/interface/EcalRecHit.h"
9+
810
#include "HeterogeneousCore/AlpakaCore/interface/alpaka/ESGetToken.h"
911
#include "HeterogeneousCore/AlpakaCore/interface/alpaka/ESProducer.h"
1012
#include "HeterogeneousCore/AlpakaCore/interface/alpaka/ModuleFactory.h"
@@ -81,13 +83,12 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE {
8183

8284
std::unique_ptr<EcalRecHitParametersHost> EcalRecHitParametersESProducer::produce(
8385
JobConfigurationGPURecord const& iRecord) {
84-
size_t const sizeone = 1;
85-
auto product = std::make_unique<EcalRecHitParametersHost>(sizeone, cms::alpakatools::host());
86-
auto view = product->view();
86+
auto product = std::make_unique<EcalRecHitParametersHost>(cms::alpakatools::host());
87+
auto value = product->value();
8788

88-
std::memcpy(view.recoFlagBits().data(), recoFlagBitsArray_.data(), sizeof(uint32_t) * recoFlagBitsArray_.size());
89+
std::memcpy(value.recoFlagBits.data(), recoFlagBitsArray_.data(), sizeof(uint32_t) * recoFlagBitsArray_.size());
8990

90-
view.channelStatusCodesToBeExcluded() = channelStatusCodesToBeExcluded_;
91+
value.channelStatusCodesToBeExcluded = channelStatusCodesToBeExcluded_;
9192

9293
return product;
9394
}

RecoLocalCalo/EcalRecProducers/plugins/alpaka/EnergyComputationKernels.dev.cc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE::ecal::rechit {
2222
uint32_t* flagBits,
2323
uint32_t* extra,
2424
EcalRecHitConditionsDevice::ConstView conditionsDev,
25-
EcalRecHitParametersDevice::ConstView parametersDev,
25+
EcalRecHitParametersDevice::Product const* parametersDev,
2626
// time, used for time dependent corrections
2727
edm::TimeValue_t const& eventTime,
2828
// configuration
@@ -160,14 +160,14 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE::ecal::rechit {
160160

161161
auto const dbChStatus = static_cast<EcalChannelStatusCode::Code>(conditionsDev.channelStatus()[hashedId] &
162162
EcalChannelStatusCode::chStatusMask);
163-
auto const& exclChStatCodes = parametersDev.channelStatusCodesToBeExcluded();
163+
auto const& exclChStatCodes = parametersDev->channelStatusCodesToBeExcluded;
164164
if (exclChStatCodes[dbChStatus]) {
165165
// skip the channel if the channel status bit is set and should be excluded
166166
return;
167167
}
168168

169169
// Take our association map of dbChStatuses-> recHit flagbits and return the appropriate flagbit word
170-
auto const& recoFlagBits = parametersDev.recoFlagBits()[dbChStatus];
170+
auto const& recoFlagBits = parametersDev->recoFlagBits[dbChStatus];
171171
flagBits[inputCh] = recoFlagBits;
172172

173173
if ((flagmask & recoFlagBits) && killDeadChannels) {

RecoLocalCalo/EcalRecProducers/plugins/alpaka/EnergyComputationKernels.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
#include "CondFormats/EcalObjects/interface/alpaka/EcalRecHitParametersDevice.h"
88
#include "DataFormats/EcalRecHit/interface/alpaka/EcalRecHitDeviceCollection.h"
99
#include "DataFormats/EcalRecHit/interface/alpaka/EcalUncalibratedRecHitDeviceCollection.h"
10+
#include "DataFormats/EcalRecHit/interface/EcalRecHit.h"
1011
#include "DataFormats/EcalRecHit/interface/EcalUncalibratedRecHit.h"
1112
#include "DataFormats/Provenance/interface/Timestamp.h"
1213

@@ -41,7 +42,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE::ecal::rechit {
4142
uint32_t* flagBits,
4243
uint32_t* extra,
4344
EcalRecHitConditionsDevice::ConstView conditionsDev,
44-
EcalRecHitParametersDevice::ConstView parametersDev,
45+
EcalRecHitParametersDevice::Product const* parametersDev,
4546
// time, used for time dependent corrections
4647
edm::TimeValue_t const& eventTime,
4748
// configuration
@@ -60,7 +61,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE::ecal::rechit {
6061
EcalUncalibratedRecHitDeviceCollection::ConstView uncalibRecHits,
6162
EcalRecHitDeviceCollection::View recHits,
6263
EcalRecHitConditionsDevice::ConstView conditionsDev,
63-
EcalRecHitParametersDevice::ConstView parametersDev,
64+
EcalRecHitParametersDevice::Product const* parametersDev,
6465
// time, used for time dependent corrections
6566
edm::TimeValue_t const& eventTime,
6667
ConfigurationParameters const& configParams) const {
@@ -109,7 +110,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE::ecal::rechit {
109110
EcalRecHitDeviceCollection::View ebRecHits,
110111
EcalRecHitDeviceCollection::View eeRecHits,
111112
EcalRecHitConditionsDevice::ConstView conditionsDev,
112-
EcalRecHitParametersDevice::ConstView parametersDev,
113+
EcalRecHitParametersDevice::Product const* parametersDev,
113114
// time, used for time dependent corrections
114115
edm::TimeValue_t const& eventTime,
115116
ConfigurationParameters const& configParams) const {

0 commit comments

Comments
 (0)