|
| | ~GPUReconstructionProcessing () override |
| |
| int32_t | getNKernelHostThreads (bool splitCores) |
| |
| uint32_t | getNActiveThreadsOuterLoop () const |
| |
| void | SetNActiveThreadsOuterLoop (uint32_t f) |
| |
| uint32_t | SetAndGetNActiveThreadsOuterLoop (bool condition, uint32_t max) |
| |
| void | runParallelOuterLoop (bool doGPU, uint32_t nThreads, std::function< void(uint32_t)> lambda) |
| |
| void | SetNActiveThreads (int32_t n) |
| |
| const std::string & | GetKernelName (int32_t i) const |
| |
| auto & | getRecoStepTimer (RecoStep step) |
| |
| HighResTimer & | getGeneralStepTimer (GeneralStep step) |
| |
| template<class T > |
| void | AddGPUEvents (T *&events) |
| |
| virtual std::unique_ptr< threadContext > | GetThreadContext () override |
| |
| const GPUDefParameters & | getGPUParameters (bool doGPU) const override |
| |
| virtual | ~GPUReconstruction () |
| |
| | GPUReconstruction (const GPUReconstruction &)=delete |
| |
| GPUReconstruction & | operator= (const GPUReconstruction &)=delete |
| |
| template<class T , typename... Args> |
| T * | AddChain (Args... args) |
| |
| int32_t | Init () |
| |
| int32_t | Finalize () |
| |
| int32_t | Exit () |
| |
| void | DumpSettings (const char *dir="") |
| |
| int32_t | ReadSettings (const char *dir="") |
| |
| void | PrepareEvent () |
| |
| virtual int32_t | RunChains ()=0 |
| |
| uint32_t | getNEventsProcessed () |
| |
| uint32_t | getNEventsProcessedInStat () |
| |
| int32_t | registerMemoryForGPU (const void *ptr, size_t size) |
| |
| int32_t | unregisterMemoryForGPU (const void *ptr) |
| |
| virtual void * | getGPUPointer (void *ptr) |
| |
| virtual void | startGPUProfiling () |
| |
| virtual void | endGPUProfiling () |
| |
| int32_t | GPUChkErrA (const int64_t error, const char *file, int32_t line, bool failOnError) |
| |
| int32_t | CheckErrorCodes (bool cpuOnly=false, bool forceShowErrors=false, std::vector< std::array< uint32_t, 4 > > *fillErrors=nullptr) |
| |
| void | RunPipelineWorker () |
| |
| void | TerminatePipelineWorker () |
| |
| GPUMemoryResource & | Res (int16_t num) |
| |
| template<class T > |
| int16_t | RegisterMemoryAllocation (T *proc, void *(T::*setPtr)(void *), int32_t type, const char *name="", const GPUMemoryReuse &re=GPUMemoryReuse()) |
| |
| size_t | AllocateMemoryResources () |
| |
| size_t | AllocateRegisteredMemory (GPUProcessor *proc, bool resetCustom=false) |
| |
| size_t | AllocateRegisteredMemory (int16_t res, GPUOutputControl *control=nullptr) |
| |
| void | AllocateRegisteredForeignMemory (int16_t res, GPUReconstruction *rec, GPUOutputControl *control=nullptr) |
| |
| void * | AllocateDirectMemory (size_t size, int32_t type) |
| |
| void * | AllocateVolatileDeviceMemory (size_t size) |
| |
| void * | AllocateVolatileMemory (size_t size, bool device) |
| |
| void | MakeFutureDeviceMemoryAllocationsVolatile () |
| |
| void | FreeRegisteredMemory (GPUProcessor *proc, bool freeCustom=false, bool freePermanent=false) |
| |
| void | FreeRegisteredMemory (int16_t res) |
| |
| void | ClearAllocatedMemory (bool clearOutputs=true) |
| |
| void | ReturnVolatileDeviceMemory () |
| |
| void | ReturnVolatileMemory () |
| |
| ThrustVolatileAllocator | getThrustVolatileDeviceAllocator () |
| |
| void | PushNonPersistentMemory (uint64_t tag) |
| |
| void | PopNonPersistentMemory (RecoStep step, uint64_t tag, const GPUProcessor *proc=nullptr) |
| |
| void | BlockStackedMemory (GPUReconstruction *rec) |
| |
| void | UnblockStackedMemory () |
| |
| void | ResetRegisteredMemoryPointers (GPUProcessor *proc) |
| |
| void | ResetRegisteredMemoryPointers (int16_t res) |
| |
| void | ComputeReuseMax (GPUProcessor *proc) |
| |
| void | PrintMemoryStatistics () |
| |
| void | PrintMemoryOverview () |
| |
| void | PrintMemoryMax () |
| |
| void | SetMemoryExternalInput (int16_t res, void *ptr) |
| |
| GPUMemorySizeScalers * | MemoryScalers () |
| |
| virtual void | GetITSTraits (std::unique_ptr< o2::its::TrackerTraits< 7 > > *trackerTraits, std::unique_ptr< o2::its::VertexerTraits< 7 > > *vertexerTraits, std::unique_ptr< o2::its::TimeFrame< 7 > > *timeFrame) |
| |
| bool | slavesExist () |
| |
| int | slaveId () |
| |
| DeviceType | GetDeviceType () const |
| |
| bool | IsGPU () const |
| |
| const GPUParam & | GetParam () const |
| |
| const GPUConstantMem & | GetConstantMem () const |
| |
| const GPUTrackingInOutPointers | GetIOPtrs () const |
| |
| const GPUSettingsGRP & | GetGRPSettings () const |
| |
| const GPUSettingsDeviceBackend & | GetDeviceBackendSettings () const |
| |
| const GPUSettingsProcessing & | GetProcessingSettings () const |
| |
| const GPUCalibObjectsConst & | GetCalib () const |
| |
| bool | IsInitialized () const |
| |
| void | SetSettings (float solenoidBzNominalGPU, const GPURecoStepConfiguration *workflow=nullptr) |
| |
| void | SetSettings (const GPUSettingsGRP *grp, const GPUSettingsRec *rec=nullptr, const GPUSettingsProcessing *proc=nullptr, const GPURecoStepConfiguration *workflow=nullptr) |
| |
| void | SetResetTimers (bool reset) |
| |
| void | SetDebugLevelTmp (int32_t level) |
| |
| void | UpdateSettings (const GPUSettingsGRP *g, const GPUSettingsProcessing *p=nullptr, const GPUSettingsRecDynamic *d=nullptr) |
| |
| void | UpdateDynamicSettings (const GPUSettingsRecDynamic *d) |
| |
| void | SetOutputControl (const GPUOutputControl &v) |
| |
| void | SetOutputControl (void *ptr, size_t size) |
| |
| void | SetInputControl (void *ptr, size_t size) |
| |
| GPUOutputControl & | OutputControl () |
| |
| uint32_t | NStreams () const |
| |
| const void * | DeviceMemoryBase () const |
| |
| RecoStepField | GetRecoSteps () const |
| |
| RecoStepField | GetRecoStepsGPU () const |
| |
| InOutTypeField | GetRecoStepsInputs () const |
| |
| InOutTypeField | GetRecoStepsOutputs () const |
| |
| int32_t | getRecoStepNum (RecoStep step, bool validCheck=true) |
| |
| int32_t | getGeneralStepNum (GeneralStep step, bool validCheck=true) |
| |
| void | setErrorCodeOutput (std::vector< std::array< uint32_t, 4 > > *v) |
| |
| std::vector< std::array< uint32_t, 4 > > * | getErrorCodeOutput () |
| |
| template<class T > |
| void | RegisterGPUProcessor (T *proc, bool deviceSlave) |
| |
| template<class T > |
| void | SetupGPUProcessor (T *proc, bool allocate) |
| |
| void | RegisterGPUDeviceProcessor (GPUProcessor *proc, GPUProcessor *slaveProcessor) |
| |
| void | ConstructGPUProcessor (GPUProcessor *proc) |
| |
| virtual void | PrintKernelOccupancies () |
| |
| double | GetStatKernelTime () |
| |
| double | GetStatWallTime () |
| |
| void | setDebugDumpCallback (std::function< void()> &&callback=std::function< void()>(nullptr)) |
| |
| bool | triggerDebugDump () |
| |
| std::string | getDebugFolder (const std::string &prefix="") |
| |
| int32_t | GetMaxBackendThreads () const |
| |
|
| | GPUReconstructionProcessing (const GPUSettingsDeviceBackend &cfg) |
| |
| template<class T , int32_t I = 0> |
| HighResTimer & | getKernelTimer (RecoStep step, int32_t num=0, size_t addMemorySize=0, bool increment=true) |
| |
| template<class T , int32_t J = -1> |
| HighResTimer & | getTimer (const char *name, int32_t num=-1) |
| |
| void | AllocateRegisteredMemoryInternal (GPUMemoryResource *res, GPUOutputControl *control, GPUReconstruction *recPool) |
| |
| void | FreeRegisteredMemory (GPUMemoryResource *res) |
| |
| | GPUReconstruction (const GPUSettingsDeviceBackend &cfg) |
| |
| int32_t | InitPhaseBeforeDevice () |
| |
| virtual int32_t | InitDevice ()=0 |
| |
| int32_t | InitPhasePermanentMemory () |
| |
| int32_t | InitPhaseAfterDevice () |
| |
| void | WriteConstantParams () |
| |
| virtual int32_t | ExitDevice ()=0 |
| |
| virtual size_t | WriteToConstantMemory (size_t offset, const void *src, size_t size, int32_t stream=-1, gpu_reconstruction_kernels::deviceEvent *ev=nullptr)=0 |
| |
| void | UpdateMaxMemoryUsed () |
| |
| int32_t | EnqueuePipeline (bool terminate=false) |
| |
| GPUChain * | GetNextChainInQueue () |
| |
| virtual int32_t | GPUChkErrInternal (const int64_t error, const char *file, int32_t line) const |
| |
| virtual int32_t | registerMemoryForGPU_internal (const void *ptr, size_t size)=0 |
| |
| virtual int32_t | unregisterMemoryForGPU_internal (const void *ptr)=0 |
| |
| size_t | AllocateRegisteredMemoryHelper (GPUMemoryResource *res, void *&ptr, void *&memorypool, void *memorybase, size_t memorysize, void *(GPUMemoryResource::*SetPointers)(void *), void *&memorypoolend, const char *device) |
| |
| size_t | AllocateRegisteredPermanentMemory () |
| |
| template<class T , class S > |
| uint32_t | DumpData (FILE *fp, const T *const *entries, const S *num, InOutPointerType type) |
| |
| template<class T , class S > |
| size_t | ReadData (FILE *fp, const T **entries, S *num, std::unique_ptr< T[]> *mem, InOutPointerType type, T **nonConstPtrs=nullptr) |
| |
| template<class T > |
| T * | AllocateIOMemoryHelper (size_t n, const T *&ptr, std::unique_ptr< T[]> &u) |
| |
| int16_t | RegisterMemoryAllocationHelper (GPUProcessor *proc, void *(GPUProcessor::*setPtr)(void *), int32_t type, const char *name, const GPUMemoryReuse &re) |
| |
| template<class T > |
| void | DumpFlatObjectToFile (const T *obj, const char *file) |
| |
| template<class T > |
| std::unique_ptr< T > | ReadFlatObjectFromFile (const char *file) |
| |
| template<class T > |
| void | DumpStructToFile (const T *obj, const char *file) |
| |
| template<class T > |
| std::unique_ptr< T > | ReadStructFromFile (const char *file) |
| |
| template<class T > |
| int32_t | ReadStructFromFile (const char *file, T *obj) |
| |
| virtual RecoStepField | AvailableGPURecoSteps () |
| |
| virtual bool | CanQueryMaxMemory () |
| |
| GPUConstantMem * | processors () |
| |
| const GPUConstantMem * | processors () const |
| |
| GPUParam & | param () |
| |
| void | debugInit () |
| |
| void | debugExit () |
| |