CMS 3D CMS Logo

List of all members | Public Member Functions
ALPAKA_ACCELERATOR_NAMESPACE::HGCalLayerClustersAlgoWrapper Class Reference

#include <HGCalLayerClustersAlgoWrapper.h>

Public Member Functions

void run (Queue &queue, const unsigned int size, const float dc, const float kappa, const float outlierDeltaFactor, const HGCalSoARecHitsDeviceCollection::ConstView inputs, HGCalSoARecHitsExtraDeviceCollection::View outputs) const
 

Detailed Description

Definition at line 10 of file HGCalLayerClustersAlgoWrapper.h.

Member Function Documentation

◆ run()

void ALPAKA_ACCELERATOR_NAMESPACE::HGCalLayerClustersAlgoWrapper::run ( Queue &  queue,
const unsigned int  size,
const float  dc,
const float  kappa,
const float  outlierDeltaFactor,
const HGCalSoARecHitsDeviceCollection::ConstView  inputs,
HGCalSoARecHitsExtraDeviceCollection::View  outputs 
) const

Definition at line 18 of file HGCalLayerClustersAlgoWrapper.dev.cc.

References dumpMFGeometry_cfg::delta, PixelMapPlotter::inputs, hltHgcalLayerClustersEE_cfi::kappa, hgcal::constants::kInvalidClusterByte, hltHgcalSoARecHitsLayerClustersProducer_cfi::outlierDeltaFactor, PatBasicFWLiteJetAnalyzer_Selector_cfg::outputs, and createBeamHaloJobs::queue.

Referenced by ALPAKA_ACCELERATOR_NAMESPACE::HGCalSoARecHitsLayerClustersProducer::produce().

24  {
25  CLUEAlgoAlpaka<ALPAKA_ACCELERATOR_NAMESPACE::Acc1D, Queue, HGCalSiliconTilesConstants, kHGCalLayers> algoStandalone(
26  queue, dc, kappa, outlierDeltaFactor, false);
27 
28  // Initialize output memory to 0
29  auto delta = cms::alpakatools::make_device_view<float>(alpaka::getDev(queue), outputs.delta(), size);
30  alpaka::memset(queue, delta, 0x0);
31  auto rho = cms::alpakatools::make_device_view<float>(alpaka::getDev(queue), outputs.rho(), size);
32  alpaka::memset(queue, rho, 0x0);
33  auto nearestHigher =
34  cms::alpakatools::make_device_view<unsigned int>(alpaka::getDev(queue), outputs.nearestHigher(), size);
35  alpaka::memset(queue, nearestHigher, 0x0);
36  auto clusterIndex = cms::alpakatools::make_device_view<int>(alpaka::getDev(queue), outputs.clusterIndex(), size);
37  alpaka::memset(queue, clusterIndex, kInvalidClusterByte);
38  auto isSeed = cms::alpakatools::make_device_view<uint8_t>(alpaka::getDev(queue), outputs.isSeed(), size);
39  alpaka::memset(queue, isSeed, 0x0);
40 
41  algoStandalone.makeClustersCMSSW(size,
42  inputs.dim1(),
43  inputs.dim2(),
44  inputs.layer(),
45  inputs.weight(),
46  inputs.sigmaNoise(),
47  inputs.detid(),
48  outputs.rho(),
49  outputs.delta(),
50  outputs.nearestHigher(),
51  outputs.clusterIndex(),
52  outputs.isSeed(),
53  &outputs.numberOfClustersScalar());
54  }
size
Write out results.
static constexpr uint8_t kInvalidClusterByte