|
template<typename TAcc , typename = std::enable_if_t<alpaka::isAccelerator<TAcc>>> |
ALPAKA_FN_ACC void | operator() (const TAcc &acc, reco::PFClusteringVarsDeviceCollection::View pfClusteringVars, const reco::PFClusterParamsDeviceCollection::ConstView pfClusParams, const reco::PFRecHitHCALTopologyDeviceCollection::ConstView topology, const reco::PFRecHitHostCollection::ConstView pfRecHits, reco::PFClusterDeviceCollection::View clusterView, reco::PFRecHitFractionDeviceCollection::View fracView, uint32_t *__restrict__ nSeeds) const |
|
◆ operator()()
template<typename TAcc , typename = std::enable_if_t<alpaka::isAccelerator<TAcc>>>
ALPAKA_FN_ACC void ALPAKA_ACCELERATOR_NAMESPACE::SeedingTopoThresh::operator() |
( |
const TAcc & |
acc, |
|
|
reco::PFClusteringVarsDeviceCollection::View |
pfClusteringVars, |
|
|
const reco::PFClusterParamsDeviceCollection::ConstView |
pfClusParams, |
|
|
const reco::PFRecHitHCALTopologyDeviceCollection::ConstView |
topology, |
|
|
const reco::PFRecHitHostCollection::ConstView |
pfRecHits, |
|
|
reco::PFClusterDeviceCollection::View |
clusterView, |
|
|
reco::PFRecHitFractionDeviceCollection::View |
fracView, |
|
|
uint32_t *__restrict__ |
nSeeds |
|
) |
| const |
|
inline |
Definition at line 1087 of file PFClusterSoAProducerKernel.dev.cc.
References cms::cudacompat::atomicAdd(), cms::alpakatools::elements_with_stride(), hcalRecHitTable_cff::energy, PFLayer::HCAL_BARREL1, PFLayer::HCAL_ENDCAP, mps_fire::i, dqmdumpme::k, cms::alpakatools::once_per_grid(), HLT_2024v10_cff::pfRecHits, HLT_2024v10_cff::pt2, and HLT_2024v10_cff::topology.
1098 clusterView.size() = nRH;
1103 pfClusteringVars[
i].pfrh_isSeed() = 0;
1104 pfClusteringVars[
i].rhCount() = 0;
1105 pfClusteringVars[
i].topoSeedCount() = 0;
1106 pfClusteringVars[
i].topoRHCount() = 0;
1107 pfClusteringVars[
i].seedFracOffsets() = -1;
1108 pfClusteringVars[
i].topoSeedOffsets() = -1;
1109 pfClusteringVars[
i].topoSeedList() = -1;
1110 clusterView[
i].seedRHIdx() = -1;
1116 float seedThreshold = 9999.;
1117 float topoThreshold = 9999.;
1124 seedThreshold = pfClusParams.seedEThresholdHB_vec()[depthOffset];
1125 topoThreshold = pfClusParams.topoEThresholdHB_vec()[depthOffset];
1127 seedThreshold = pfClusParams.seedEThresholdHE_vec()[depthOffset];
1128 topoThreshold = pfClusParams.topoEThresholdHE_vec()[depthOffset];
1138 pfClusteringVars[
i].pfrh_isSeed() = 1;
1139 for (
int k = 0;
k < 4;
k++) {
1143 pfClusteringVars[
i].pfrh_isSeed() = 0;
1147 if (pfClusteringVars[
i].pfrh_isSeed())
1154 pfClusteringVars[
i].pfrh_passTopoThresh() =
true;
1155 pfClusteringVars[
i].pfrh_topoId() =
i;
1157 pfClusteringVars[
i].pfrh_passTopoThresh() =
false;
1158 pfClusteringVars[
i].pfrh_topoId() = -1;
T1 atomicAdd(T1 *a, T2 b)