3 template <
typename TrackerTraits>
6 uint32_t maxNumberOfTuples) {
14 auto fast_fit_resultsGPU =
15 std::make_unique<double[]>(maxNumberOfConcurrentFits_ *
sizeof(
riemannFit::Vector4d) /
sizeof(
double));
16 auto circle_fit_resultsGPU_holder =
20 for (uint32_t
offset = 0;
offset < maxNumberOfTuples;
offset += maxNumberOfConcurrentFits_) {
22 kernel_FastFit<3, TrackerTraits>(
23 tuples_, tupleMultiplicity_, 3, hv, hitsGPU.get(), hits_geGPU.get(), fast_fit_resultsGPU.get(),
offset);
25 kernel_CircleFit<3, TrackerTraits>(tupleMultiplicity_,
30 fast_fit_resultsGPU.get(),
31 circle_fit_resultsGPU,
34 kernel_LineFit<3, TrackerTraits>(tupleMultiplicity_,
40 fast_fit_resultsGPU.get(),
41 circle_fit_resultsGPU,
45 kernel_FastFit<4, TrackerTraits>(
46 tuples_, tupleMultiplicity_, 4, hv, hitsGPU.get(), hits_geGPU.get(), fast_fit_resultsGPU.get(),
offset);
48 kernel_CircleFit<4, TrackerTraits>(tupleMultiplicity_,
53 fast_fit_resultsGPU.get(),
54 circle_fit_resultsGPU,
57 kernel_LineFit<4, TrackerTraits>(tupleMultiplicity_,
63 fast_fit_resultsGPU.get(),
64 circle_fit_resultsGPU,
69 kernel_FastFit<4, TrackerTraits>(
70 tuples_, tupleMultiplicity_, 5, hv, hitsGPU.get(), hits_geGPU.get(), fast_fit_resultsGPU.get(),
offset);
72 kernel_CircleFit<4, TrackerTraits>(tupleMultiplicity_,
77 fast_fit_resultsGPU.get(),
78 circle_fit_resultsGPU,
81 kernel_LineFit<4, TrackerTraits>(tupleMultiplicity_,
87 fast_fit_resultsGPU.get(),
88 circle_fit_resultsGPU,
93 kernel_FastFit<5, TrackerTraits>(
94 tuples_, tupleMultiplicity_, 5, hv, hitsGPU.get(), hits_geGPU.get(), fast_fit_resultsGPU.get(),
offset);
96 kernel_CircleFit<5, TrackerTraits>(tupleMultiplicity_,
101 fast_fit_resultsGPU.get(),
102 circle_fit_resultsGPU,
105 kernel_LineFit<5, TrackerTraits>(tupleMultiplicity_,
111 fast_fit_resultsGPU.get(),
112 circle_fit_resultsGPU,
Eigen::Matrix< float, 6, 4 > Matrix6x4f
void launchRiemannKernelsOnCPU(const HitConstView &hv, uint32_t nhits, uint32_t maxNumberOfTuples)
Eigen::Matrix< double, 3, N > Matrix3xNd
typename TrackingRecHitSoA< TrackerTraits >::template TrackingRecHitSoALayout<>::ConstView TrackingRecHitSoAConstView