CMS 3D CMS Logo

List of all members | Public Member Functions
ALPAKA_ACCELERATOR_NAMESPACE::setHitsLayerStart< TrackerTraits > Class Template Reference

Public Member Functions

template<typename TAcc , typename = std::enable_if_t<alpaka::isAccelerator<TAcc>>>
ALPAKA_FN_ACC void operator() (TAcc const &acc, uint32_t const *__restrict__ hitsModuleStart, pixelCPEforDevice::ParamsOnDeviceT< TrackerTraits > const *__restrict__ cpeParams, uint32_t *__restrict__ hitsLayerStart) const
 

Detailed Description

template<typename TrackerTraits>
class ALPAKA_ACCELERATOR_NAMESPACE::setHitsLayerStart< TrackerTraits >

Definition at line 30 of file PixelRecHitKernels.dev.cc.

Member Function Documentation

◆ operator()()

template<typename TrackerTraits >
template<typename TAcc , typename = std::enable_if_t<alpaka::isAccelerator<TAcc>>>
ALPAKA_FN_ACC void ALPAKA_ACCELERATOR_NAMESPACE::setHitsLayerStart< TrackerTraits >::operator() ( TAcc const &  acc,
uint32_t const *__restrict__  hitsModuleStart,
pixelCPEforDevice::ParamsOnDeviceT< TrackerTraits > const *__restrict__  cpeParams,
uint32_t *__restrict__  hitsLayerStart 
) const
inline

Definition at line 33 of file PixelRecHitKernels.dev.cc.

References ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::ALPAKA_ASSERT_ACC(), mps_fire::i, pixelCPEforDevice::ParamsOnDeviceT< TrackerTopology >::layerGeometry(), phase1PixelTopology::numberOfLayers, and cms::alpakatools::uniform_elements().

36  {
37  ALPAKA_ASSERT_ACC(0 == hitsModuleStart[0]);
38 
40  hitsLayerStart[i] = hitsModuleStart[cpeParams->layerGeometry().layerStart[i]];
41 #ifdef GPU_DEBUG
42  int old = i == 0 ? 0 : hitsModuleStart[cpeParams->layerGeometry().layerStart[i - 1]];
43  printf("LayerStart %d/%d at module %d: %d - %d\n",
44  i,
46  cpeParams->layerGeometry().layerStart[i],
47  hitsLayerStart[i],
48  hitsLayerStart[i] - old);
49 #endif
50  }
51  }
ALPAKA_FN_ACC auto uniform_elements(TAcc const &acc, TArgs... args)
Definition: workdivision.h:311
constexpr uint32_t numberOfLayers
constexpr LayerGeometry const &__restrict__ layerGeometry() const