#include <cstdint>
#include <cuda_runtime.h>
#include "CUDADataFormats/TrackingRecHit/interface/TrackingRecHit2DHeterogeneous.h"
#include "HeterogeneousCore/CUDAUtilities/interface/cudaCheck.h"
#include "HeterogeneousCore/CUDAUtilities/interface/cuda_assert.h"
#include "RecoLocalTracker/SiPixelRecHits/interface/pixelCPEforGPU.h"
#include "RecoPixelVertexing/PixelTrackFitting/interface/BrokenLine.h"
#include "HelixFitOnGPU.h"
Go to the source code of this file.
Typedefs | |
using | HitsOnGPU = TrackingRecHit2DSOAView |
using | OutputSoA = pixelTrack::TrackSoA |
using | tindex_type = caConstants::tindex_type |
using | Tuples = pixelTrack::HitContainer |
Functions | |
template<int N> | |
__attribute__ ((always_inline)) void kernel_BLFastFit(Tuples const *__restrict__ foundNtuplets | |
assert (hitsInFit<=nHitsL) | |
assert (nHitsL<=nHitsH) | |
assert (hhp) | |
assert (phits) | |
assert (pfast_fit) | |
assert (foundNtuplets) | |
assert (tupleMultiplicity) | |
assert (totTK<=int(tupleMultiplicity->size())) | |
assert (totTK >=0) | |
for (int local_idx=local_start, nt=riemannFit::maxNumberOfConcurrentFits;local_idx< nt;local_idx+=gridDim.x *blockDim.x) | |
Variables | |
caConstants::TupleMultiplicity const *__restrict__ HitsOnGPU const *__restrict__ | hhp |
constexpr auto | invalidTkId = std::numeric_limits<tindex_type>::max() |
auto | local_start = blockIdx.x * blockDim.x + threadIdx.x |
caConstants::TupleMultiplicity const *__restrict__ HitsOnGPU const *__restrict__ tindex_type *__restrict__ double *__restrict__ float *__restrict__ double *__restrict__ uint32_t uint32_t | nHitsH |
caConstants::TupleMultiplicity const *__restrict__ HitsOnGPU const *__restrict__ tindex_type *__restrict__ double *__restrict__ float *__restrict__ double *__restrict__ uint32_t | nHitsL |
caConstants::TupleMultiplicity const *__restrict__ HitsOnGPU const *__restrict__ tindex_type *__restrict__ double *__restrict__ float *__restrict__ double *__restrict__ uint32_t uint32_t int32_t | offset |
caConstants::TupleMultiplicity const *__restrict__ HitsOnGPU const *__restrict__ tindex_type *__restrict__ double *__restrict__ float *__restrict__ double *__restrict__ | pfast_fit |
caConstants::TupleMultiplicity const *__restrict__ HitsOnGPU const *__restrict__ tindex_type *__restrict__ double *__restrict__ | phits |
caConstants::TupleMultiplicity const *__restrict__ HitsOnGPU const *__restrict__ tindex_type *__restrict__ double *__restrict__ float *__restrict__ | phits_ge |
caConstants::TupleMultiplicity const *__restrict__ HitsOnGPU const *__restrict__ tindex_type *__restrict__ | ptkids |
int | totTK = tupleMultiplicity->end(nHitsH) - tupleMultiplicity->begin(nHitsL) |
caConstants::TupleMultiplicity const *__restrict__ | tupleMultiplicity |
using HitsOnGPU = TrackingRecHit2DSOAView |
Definition at line 19 of file BrokenLineFitOnGPU.h.
using OutputSoA = pixelTrack::TrackSoA |
Definition at line 21 of file BrokenLineFitOnGPU.h.
using tindex_type = caConstants::tindex_type |
Definition at line 22 of file BrokenLineFitOnGPU.h.
using Tuples = pixelTrack::HitContainer |
Definition at line 20 of file BrokenLineFitOnGPU.h.
|
inline |
Definition at line 170 of file BrokenLineFitOnGPU.h.
References funct::abs(), assert(), Calorimetry_cff::bField, cms::cudacompat::blockDim, cms::cudacompat::blockIdx, riemannFit::CircleFit::chi2, brokenline::circleFit(), riemannFit::CircleFit::cov, data, dqmMemoryStats::float, cms::cudacompat::gridDim, hfClusterShapes_cfi::hits, invalidTkId, mps_splice::line, brokenline::lineFit(), local_start, riemannFit::maxNumberOfConcurrentFits, caConstants::maxTuples, N, nHits, nt, riemannFit::CircleFit::par, pfast_fit, phits, phits_ge, brokenline::prepareBrokenLineData(), ptkids, bookConverter::results, and cms::cudacompat::threadIdx.
assert | ( | hitsInFit<= | nHitsL | ) |
Referenced by __attribute__(), and for().
assert | ( | nHitsL<= | nHitsH | ) |
assert | ( | hhp | ) |
assert | ( | phits | ) |
assert | ( | pfast_fit | ) |
assert | ( | foundNtuplets | ) |
assert | ( | tupleMultiplicity | ) |
assert | ( | totTK<= | inttupleMultiplicity->size() | ) |
assert | ( | totTK >= | 0 | ) |
for | ( | int | local_idx = local_start | ) |
Definition at line 61 of file BrokenLineFitOnGPU.h.
References cms::cudacompat::__syncthreads(), funct::abs(), assert(), cms::cudacompat::atomicAdd(), newFWLiteAna::bin, fileCollector::done, Calorimetry_cff::dp, GCP_Ntuples_cfg::dump, PVValHelper::dx, PVValHelper::dy, PVValHelper::dz, f, brokenline::fastFit(), foundNtuplets, hhp, hfClusterShapes_cfi::hits, mps_fire::i, createfilelist::int, invalidTkId, dqmiolumiharvest::j, CPEFastParametrisation::kGenErrorQBins, CPEFastParametrisation::kNumErrorBins, SiStripPI::max, dqmiodumpmetadata::n, nHits, nHitsH, nHitsL, offset, pfast_fit, phits, phits_ge, phase1PixelTopology::pixelPitchY, ptkids, mps_update::status, totTK, and tupleMultiplicity.
caConstants::TupleMultiplicity const* __restrict__ HitsOnGPU const* __restrict__ hhp |
Definition at line 29 of file BrokenLineFitOnGPU.h.
Referenced by for().
constexpr auto invalidTkId = std::numeric_limits<tindex_type>::max() |
Definition at line 23 of file BrokenLineFitOnGPU.h.
Referenced by __attribute__(), and for().
auto local_start = blockIdx.x * blockDim.x + threadIdx.x |
Definition at line 49 of file BrokenLineFitOnGPU.h.
Referenced by __attribute__().
caConstants::TupleMultiplicity const* __restrict__ HitsOnGPU const* __restrict__ tindex_type* __restrict__ double* __restrict__ float* __restrict__ double* __restrict__ uint32_t uint32_t nHitsH |
Definition at line 29 of file BrokenLineFitOnGPU.h.
Referenced by for().
caConstants::TupleMultiplicity const* __restrict__ HitsOnGPU const* __restrict__ tindex_type* __restrict__ double* __restrict__ float* __restrict__ double* __restrict__ uint32_t nHitsL |
Definition at line 29 of file BrokenLineFitOnGPU.h.
Referenced by for().
caConstants::TupleMultiplicity const* __restrict__ HitsOnGPU const* __restrict__ tindex_type* __restrict__ double* __restrict__ float* __restrict__ double* __restrict__ uint32_t uint32_t int32_t offset |
Definition at line 37 of file BrokenLineFitOnGPU.h.
Referenced by for().
caConstants::TupleMultiplicity const* __restrict__ HitsOnGPU const* __restrict__ tindex_type* __restrict__ double* __restrict__ float* __restrict__ double* __restrict__ pfast_fit |
Definition at line 29 of file BrokenLineFitOnGPU.h.
Referenced by __attribute__(), and for().
caConstants::TupleMultiplicity const* __restrict__ HitsOnGPU const* __restrict__ tindex_type* __restrict__ double* __restrict__ phits |
Definition at line 29 of file BrokenLineFitOnGPU.h.
Referenced by gpuPixelRecHits::__attribute__(), __attribute__(), EcalTBValidation::analyze(), EcalSimpleTBAnalyzer::analyze(), EcalSimple2007H4TBAnalyzer::analyze(), ElectronCalibration::analyze(), FWTrackingParticleProxyBuilderFullFramework::build(), ZeeCalibration::duringLoop(), ElectronCalibration::findMaxHit(), for(), JetMatchingTools::getGenParticles(), PhotonConversionTrajectorySeedProducerFromQuadrupletsAlgo::inspect(), JetMatchingTools::lostEnergyFraction(), and SeedForPhotonConversionFromQuadruplets::trajectorySeed().
caConstants::TupleMultiplicity const* __restrict__ HitsOnGPU const* __restrict__ tindex_type* __restrict__ double* __restrict__ float* __restrict__ phits_ge |
Definition at line 29 of file BrokenLineFitOnGPU.h.
Referenced by __attribute__(), and for().
caConstants::TupleMultiplicity const* __restrict__ HitsOnGPU const* __restrict__ tindex_type* __restrict__ ptkids |
Definition at line 29 of file BrokenLineFitOnGPU.h.
Referenced by __attribute__(), and for().
int totTK = tupleMultiplicity->end(nHitsH) - tupleMultiplicity->begin(nHitsL) |
Definition at line 50 of file BrokenLineFitOnGPU.h.
Referenced by for().
Quality const *__restrict__ caConstants::TupleMultiplicity * tupleMultiplicity |
Definition at line 29 of file BrokenLineFitOnGPU.h.
Referenced by HelixFitOnGPU::allocateOnGPU(), and for().