![]() |
Project
|
#include <GPUTPCTracker.h>
Inherits o2::gpu::GPUProcessor.
Classes | |
struct | commonMemoryStruct |
struct | StructGPUParameters |
struct | StructGPUParametersConst |
struct | trackSortData |
Public Member Functions | |
GPUTPCTracker ()=default | |
~GPUTPCTracker () | |
GPUTPCTracker (const GPUTPCTracker &)=delete | |
GPUTPCTracker & | operator= (const GPUTPCTracker &)=delete |
void | SetSector (int32_t iSector) |
void | InitializeProcessor () |
void | InitializeRows (const GPUParam *param) |
int32_t | CheckEmptySector () |
void | WriteOutputPrepare () |
void | WriteOutput () |
void | DumpTrackingData (std::ostream &out) |
void | DumpLinks (std::ostream &out, int32_t phase) |
void | DumpStartHits (std::ostream &out) |
void | DumpHitWeights (std::ostream &out) |
void | DumpTrackHits (std::ostream &out) |
void | DumpTrackletHits (std::ostream &out) |
void | DumpOutput (std::ostream &out) |
GPUhdi () GPUglobalref() const GPUTPCClusterData *ClusterData() const | |
GPUhdi () const GPUTPCRow &Row(const GPUTPCHitId &HitId) const | |
GPUhdi () GPUglobalref() GPUTPCSectorOutput *Output() const | |
GPUhdni () GPUglobalref() commonMemoryStruct *CommonMemory() const | |
GPUdi () static void GetErrors2Seeding(const GPUParam ¶m | |
GPUdi () void GetErrors2Seeding(int32_t iRow | |
GPUdi () void GetErrors2Seeding(int32_t iRow | |
void | SetupCommonMemory () |
void * | SetPointersDataLinks (void *mem) |
void * | SetPointersDataWeights (void *mem) |
void * | SetPointersDataScratch (void *mem) |
void * | SetPointersDataRows (void *mem) |
void * | SetPointersScratch (void *mem) |
void * | SetPointersScratchHost (void *mem) |
void * | SetPointersCommon (void *mem) |
void * | SetPointersTracklets (void *mem) |
void * | SetPointersOutput (void *mem) |
void | RegisterMemoryAllocation () |
int16_t | MemoryResLinks () const |
int16_t | MemoryResScratchHost () const |
int16_t | MemoryResCommon () const |
int16_t | MemoryResTracklets () const |
int16_t | MemoryResOutput () const |
int16_t | MemoryResSectorScratch () const |
void | SetMaxData (const GPUTrackingInOutPointers &io) |
void | UpdateMaxData () |
GPUhd () int32_t ISector() const | |
GPUhd () GPUconstantref() const GPUTPCTrackingData &Data() const | |
GPUhdi () GPUconstantref() GPUTPCTrackingData &Data() | |
GPUhd () GPUglobalref() const GPUTPCRow &Row(int32_t rowIndex) const | |
GPUhd () uint32_t NHitsTotal() const | |
GPUhd () uint32_t NMaxTracklets() const | |
GPUhd () uint32_t NMaxRowHits() const | |
GPUhd () uint32_t NMaxTracks() const | |
GPUhd () uint32_t NMaxTrackHits() const | |
GPUhd () uint32_t NMaxStartHits() const | |
GPUhd () uint32_t NMaxRowStartHits() const | |
GPUd () void SetHitLinkUpData(const GPUTPCRow &row | |
GPUd () void SetHitLinkDownData(const GPUTPCRow &row | |
GPUd () calink HitLinkUpData(const GPUTPCRow &row | |
GPUd () calink HitLinkDownData(const GPUTPCRow &row | |
GPUd () GPUglobalref() const cahit2 *HitData(const GPUTPCRow &row) const | |
GPUd () GPUglobalref() const calink *HitLinkUpData(const GPUTPCRow &row) const | |
GPUd () GPUglobalref() const calink *HitLinkDownData(const GPUTPCRow &row) const | |
GPUd () GPUglobalref() const calink *FirstHitInBin(const GPUTPCRow &row) const | |
GPUd () int32_t FirstHitInBin(const GPUTPCRow &row | |
GPUd () cahit HitDataY(const GPUTPCRow &row | |
GPUd () cahit HitDataZ(const GPUTPCRow &row | |
GPUd () cahit2 HitData(const GPUTPCRow &row | |
GPUhd () int32_t HitInputID(const GPUTPCRow &row | |
GPUdi () static int32_t CalculateHitWeight(int32_t NHits | |
if (weight< 0.f||weight > 2e9f) | |
return ((int32_t) weight) | |
GPUd () void MaximizeHitWeight(const GPUTPCRow &row | |
GPUd () void SetHitWeight(const GPUTPCRow &row | |
GPUd () int32_t HitWeight(const GPUTPCRow &row | |
GPUhd () GPUglobalref() GPUAtomic(uint32_t) *NTracklets() const | |
GPUhd () GPUglobalref() GPUAtomic(uint32_t) *NRowHits() const | |
GPUhd () GPUglobalref() GPUAtomic(uint32_t) *NStartHits() const | |
GPUhd () GPUglobalref() const GPUTPCHitId &TrackletStartHit(int32_t i) const | |
GPUhd () GPUglobalref() const GPUTPCHitId *TrackletStartHits() const | |
GPUhd () GPUglobalref() GPUTPCHitId *TrackletStartHits() | |
GPUhd () GPUglobalref() GPUTPCHitId *TrackletTmpStartHits() const | |
GPUhd () GPUglobalref() const GPUTPCTracklet &Tracklet(int32_t i) const | |
GPUhd () GPUglobalref() GPUTPCTracklet *Tracklets() const | |
GPUhd () GPUglobalref() calink *TrackletRowHits() const | |
GPUhd () GPUglobalref() GPUAtomic(uint32_t) *NTracks() const | |
GPUhd () GPUglobalref() GPUTPCTrack *Tracks() const | |
GPUhd () GPUglobalref() GPUAtomic(uint32_t) *NTrackHits() const | |
GPUhd () GPUglobalref() GPUTPCHitId *TrackHits() const | |
GPUhd () GPUglobalref() GPUTPCRow *TrackingDataRows() const | |
GPUhd () GPUglobalref() int32_t *RowStartHitCountOffset() const | |
GPUhd () GPUglobalref() StructGPUParameters *GPUParameters() const | |
GPUhd () StructGPUParametersConst *GPUParametersConst() | |
GPUhd () const StructGPUParametersConst *GetGPUParametersConst() const | |
GPUhd () void SetGPUTextureBase(GPUglobalref() const void *val) | |
void * | LinkTmpMemory () |
![]() | |
GPUProcessor () | |
~GPUProcessor () | |
GPUProcessor (const GPUProcessor &)=delete | |
GPUProcessor & | operator= (const GPUProcessor &)=delete |
GPUd () GPUconstantref() const GPUConstantMem *GetConstantMem() const | |
GPUd () GPUconstantref() const GPUParam &Param() const | |
GPUd () void raiseError(uint32_t code | |
const GPUReconstruction & | GetRec () const |
void | InitGPUProcessor (GPUReconstruction *rec, ProcessorType type=PROCESSOR_TYPE_CPU, GPUProcessor *slaveProcessor=nullptr) |
void | Clear () |
template<class T > | |
T & | HostProcessor (T *) |
Public Attributes | |
char | sector |
char int32_t | iRow |
char int32_t const GPUTPCTrackParam & | t |
char int32_t const GPUTPCTrackParam float | time |
char int32_t const GPUTPCTrackParam float float & | ErrY2 |
char int32_t const GPUTPCTrackParam float float float & | ErrZ2 |
const GPUTPCTrackParam & | t |
const GPUTPCTrackParam float | time |
const GPUTPCTrackParam float float & | ErrY2 |
const GPUTPCTrackParam float float float &ErrZ2 | const |
float | z |
float float | sinPhi |
float float float | DzDs |
float float float float | time |
float float float float float & | ErrY2 |
float float float float float float &ErrZ2 | const |
int32_t | hitIndex |
int32_t calink | v { mData.SetHitLinkUpData(row, hitIndex, v) |
int32_t hitIndex | const { return mData.HitLinkUpData(row, hitIndex) |
int32_t binIndex | const { return mData.FirstHitInBin(row, binIndex) |
float | chi2 |
float | weight = (((float)NHits * (chi2_suppress - chi2 / 500.f)) * (1e9f / chi2_suppress / 160.f)) |
int32_t int32_t | weight { mData.MaximizeHitWeight(row, hitIndex, weight) |
![]() | |
uint32_t | param1 = 0 |
uint32_t uint32_t | param2 = 0 |
uint32_t uint32_t uint32_t | param3 = 0) const |
Friends | |
class | GPUTPCNeighboursFinder |
class | GPUTPCStartHitsSorter |
class | GPUTPCStartHitsFinder |
Additional Inherited Members | |
![]() | |
enum | ProcessorType { PROCESSOR_TYPE_CPU = 0 , PROCESSOR_TYPE_DEVICE = 1 , PROCESSOR_TYPE_SLAVE = 2 } |
![]() | |
template<size_t alignment = GPUCA_BUFFER_ALIGNMENT> | |
static size_t | getAlignmentMod (size_t addr) |
template<size_t alignment = GPUCA_BUFFER_ALIGNMENT> | |
static size_t | getAlignment (size_t addr) |
template<size_t alignment = GPUCA_BUFFER_ALIGNMENT> | |
static size_t | nextMultipleOf (size_t size) |
template<size_t alignment = GPUCA_BUFFER_ALIGNMENT> | |
static void * | alignPointer (void *ptr) |
template<size_t alignment = GPUCA_BUFFER_ALIGNMENT> | |
static size_t | getAlignmentMod (void *addr) |
template<size_t alignment = GPUCA_BUFFER_ALIGNMENT> | |
static size_t | getAlignment (void *addr) |
template<size_t alignment = GPUCA_BUFFER_ALIGNMENT, class S > | |
static S * | getPointerWithAlignment (size_t &basePtr, size_t nEntries=1) |
template<size_t alignment = GPUCA_BUFFER_ALIGNMENT, class S > | |
static S * | getPointerWithAlignment (void *&basePtr, size_t nEntries=1) |
template<size_t alignment = GPUCA_BUFFER_ALIGNMENT, class T , class S > | |
static void | computePointerWithAlignment (T *&basePtr, S *&objPtr, size_t nEntries=1) |
template<class T , class S > | |
static void | computePointerWithoutAlignment (T *&basePtr, S *&objPtr, size_t nEntries=1) |
![]() | |
void | AllocateAndInitializeLate () |
GPUconstantref () const GPUConstantMem *mConstantMem | |
![]() | |
GPUReconstruction * | mRec |
ProcessorType | mGPUProcessorType |
GPUProcessor * | mLinkedProcessor |
Definition at line 39 of file GPUTPCTracker.h.
|
default |
GPUTPCTracker::~GPUTPCTracker | ( | ) |
Definition at line 42 of file GPUTPCTracker.cxx.
|
delete |
int32_t o2::gpu::GPUTPCTracker::CheckEmptySector | ( | ) |
void GPUTPCTracker::DumpHitWeights | ( | std::ostream & | out | ) |
Definition at line 83 of file GPUTPCTrackerDump.cxx.
void GPUTPCTracker::DumpLinks | ( | std::ostream & | out, |
int32_t | phase | ||
) |
Definition at line 64 of file GPUTPCTrackerDump.cxx.
void GPUTPCTracker::DumpOutput | ( | std::ostream & | out | ) |
Definition at line 29 of file GPUTPCTrackerDump.cxx.
void GPUTPCTracker::DumpStartHits | ( | std::ostream & | out | ) |
Definition at line 102 of file GPUTPCTrackerDump.cxx.
void GPUTPCTracker::DumpTrackHits | ( | std::ostream & | out | ) |
Definition at line 112 of file GPUTPCTrackerDump.cxx.
void GPUTPCTracker::DumpTrackingData | ( | std::ostream & | out | ) |
Definition at line 45 of file GPUTPCTrackerDump.cxx.
void GPUTPCTracker::DumpTrackletHits | ( | std::ostream & | out | ) |
Definition at line 136 of file GPUTPCTrackerDump.cxx.
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
|
inline |
Definition at line 159 of file GPUTPCTracker.h.
|
inline |
Definition at line 162 of file GPUTPCTracker.h.
|
inline |
Definition at line 161 of file GPUTPCTracker.h.
|
inline |
Definition at line 160 of file GPUTPCTracker.h.
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUd | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUdi | ( | ) |
The hit weight is used to determine whether a hit belongs to a certain tracklet or another one competing for the same hit. The tracklet that has a higher weight wins. Comparison is done using the the number of hits in the tracklet (the more hits it has the more it keeps). If tracklets have the same number of hits then it doesn't matter who gets it, but it should be only one. So a unique number (row index is good) is added in the least significant part of the weight
o2::gpu::GPUTPCTracker::GPUdi | ( | ) | const & |
o2::gpu::GPUTPCTracker::GPUdi | ( | ) |
o2::gpu::GPUTPCTracker::GPUdi | ( | ) |
|
inline |
Definition at line 218 of file GPUTPCTracker.h.
|
inline |
Definition at line 138 of file GPUTPCTracker.h.
|
inline |
Definition at line 204 of file GPUTPCTracker.h.
|
inline |
Definition at line 198 of file GPUTPCTracker.h.
|
inline |
Definition at line 199 of file GPUTPCTracker.h.
|
inline |
Definition at line 144 of file GPUTPCTracker.h.
|
inline |
Definition at line 202 of file GPUTPCTracker.h.
|
inline |
Definition at line 195 of file GPUTPCTracker.h.
|
inline |
Definition at line 196 of file GPUTPCTracker.h.
|
inline |
Definition at line 208 of file GPUTPCTracker.h.
|
inline |
Definition at line 194 of file GPUTPCTracker.h.
|
inline |
Definition at line 206 of file GPUTPCTracker.h.
|
inline |
Definition at line 209 of file GPUTPCTracker.h.
|
inline |
Definition at line 200 of file GPUTPCTracker.h.
|
inline |
Definition at line 201 of file GPUTPCTracker.h.
|
inline |
Definition at line 211 of file GPUTPCTracker.h.
|
inline |
Definition at line 207 of file GPUTPCTracker.h.
|
inline |
Definition at line 203 of file GPUTPCTracker.h.
|
inline |
Definition at line 212 of file GPUTPCTracker.h.
|
inline |
Definition at line 213 of file GPUTPCTracker.h.
o2::gpu::GPUTPCTracker::GPUhd | ( | ) | const & |
|
inline |
Definition at line 136 of file GPUTPCTracker.h.
|
inline |
Definition at line 214 of file GPUTPCTracker.h.
|
inline |
Definition at line 146 of file GPUTPCTracker.h.
|
inline |
Definition at line 148 of file GPUTPCTracker.h.
|
inline |
Definition at line 152 of file GPUTPCTracker.h.
|
inline |
Definition at line 151 of file GPUTPCTracker.h.
|
inline |
Definition at line 150 of file GPUTPCTracker.h.
|
inline |
Definition at line 147 of file GPUTPCTracker.h.
|
inline |
Definition at line 149 of file GPUTPCTracker.h.
|
inline |
Definition at line 219 of file GPUTPCTracker.h.
|
inline |
Definition at line 90 of file GPUTPCTracker.h.
|
inline |
Definition at line 139 of file GPUTPCTracker.h.
|
inline |
Definition at line 86 of file GPUTPCTracker.h.
|
inline |
Definition at line 91 of file GPUTPCTracker.h.
|
inline |
Definition at line 92 of file GPUTPCTracker.h.
Definition at line 184 of file GPUTPCTracker.h.
void GPUTPCTracker::InitializeProcessor | ( | ) |
Definition at line 51 of file GPUTPCTracker.cxx.
Definition at line 50 of file GPUTPCTracker.h.
|
inline |
Definition at line 226 of file GPUTPCTracker.h.
|
inline |
Definition at line 128 of file GPUTPCTracker.h.
|
inline |
Definition at line 126 of file GPUTPCTracker.h.
|
inline |
Definition at line 130 of file GPUTPCTracker.h.
|
inline |
Definition at line 127 of file GPUTPCTracker.h.
|
inline |
Definition at line 131 of file GPUTPCTracker.h.
|
inline |
Definition at line 129 of file GPUTPCTracker.h.
|
delete |
void GPUTPCTracker::RegisterMemoryAllocation | ( | ) |
Definition at line 93 of file GPUTPCTracker.cxx.
o2::gpu::GPUTPCTracker::return | ( | (int32_t) | weight | ) |
void GPUTPCTracker::SetMaxData | ( | const GPUTrackingInOutPointers & | io | ) |
Definition at line 130 of file GPUTPCTracker.cxx.
Definition at line 87 of file GPUTPCTracker.cxx.
Definition at line 60 of file GPUTPCTracker.cxx.
Definition at line 63 of file GPUTPCTracker.cxx.
Definition at line 62 of file GPUTPCTracker.cxx.
Definition at line 61 of file GPUTPCTracker.cxx.
Definition at line 65 of file GPUTPCTracker.cxx.
Definition at line 78 of file GPUTPCTracker.cxx.
void GPUTPCTracker::SetSector | ( | int32_t | iSector | ) |
Definition at line 50 of file GPUTPCTracker.cxx.
void GPUTPCTracker::SetupCommonMemory | ( | ) |
Definition at line 169 of file GPUTPCTracker.cxx.
void GPUTPCTracker::UpdateMaxData | ( | ) |
Definition at line 162 of file GPUTPCTracker.cxx.
void o2::gpu::GPUTPCTracker::WriteOutput | ( | ) |
void o2::gpu::GPUTPCTracker::WriteOutputPrepare | ( | ) |
|
friend |
Definition at line 233 of file GPUTPCTracker.h.
|
friend |
Definition at line 235 of file GPUTPCTracker.h.
|
friend |
Definition at line 234 of file GPUTPCTracker.h.
float o2::gpu::GPUTPCTracker::chi2 |
Definition at line 180 of file GPUTPCTracker.h.
int32_t hitIndex o2::gpu::GPUTPCTracker::const |
Definition at line 103 of file GPUTPCTracker.h.
float float float float float float& ErrZ2 o2::gpu::GPUTPCTracker::const |
Definition at line 156 of file GPUTPCTracker.h.
Definition at line 164 of file GPUTPCTracker.h.
float float float o2::gpu::GPUTPCTracker::DzDs |
Definition at line 108 of file GPUTPCTracker.h.
char int32_t const GPUTPCTrackParam float float& o2::gpu::GPUTPCTracker::ErrY2 |
Definition at line 97 of file GPUTPCTracker.h.
const GPUTPCTrackParam float float& o2::gpu::GPUTPCTracker::ErrY2 |
Definition at line 103 of file GPUTPCTracker.h.
float float float float float& o2::gpu::GPUTPCTracker::ErrY2 |
Definition at line 108 of file GPUTPCTracker.h.
char int32_t const GPUTPCTrackParam float float float& o2::gpu::GPUTPCTracker::ErrZ2 |
int32_t o2::gpu::GPUTPCTracker::hitIndex |
Definition at line 154 of file GPUTPCTracker.h.
char int32_t o2::gpu::GPUTPCTracker::iRow |
Definition at line 97 of file GPUTPCTracker.h.
char o2::gpu::GPUTPCTracker::sector |
Definition at line 97 of file GPUTPCTracker.h.
float float o2::gpu::GPUTPCTracker::sinPhi |
Definition at line 108 of file GPUTPCTracker.h.
char int32_t const GPUTPCTrackParam& o2::gpu::GPUTPCTracker::t |
Definition at line 97 of file GPUTPCTracker.h.
const GPUTPCTrackParam& o2::gpu::GPUTPCTracker::t |
Definition at line 103 of file GPUTPCTracker.h.
char int32_t const GPUTPCTrackParam float o2::gpu::GPUTPCTracker::time |
Definition at line 97 of file GPUTPCTracker.h.
const GPUTPCTrackParam float o2::gpu::GPUTPCTracker::time |
Definition at line 103 of file GPUTPCTracker.h.
float float float float o2::gpu::GPUTPCTracker::time |
Definition at line 108 of file GPUTPCTracker.h.
Definition at line 154 of file GPUTPCTracker.h.
int32_t int32_t o2::gpu::GPUTPCTracker::weight = (((float)NHits * (chi2_suppress - chi2 / 500.f)) * (1e9f / chi2_suppress / 160.f)) |
Definition at line 183 of file GPUTPCTracker.h.
Definition at line 190 of file GPUTPCTracker.h.
float o2::gpu::GPUTPCTracker::z |
Definition at line 108 of file GPUTPCTracker.h.