1 #ifndef RecoVertex_PixelVertexFinding_plugins_alpaka_fitVertices_h 2 #define RecoVertex_PixelVertexFinding_plugins_alpaka_fitVertices_h 8 #include <alpaka/alpaka.hpp> 30 float const* __restrict__
zt =
ws.zt();
31 float const* __restrict__
ezt2 =
ws.ezt2();
39 int32_t* __restrict__
iv =
ws.iv();
53 auto&
noise = alpaka::declareSharedVar<int, __COUNTER__>(acc);
59 alpaka::syncBlockThreads(acc);
75 alpaka::syncBlockThreads(acc);
78 bool const wv_cond = (
wv[
i] > 0.f);
80 printf(
"ERROR: wv[%d] (%f) > 0.f failed\n",
i,
wv[
i]);
82 for (
auto trk_i = 0u; trk_i <
nt; ++trk_i) {
83 if (
iv[trk_i] !=
int(
i)) {
86 printf(
" iv[%d]=%d zt[%d]=%f ezt2[%d]=%f\n", trk_i,
iv[trk_i], trk_i,
zt[trk_i], trk_i,
ezt2[trk_i]);
94 alpaka::syncBlockThreads(acc);
110 alpaka::syncBlockThreads(acc);
120 printf(
"and %d noise\n",
noise);
139 #endif // RecoVertex_PixelVertexFinding_plugins_alpaka_fitVertices_h
ALPAKA_FN_ACC ALPAKA_FN_INLINE VtxSoAView & pdata
ALPAKA_ASSERT_ACC(nvFinal<=nvIntermediate)
auto &__restrict__ trkdata
fitVertices(pdata, pws, maxChi2ForFirstFit)
ALPAKA_FN_ACC ALPAKA_FN_INLINE __attribute__((always_inline)) void fitVertices(Acc1D const &acc
ALPAKA_FN_ACC ALPAKA_FN_INLINE VtxSoAView TrkSoAView WsSoAView & pws
float const *__restrict__ zt
std::vector< Block > Blocks
float const *__restrict__ ezt2
ALPAKA_FN_ACC void operator()(Acc1D const &acc, VtxSoAView pdata, TrkSoAView ptrkdata, WsSoAView pws, float chi2Max) const
::vertexFinder::PixelVertexWorkSpaceSoAView WsSoAView
uint32_t & nvIntermediate
ALPAKA_FN_ACC ALPAKA_FN_INLINE VtxSoAView TrkSoAView & ptrkdata
ALPAKA_FN_ACC ALPAKA_FN_INLINE VtxSoAView TrkSoAView WsSoAView float chi2Max
T1 atomicAdd(T1 *a, T2 b)