Skip to content
Closed
5 changes: 5 additions & 0 deletions Configuration/ProcessModifiers/python/stripNtupletFit_cff.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import FWCore.ParameterSet.Config as cms

# This modifier can be used in combination with pixelNtupletFit to include strip hits in the tracks

stripNtupletFit = cms.Modifier()
3 changes: 2 additions & 1 deletion Configuration/PyReleaseValidation/python/relval_gpu.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,12 @@
# 2024 with PU, Alpaka-based
17034.402, 17034.403, 17034.404,
17034.406, 17034.407, 17034.408,
17034.409,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please follow the existing numbering scheme, and introduce workflows for

  • regular reconstruction
  • GPU vs CPU validation
  • profiling

17034.412, 17034.413, #17034.414
17034.422, 17034.423, 17034.424,
#17034.482, 17034.483, 17034.484
#17034.486, 17034.487, 17034.488
17034.492, 17034.493,
17034.492, 17034.493, 17034.409,
17050.402, 17050.403, 17050.404,
17050.406, 17050.407, 17050.408,
17061.402,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1402,6 +1402,20 @@ def setup_(self, step, stepName, stepDict, k, properties):
offset = 0.408,
)

upgradeWFs['PatatrackPixelPlusStripAlpaka'] = PatatrackWorkflow(
digi = {
'--procModifiers': 'alpaka',
'--customise': 'HLTrigger/Configuration/customizeHLTforAlpakaStripNoDoubletRecovery.customizeHLTforAlpakaStripNoDoubletRecovery'
},
reco = {
'-s': 'RAW2DIGI,RECO',
'--procModifiers': 'alpaka,stripNtupletFit'
},
harvest = None,
suffix = 'Patatrack_PixelPlusStripAlpaka',
offset = 0.409,
)

# end of Patatrack workflows
###############################################################################################################

Expand Down
5 changes: 4 additions & 1 deletion DQM/SiPixelHeterogeneous/plugins/SiPixelCompareRecHitsSoA.cc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
#include "Geometry/CommonTopologies/interface/PixelTopology.h"
#include "DataFormats/SiPixelDetId/interface/PixelSubdetector.h"
#include "Geometry/Records/interface/TrackerDigiGeometryRecord.h"

#include "Geometry/CommonTopologies/interface/SimpleSeedingLayersTopology.h"
template <typename T>
class SiPixelCompareRecHitsSoA : public DQMEDAnalyzer {
public:
Expand Down Expand Up @@ -246,9 +246,12 @@ void SiPixelCompareRecHitsSoA<T>::fillDescriptions(edm::ConfigurationDescription
}

using SiPixelPhase1CompareRecHitsSoA = SiPixelCompareRecHitsSoA<pixelTopology::Phase1>;
using SiPixelPhase1StripCompareRecHitsSoA = SiPixelCompareRecHitsSoA<pixelTopology::Phase1Strip>;
using SiPixelPhase2CompareRecHitsSoA = SiPixelCompareRecHitsSoA<pixelTopology::Phase2>;
using SiPixelHIonPhase1CompareRecHitsSoA = SiPixelCompareRecHitsSoA<pixelTopology::HIonPhase1>;

#include "FWCore/Framework/interface/MakerMacros.h"
DEFINE_FWK_MODULE(SiPixelPhase1CompareRecHitsSoA);
DEFINE_FWK_MODULE(SiPixelPhase1StripCompareRecHitsSoA);
DEFINE_FWK_MODULE(SiPixelPhase2CompareRecHitsSoA);
DEFINE_FWK_MODULE(SiPixelHIonPhase1CompareRecHitsSoA);
3 changes: 3 additions & 0 deletions DQM/SiPixelHeterogeneous/plugins/SiPixelCompareTrackSoA.cc
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
#include "DQMServices/Core/interface/DQMStore.h"
#include "CUDADataFormats/Track/interface/TrackSoAHeterogeneousHost.h"
#include "CUDADataFormats/Track/interface/TrackSoAHeterogeneousDevice.h"
#include "Geometry/CommonTopologies/interface/SimpleSeedingLayersTopology.h"
// for string manipulations
#include <fmt/printf.h>

Expand Down Expand Up @@ -362,7 +363,9 @@ void SiPixelCompareTrackSoA<T>::fillDescriptions(edm::ConfigurationDescriptions&
using SiPixelPhase1CompareTrackSoA = SiPixelCompareTrackSoA<pixelTopology::Phase1>;
using SiPixelPhase2CompareTrackSoA = SiPixelCompareTrackSoA<pixelTopology::Phase2>;
using SiPixelHIonPhase1CompareTrackSoA = SiPixelCompareTrackSoA<pixelTopology::HIonPhase1>;
using SiPixelPhase1StripCompareTrackSoA = SiPixelCompareTrackSoA<pixelTopology::Phase1Strip>;

DEFINE_FWK_MODULE(SiPixelPhase1CompareTrackSoA);
DEFINE_FWK_MODULE(SiPixelPhase1StripCompareTrackSoA);
DEFINE_FWK_MODULE(SiPixelPhase2CompareTrackSoA);
DEFINE_FWK_MODULE(SiPixelHIonPhase1CompareTrackSoA);
Original file line number Diff line number Diff line change
Expand Up @@ -189,10 +189,12 @@ void SiPixelMonitorRecHitsSoAAlpaka<T>::fillDescriptions(edm::ConfigurationDescr
}

using SiPixelPhase1MonitorRecHitsSoAAlpaka = SiPixelMonitorRecHitsSoAAlpaka<pixelTopology::Phase1>;
using SiPixelPhase1StripMonitorRecHitsSoAAlpaka = SiPixelMonitorRecHitsSoAAlpaka<pixelTopology::Phase1Strip>;
using SiPixelPhase2MonitorRecHitsSoAAlpaka = SiPixelMonitorRecHitsSoAAlpaka<pixelTopology::Phase2>;
using SiPixelHIonPhase1MonitorRecHitsSoAAlpaka = SiPixelMonitorRecHitsSoAAlpaka<pixelTopology::HIonPhase1>;

#include "FWCore/Framework/interface/MakerMacros.h"
DEFINE_FWK_MODULE(SiPixelPhase1MonitorRecHitsSoAAlpaka);
DEFINE_FWK_MODULE(SiPixelPhase1StripMonitorRecHitsSoAAlpaka);
DEFINE_FWK_MODULE(SiPixelPhase2MonitorRecHitsSoAAlpaka);
DEFINE_FWK_MODULE(SiPixelHIonPhase1MonitorRecHitsSoAAlpaka);
3 changes: 3 additions & 0 deletions DQM/SiPixelHeterogeneous/plugins/SiPixelMonitorTrackSoA.cc
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
#include "DQMServices/Core/interface/DQMStore.h"
#include "CUDADataFormats/Track/interface/PixelTrackUtilities.h"
#include "CUDADataFormats/Track/interface/TrackSoAHeterogeneousHost.h"
#include "Geometry/CommonTopologies/interface/SimpleSeedingLayersTopology.h"
// for string manipulations
#include <fmt/printf.h>

Expand Down Expand Up @@ -195,7 +196,9 @@ void SiPixelMonitorTrackSoA<T>::fillDescriptions(edm::ConfigurationDescriptions&
using SiPixelPhase1MonitorTrackSoA = SiPixelMonitorTrackSoA<pixelTopology::Phase1>;
using SiPixelPhase2MonitorTrackSoA = SiPixelMonitorTrackSoA<pixelTopology::Phase2>;
using SiPixelHIonPhase1MonitorTrackSoA = SiPixelMonitorTrackSoA<pixelTopology::HIonPhase1>;
using SiPixelPhase1StripMonitorTrackSoA = SiPixelMonitorTrackSoA<pixelTopology::Phase1Strip>;

DEFINE_FWK_MODULE(SiPixelPhase1MonitorTrackSoA);
DEFINE_FWK_MODULE(SiPixelPhase2MonitorTrackSoA);
DEFINE_FWK_MODULE(SiPixelHIonPhase1MonitorTrackSoA);
DEFINE_FWK_MODULE(SiPixelPhase1StripMonitorTrackSoA);
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@
#include "DQMServices/Core/interface/DQMStore.h"
#include "DataFormats/TrackSoA/interface/TracksHost.h"

#include "Geometry/CommonTopologies/interface/SimpleSeedingLayersTopology.h"

template <typename T>
class SiPixelMonitorTrackSoAAlpaka : public DQMEDAnalyzer {
public:
Expand Down Expand Up @@ -195,7 +197,9 @@ void SiPixelMonitorTrackSoAAlpaka<T>::fillDescriptions(edm::ConfigurationDescrip
using SiPixelPhase1MonitorTrackSoAAlpaka = SiPixelMonitorTrackSoAAlpaka<pixelTopology::Phase1>;
using SiPixelPhase2MonitorTrackSoAAlpaka = SiPixelMonitorTrackSoAAlpaka<pixelTopology::Phase2>;
using SiPixelHIonPhase1MonitorTrackSoAAlpaka = SiPixelMonitorTrackSoAAlpaka<pixelTopology::HIonPhase1>;
using SiPixelPhase1StripMonitorTrackSoAAlpaka = SiPixelMonitorTrackSoAAlpaka<pixelTopology::Phase1Strip>;

DEFINE_FWK_MODULE(SiPixelPhase1MonitorTrackSoAAlpaka);
DEFINE_FWK_MODULE(SiPixelPhase2MonitorTrackSoAAlpaka);
DEFINE_FWK_MODULE(SiPixelHIonPhase1MonitorTrackSoAAlpaka);
DEFINE_FWK_MODULE(SiPixelPhase1StripMonitorTrackSoAAlpaka);
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
from DQM.SiPixelHeterogeneous.siPixelPhase2MonitorTrackSoA_cfi import *
from DQM.SiPixelHeterogeneous.siPixelHIonPhase1MonitorTrackSoA_cfi import *
from DQM.SiPixelHeterogeneous.siPixelMonitorVertexSoA_cfi import *
from DQM.SiPixelHeterogeneous.siPixelPhase1StripMonitorTrackSoA_cfi import *
# Alpaka Modules
from Configuration.ProcessModifiers.alpaka_cff import alpaka
from DQM.SiPixelHeterogeneous.siPixelPhase1MonitorRecHitsSoAAlpaka_cfi import *
Expand All @@ -17,6 +18,8 @@
from DQM.SiPixelHeterogeneous.siPixelHIonPhase1MonitorTrackSoAAlpaka_cfi import *
from DQM.SiPixelHeterogeneous.siPixelMonitorVertexSoAAlpaka_cfi import *



Comment on lines +21 to +22
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change

# Run-3 sequence
monitorpixelSoASource = cms.Sequence(siPixelPhase1MonitorRecHitsSoA * siPixelPhase1MonitorTrackSoA * siPixelMonitorVertexSoA)
# Run-3 Alpaka sequence
Expand Down Expand Up @@ -45,6 +48,7 @@
from DQM.SiPixelHeterogeneous.siPixelPhase1CompareTrackSoA_cfi import *
from DQM.SiPixelHeterogeneous.siPixelPhase2CompareTrackSoA_cfi import *
from DQM.SiPixelHeterogeneous.siPixelHIonPhase1CompareTrackSoA_cfi import *
from DQM.SiPixelHeterogeneous.siPixelPhase1StripCompareTrackSoA_cfi import *
from DQM.SiPixelHeterogeneous.siPixelCompareVertexSoA_cfi import *
from DQM.SiPixelHeterogeneous.siPixelPhase1RawDataErrorComparator_cfi import *
from DQM.SiPixelPhase1Common.SiPixelPhase1RawData_cfi import *
Expand Down Expand Up @@ -211,6 +215,33 @@
topFolderName = cms.string('SiPixelHeterogeneous/PixelVertexDevice')
)

monitorPixelTracksAlpaka = cms.Sequence(siPixelTrackSoAMonitorSerial *
siPixelTrackSoAMonitorDevice *
siPixelPhase1CompareTrackSoA)

# PixelTracks: monitor of CPUSerial product (Alpaka backend: 'serial_sync')
siPixelTrackSoAMonitorSerialStrip = siPixelPhase1StripMonitorTrackSoA.clone(
pixelTrackSrc = cms.InputTag('pixelTracksAlpakaSerial'),
topFolderName = cms.string('SiPixelHeterogeneous/PixelTrackSerial')
)

# PixelTracks: monitor of CPUSerial product (Alpaka backend: 'serial_sync')
siPixelTrackSoAMonitorDeviceStrip = siPixelPhase1StripMonitorTrackSoA.clone(
pixelTrackSrc = cms.InputTag('pixelTracksAlpaka'),
topFolderName = cms.string('SiPixelHeterogeneous/PixelTrackDevice')
)

monitorPixelTracksAlpakaStrip = cms.Sequence( siPixelTrackSoAMonitorSerialStrip *
siPixelTrackSoAMonitorDeviceStrip *
siPixelPhase1StripCompareTrackSoA)


from Configuration.ProcessModifiers.stripNtupletFit_cff import stripNtupletFit
stripNtupletFit.toReplaceWith(monitorPixelTracksAlpaka, monitorPixelTracksAlpakaStrip)
stripNtupletFit.toReplaceWith(siPixelPhase1CompareTrackSoA, siPixelPhase1StripCompareTrackSoA)
stripNtupletFit.toReplaceWith(siPixelTrackSoAMonitorSerial, siPixelTrackSoAMonitorSerial)
stripNtupletFit.toReplaceWith(siPixelTrackSoAMonitorDevice, siPixelTrackSoAMonitorDevice)

# Run-3 sequence
monitorpixelSoACompareSource = cms.Sequence(siPixelPhase1MonitorRawDataACPU *
siPixelPhase1MonitorRawDataAGPU *
Expand Down
3 changes: 2 additions & 1 deletion DataFormats/TrackSoA/interface/TracksHost.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@
#include <cstdint>

#include <alpaka/alpaka.hpp>

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please add back the empty line

#include "DataFormats/Common/interface/Uninitialized.h"
#include "DataFormats/Portable/interface/PortableHostCollection.h"
#include "DataFormats/TrackSoA/interface/TrackDefinitions.h"
#include "DataFormats/TrackSoA/interface/TracksSoA.h"
#include "Geometry/CommonTopologies/interface/SimplePixelTopology.h"
#include "Geometry/CommonTopologies/interface/SimpleSeedingLayersTopology.h"

// TODO: The class is created via inheritance of the PortableHostCollection.
// This is generally discouraged, and should be done via composition.
Expand Down Expand Up @@ -42,6 +42,7 @@ namespace pixelTrack {
using TracksHostPhase1 = TracksHost<pixelTopology::Phase1>;
using TracksHostPhase2 = TracksHost<pixelTopology::Phase2>;
using TracksHostHIonPhase1 = TracksHost<pixelTopology::HIonPhase1>;
using TracksHostPhase1Strip = TracksHost<pixelTopology::Phase1Strip>;

} // namespace pixelTrack

Expand Down
17 changes: 12 additions & 5 deletions DataFormats/TrackSoA/interface/TracksSoA.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

#include "HeterogeneousCore/AlpakaInterface/interface/OneToManyAssoc.h"
#include "Geometry/CommonTopologies/interface/SimplePixelTopology.h"
#include "Geometry/CommonTopologies/interface/SimpleSeedingLayersTopology.h"
#include "DataFormats/SoATemplate/interface/SoALayout.h"
#include "DataFormats/TrackSoA/interface/TrackDefinitions.h"

Expand Down Expand Up @@ -66,33 +67,39 @@ namespace reco {
struct IsTrackSoAConstView<TrackSoAConstView<pixelTopology::HIonPhase1>> : std::true_type {};
template <>
struct IsTrackSoAConstView<TrackSoAView<pixelTopology::HIonPhase1>> : std::true_type {};
template <>
struct IsTrackSoAConstView<TrackSoAConstView<pixelTopology::Phase1Strip>> : std::true_type {};
template <>
struct IsTrackSoAConstView<TrackSoAView<pixelTopology::Phase1Strip>> : std::true_type {};

template <typename T>
constexpr bool isTrackSoAConstView = IsTrackSoAConstView<T>::value;

template <typename ConstView, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
// enable_if should be used when there is another implementation,
// please use static_assert to report invalid template arguments
Comment on lines +78 to +79
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess we disagree on how to write C++ code.

template <typename ConstView> //, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
ALPAKA_FN_HOST_ACC ALPAKA_FN_INLINE constexpr float charge(ConstView const& tracks, int32_t i) {
//was: std::copysign(1.f, tracks[i].state()(2)). Will be constexpr with C++23
float v = tracks[i].state()(2);
return float((0.0f < v) - (v < 0.0f));
}

template <typename ConstView, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
template <typename ConstView> //, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
ALPAKA_FN_HOST_ACC ALPAKA_FN_INLINE constexpr float phi(ConstView const& tracks, int32_t i) {
return tracks[i].state()(0);
}

template <typename ConstView, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
template <typename ConstView> //, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
ALPAKA_FN_HOST_ACC ALPAKA_FN_INLINE constexpr float tip(ConstView const& tracks, int32_t i) {
return tracks[i].state()(1);
}

template <typename ConstView, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
template <typename ConstView> //, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
ALPAKA_FN_HOST_ACC ALPAKA_FN_INLINE constexpr float zip(ConstView const& tracks, int32_t i) {
return tracks[i].state()(4);
}

template <typename ConstView, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
template <typename ConstView> //, typename = std::enable_if_t<isTrackSoAConstView<ConstView>>>
ALPAKA_FN_HOST_ACC ALPAKA_FN_INLINE constexpr bool isTriplet(ConstView const& tracks, int32_t i) {
return tracks[i].nLayers() == 3;
}
Expand Down
2 changes: 2 additions & 0 deletions DataFormats/TrackSoA/interface/alpaka/TrackUtilities.h
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,7 @@ namespace pixelTrack {

float pt = std::min<float>(tracks.pt(it), chi2MaxPt);
float chi2Cut = chi2Scale * (chi2Coeff[0] + roughLog(pt) * chi2Coeff[1]);
//chi2Cut = chi2Scale;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what does this comment mean ?

if (tracks.chi2(it) >= chi2Cut) {
#ifdef NTUPLE_FIT_DEBUG
printf("Bad chi2 %d pt %f eta %f chi2 %f\n", it, tracks.pt(it), tracks.eta(it), tracks.chi2(it));
Expand Down Expand Up @@ -173,6 +174,7 @@ namespace pixelTrack {

// TODO: Should those be placed in the ALPAKA_ACCELERATOR_NAMESPACE
template struct TracksUtilities<pixelTopology::Phase1>;
template struct TracksUtilities<pixelTopology::Phase1Strip>;
template struct TracksUtilities<pixelTopology::Phase2>;

#endif // DataFormats_TrackSoA_interface_alpaka_TrackUtilities_h
4 changes: 3 additions & 1 deletion DataFormats/TrackSoA/interface/alpaka/TracksSoACollection.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#include "DataFormats/Portable/interface/alpaka/PortableCollection.h"
#include "DataFormats/TrackSoA/interface/TracksDevice.h"
#include "DataFormats/TrackSoA/interface/TracksHost.h"
#include "Geometry/CommonTopologies/interface/SimplePixelTopology.h"
#include "Geometry/CommonTopologies/interface/SimpleSeedingLayersTopology.h"
#include "HeterogeneousCore/AlpakaInterface/interface/AssertDeviceMatchesHostCollection.h"
#include "HeterogeneousCore/AlpakaInterface/interface/CopyToHost.h"
#include "HeterogeneousCore/AlpakaInterface/interface/config.h"
Expand All @@ -29,6 +29,7 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE {
using TracksSoACollectionPhase1 = TracksSoACollection<pixelTopology::Phase1>;
using TracksSoACollectionPhase2 = TracksSoACollection<pixelTopology::Phase2>;
using TracksSoACollectionHIonPhase1 = TracksSoACollection<pixelTopology::HIonPhase1>;
using TracksSoACollectionPhase1Strip = TracksSoACollection<pixelTopology::Phase1Strip>;
} // namespace pixelTrack
} // namespace ALPAKA_ACCELERATOR_NAMESPACE

Expand All @@ -50,5 +51,6 @@ namespace cms::alpakatools {
ASSERT_DEVICE_MATCHES_HOST_COLLECTION(pixelTrack::TracksSoACollectionPhase1, pixelTrack::TracksHostPhase1);
ASSERT_DEVICE_MATCHES_HOST_COLLECTION(pixelTrack::TracksSoACollectionPhase2, pixelTrack::TracksHostPhase2);
ASSERT_DEVICE_MATCHES_HOST_COLLECTION(pixelTrack::TracksSoACollectionHIonPhase1, pixelTrack::TracksHostHIonPhase1);
ASSERT_DEVICE_MATCHES_HOST_COLLECTION(pixelTrack::TracksSoACollectionPhase1Strip, pixelTrack::TracksHostPhase1Strip);

#endif // DataFormats_TrackSoA_interface_alpaka_TracksSoACollection_h
5 changes: 5 additions & 0 deletions DataFormats/TrackSoA/src/alpaka/classes_cuda_def.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,9 @@
<class name="alpaka_cuda_async::pixelTrack::TracksSoACollectionPhase2" persistent="false"/>
<class name="edm::DeviceProduct<alpaka_cuda_async::pixelTrack::TracksSoACollectionPhase2>" persistent="false"/>
<class name="edm::Wrapper<edm::DeviceProduct<alpaka_cuda_async::pixelTrack::TracksSoACollectionPhase2>>" persistent="false"/>

<class name="alpaka_cuda_async::PortableCollection<reco::TrackLayout<pixelTopology::Phase1Strip>>" persistent="false"/>
<class name="alpaka_cuda_async::pixelTrack::TracksSoACollectionPhase1Strip" persistent="false"/>
<class name="edm::DeviceProduct<alpaka_cuda_async::pixelTrack::TracksSoACollectionPhase1Strip>" persistent="false"/>
<class name="edm::Wrapper<edm::DeviceProduct<alpaka_cuda_async::pixelTrack::TracksSoACollectionPhase1Strip>>" persistent="false"/>
</lcgdict>
5 changes: 5 additions & 0 deletions DataFormats/TrackSoA/src/alpaka/classes_rocm_def.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,9 @@
<class name="alpaka_rocm_async::pixelTrack::TracksSoACollectionPhase2" persistent="false"/>
<class name="edm::DeviceProduct<alpaka_rocm_async::pixelTrack::TracksSoACollectionPhase2>" persistent="false"/>
<class name="edm::Wrapper<edm::DeviceProduct<alpaka_rocm_async::pixelTrack::TracksSoACollectionPhase2>>" persistent="false"/>

<class name="alpaka_rocm_async::PortableCollection<reco::TrackLayout<pixelTopology::Phase1Strip>>" persistent="false"/>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

indentation

<class name="alpaka_rocm_async::pixelTrack::TracksSoACollectionPhase1Strip" persistent="false"/>
<class name="edm::DeviceProduct<alpaka_rocm_async::pixelTrack::TracksSoACollectionPhase1Strip>" persistent="false"/>
<class name="edm::Wrapper<edm::DeviceProduct<alpaka_rocm_async::pixelTrack::TracksSoACollectionPhase1Strip>>" persistent="false"/>
</lcgdict>
3 changes: 2 additions & 1 deletion DataFormats/TrackSoA/src/classes.cc
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
#include "DataFormats/Portable/interface/PortableHostCollectionReadRules.h"
#include "DataFormats/TrackSoA/interface/TracksSoA.h"
#include "Geometry/CommonTopologies/interface/SimplePixelTopology.h"
#include "Geometry/CommonTopologies/interface/SimpleSeedingLayersTopology.h"

using namespace reco;

SET_PORTABLEHOSTCOLLECTION_READ_RULES(PortableHostCollection<TrackLayout<pixelTopology::Phase1>>);
SET_PORTABLEHOSTCOLLECTION_READ_RULES(PortableHostCollection<TrackLayout<pixelTopology::Phase2>>);
// SET_PORTABLEHOSTCOLLECTION_READ_RULES(PortableHostCollection<TrackLayout<pixelTopology::HIonPhase1>>); //TODO: For the moment we live without HIons
SET_PORTABLEHOSTCOLLECTION_READ_RULES(PortableHostCollection<TrackLayout<pixelTopology::Phase1Strip>>);
10 changes: 10 additions & 0 deletions DataFormats/TrackSoA/src/classes_def.xml
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,14 @@
<class name="PortableHostCollection<reco::TrackLayout<pixelTopology::HIonPhase1>>"/>
<class name="pixelTrack::TracksHostHIonPhase1"/>
<class name="edm::Wrapper<pixelTrack::TracksHostHIonPhase1>" splitLevel="0"/>

<class name="reco::TrackSoA<pixelTopology::Phase1Strip>"/>
<class name="reco::TrackSoA<pixelTopology::Phase1Strip>::Layout<>"/>
<class name="reco::TrackLayout<pixelTopology::Phase1Strip>"/>
<class name="reco::TrackSoAView<pixelTopology::Phase1Strip>"/>

<class name="PortableHostCollection<reco::TrackLayout<pixelTopology::Phase1Strip>>"/>
<class name="pixelTrack::TracksHostPhase1Strip">
</class>
<class name="edm::Wrapper<pixelTrack::TracksHostPhase1Strip>" splitLevel="0"/>
</lcgdict>
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
#include "DataFormats/Portable/interface/PortableDeviceCollection.h"
#include "DataFormats/TrackingRecHitSoA/interface/TrackingRecHitsHost.h"
#include "DataFormats/TrackingRecHitSoA/interface/TrackingRecHitsSoA.h"
#include "Geometry/CommonTopologies/interface/SimpleSeedingLayersTopology.h"

template <typename TrackerTraits, typename TDev>
class TrackingRecHitDevice : public PortableDeviceCollection<TrackingRecHitLayout<TrackerTraits>, TDev> {
Expand Down
Loading