![]() |
Project
|
#include <GPUReconstructionOCL.h>
Protected Member Functions | |
| int32_t | InitDevice_Runtime () override |
| int32_t | ExitDevice_Runtime () override |
| virtual int32_t | GPUChkErrInternal (const int64_t error, const char *file, int32_t line) const override |
| void | SynchronizeGPU () override |
| int32_t | GPUDebug (const char *state="UNKNOWN", int32_t stream=-1, bool force=false) override |
| void | SynchronizeStream (int32_t stream) override |
| void | SynchronizeEvents (deviceEvent *evList, int32_t nEvents=1) override |
| void | StreamWaitForEvents (int32_t stream, deviceEvent *evList, int32_t nEvents=1) override |
| bool | IsEventDone (deviceEvent *evList, int32_t nEvents=1) override |
| size_t | WriteToConstantMemory (size_t offset, const void *src, size_t size, int32_t stream=-1, deviceEvent *ev=nullptr) override |
| size_t | GPUMemCpy (void *dst, const void *src, size_t size, int32_t stream, int32_t toGPU, deviceEvent *ev=nullptr, deviceEvent *evList=nullptr, int32_t nEvents=1) override |
| void | ReleaseEvent (deviceEvent ev) override |
| void | RecordMarker (deviceEvent *ev, int32_t stream) override |
| template<class T , int32_t I = 0> | |
| int32_t | AddKernel () |
| template<class S , class T , int32_t I> | |
| S & | getKernelObject () |
| int32_t | GetOCLPrograms () |
Protected Member Functions inherited from o2::gpu::GPUReconstructionProcessing::KernelInterface< GPUReconstructionOCL, GPUReconstructionDeviceBase > | |
| virtual void | runKernelVirtual (const int num, const void *args) |
Protected Member Functions inherited from o2::gpu::GPUReconstructionDeviceBase | |
| GPUReconstructionDeviceBase (const GPUSettingsDeviceBackend &cfg, size_t sizeCheck) | |
| int32_t | InitDevice () override |
| int32_t | ExitDevice () override |
| int32_t | registerMemoryForGPU_internal (const void *ptr, size_t size) override |
| int32_t | unregisterMemoryForGPU_internal (const void *ptr) override |
| void | unregisterRemainingRegisteredMemory () |
| size_t | TransferMemoryInternal (GPUMemoryResource *res, int32_t stream, deviceEvent *ev, deviceEvent *evList, int32_t nEvents, bool toGPU, const void *src, void *dst) override |
| size_t | GPUMemCpyAlways (bool onGpu, void *dst, const void *src, size_t size, int32_t stream, int32_t toGPU, deviceEvent *ev=nullptr, deviceEvent *evList=nullptr, int32_t nEvents=1) override |
| int32_t | GetGlobalLock (void *&pLock) |
| void | ReleaseGlobalLock (void *sem) |
| void | runConstantRegistrators () |
Protected Member Functions inherited from o2::gpu::GPUReconstructionCPU | |
| GPUReconstructionCPU (const GPUSettingsDeviceBackend &cfg) | |
| size_t | TransferMemoryResourceToGPU (GPUMemoryResource *res, int32_t stream=-1, deviceEvent *ev=nullptr, deviceEvent *evList=nullptr, int32_t nEvents=1) |
| size_t | TransferMemoryResourceToHost (GPUMemoryResource *res, int32_t stream=-1, deviceEvent *ev=nullptr, deviceEvent *evList=nullptr, int32_t nEvents=1) |
| size_t | TransferMemoryResourcesToGPU (GPUProcessor *proc, int32_t stream=-1, bool all=false) |
| size_t | TransferMemoryResourcesToHost (GPUProcessor *proc, int32_t stream=-1, bool all=false) |
| size_t | TransferMemoryResourceLinkToGPU (int16_t res, int32_t stream=-1, deviceEvent *ev=nullptr, deviceEvent *evList=nullptr, int32_t nEvents=1) |
| size_t | TransferMemoryResourceLinkToHost (int16_t res, int32_t stream=-1, deviceEvent *ev=nullptr, deviceEvent *evList=nullptr, int32_t nEvents=1) |
| virtual void | SetONNXGPUStream (Ort::SessionOptions &, int32_t, int32_t *) |
| int32_t | GetThread () |
Protected Member Functions inherited from o2::gpu::GPUReconstructionProcessing | |
| 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) |
Protected Member Functions inherited from o2::gpu::GPUReconstruction | |
| void | AllocateRegisteredMemoryInternal (GPUMemoryResource *res, GPUOutputControl *control, GPUReconstruction *recPool) |
| void | FreeRegisteredMemory (GPUMemoryResource *res) |
| GPUReconstruction (const GPUSettingsDeviceBackend &cfg) | |
| int32_t | InitPhaseBeforeDevice () |
| int32_t | InitPhasePermanentMemory () |
| int32_t | InitPhaseAfterDevice () |
| void | WriteConstantParams (int32_t stream=-1) |
| void | UpdateMaxMemoryUsed () |
| int32_t | EnqueuePipeline (bool terminate=false) |
| GPUChain * | GetNextChainInQueue () |
| size_t | AllocateRegisteredMemoryHelper (GPUMemoryResource *res, void *&ptr, void *&memorypool, void *memorybase, size_t memorysize, void *(GPUMemoryResource::*SetPointers)(void *) const, 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 > | |
| void | DumpDynamicStructToFile (const T *obj, size_t dynamicSize, const char *file) |
| template<class T > | |
| std::unique_ptr< T > | ReadStructFromFile (const char *file, T *obj=nullptr, bool *errorOnMissing=nullptr, bool allowSmaller=false) |
| template<class T , auto F> | |
| aligned_unique_buffer_ptr< T > | ReadDynamicStructFromFile (const char *file) |
| virtual RecoStepField | AvailableGPURecoSteps () |
| virtual bool | CanQueryMaxMemory () |
| GPUConstantMem * | processors () |
| const GPUConstantMem * | processors () const |
| GPUParam & | param () |
| void | debugInit () |
| void | debugExit () |
Additional Inherited Members | |
Public Types inherited from o2::gpu::GPUReconstructionProcessing | |
| using | deviceEvent = gpu_reconstruction_kernels::deviceEvent |
| using | threadContext = gpu_reconstruction_kernels::threadContext |
Public Types inherited from o2::gpu::GPUReconstruction | |
| enum | InOutPointerType : uint32_t { CLUSTER_DATA = 0 , SECTOR_OUT_TRACK = 1 , SECTOR_OUT_CLUSTER = 2 , MC_LABEL_TPC = 3 , MC_INFO_TPC = 4 , MERGED_TRACK = 5 , MERGED_TRACK_HIT = 6 , TRD_TRACK = 7 , TRD_TRACKLET = 8 , RAW_CLUSTERS = 9 , CLUSTERS_NATIVE = 10 , TRD_TRACKLET_MC = 11 , TPC_COMPRESSED_CL = 12 , TPC_DIGIT = 13 , TPC_ZS = 14 , CLUSTER_NATIVE_MC = 15 , TPC_DIGIT_MC = 16 , TRD_SPACEPOINT = 17 , TRD_TRIGGERRECORDS = 18 , TF_SETTINGS = 19 } |
| enum class | krnlDeviceType : int32_t { CPU = 0 , Device = 1 , Auto = -1 } |
| using | GeometryType = gpudatatypes::GeometryType |
| using | DeviceType = gpudatatypes::DeviceType |
| using | RecoStep = gpudatatypes::RecoStep |
| using | GeneralStep = gpudatatypes::GeneralStep |
| using | RecoStepField = gpudatatypes::RecoStepField |
| using | InOutTypeField = gpudatatypes::InOutTypeField |
| using | alignedDefaultBufferDeleter = alignedDeleter< char, constants::GPU_BUFFER_ALIGNMENT > |
Static Public Member Functions inherited from o2::gpu::GPUReconstructionProcessing | |
| template<class T , int32_t I> | |
| static const char * | GetKernelName () |
| static const std::string & | GetKernelName (int32_t i) |
| template<class T , int32_t I = 0> | |
| static uint32_t | GetKernelNum () |
| static uint32_t | GetNKernels () |
Static Public Member Functions inherited from o2::gpu::GPUReconstruction | |
| static DeviceType | GetDeviceType (const char *type) |
| static uint32_t | getNIOTypeMultiplicity (InOutPointerType type) |
| static GPUReconstruction * | CreateInstance (const GPUSettingsDeviceBackend &cfg) |
| static GPUReconstruction * | CreateInstance (DeviceType type=DeviceType::CPU, bool forceType=true, GPUReconstruction *master=nullptr) |
| static GPUReconstruction * | CreateInstance (int32_t type, bool forceType, GPUReconstruction *master=nullptr) |
| static GPUReconstruction * | CreateInstance (const char *type, bool forceType, GPUReconstruction *master=nullptr) |
| static bool | CheckInstanceAvailable (DeviceType type, bool verbose) |
| static int32_t | getHostThreadIndex () |
| template<typename T > | |
| static T * | alignedDefaultBufferAllocator (size_t n) |
Public Attributes inherited from o2::gpu::GPUReconstruction | |
| std::shared_ptr< GPUReconstructionThreading > | mThreading |
Static Public Attributes inherited from o2::gpu::GPUReconstructionCPU | |
| static constexpr krnlRunRange | krnlRunRangeNone {0} |
| static constexpr krnlEvent | krnlEventNone = krnlEvent{nullptr, nullptr, 0} |
Static Public Attributes inherited from o2::gpu::GPUReconstruction | |
| static constexpr uint32_t | NSECTORS = GPUTPCGeometry::NSECTORS |
| static constexpr const char *const | GEOMETRY_TYPE_NAMES [] = {"INVALID", "ALIROOT", "O2"} |
| static constexpr GeometryType | geometryType = GeometryType::O2 |
| static constexpr const char *const | IOTYPENAMES [] |
Static Protected Member Functions inherited from o2::gpu::GPUReconstructionDeviceBase | |
| static std::vector< void *(*)()> & | getDeviceConstantMemRegistratorsVector () |
Static Protected Member Functions inherited from o2::gpu::GPUReconstruction | |
| static std::shared_ptr< LibraryLoader > * | GetLibraryInstance (DeviceType type, bool verbose) |
| static std::string | getBackendVersions () |
| static GPUReconstruction * | GPUReconstruction_Create_CPU (const GPUSettingsDeviceBackend &cfg) |
Static Protected Attributes inherited from o2::gpu::GPUReconstructionProcessing | |
| static const std::vector< std::string > | mKernelNames |
Static Protected Attributes inherited from o2::gpu::GPUReconstruction | |
| static std::shared_ptr< LibraryLoader > | sLibCUDA |
| static std::shared_ptr< LibraryLoader > | sLibHIP |
| static std::shared_ptr< LibraryLoader > | sLibOCL |
| static std::unique_ptr< debugInternal > | mDebugData |
Definition at line 30 of file GPUReconstructionOCL.h.
| GPUReconstructionOCL::GPUReconstructionOCL | ( | const GPUSettingsDeviceBackend & | cfg | ) |
Definition at line 37 of file GPUReconstructionOCL.cxx.
|
override |
Definition at line 46 of file GPUReconstructionOCL.cxx.
|
protected |
Definition at line 54 of file GPUReconstructionOCLKernels.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUReconstructionDeviceBase.
Definition at line 397 of file GPUReconstructionOCL.cxx.
Definition at line 70 of file GPUReconstructionOCLKernels.cxx.
|
protected |
Definition at line 520 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUReconstructionDeviceBase.
Definition at line 55 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUReconstructionDeviceBase.
Definition at line 503 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUReconstructionDeviceBase.
Definition at line 429 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUReconstructionDeviceBase.
Definition at line 64 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Reimplemented from o2::gpu::GPUReconstructionCPU.
Definition at line 491 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Reimplemented from o2::gpu::GPUReconstructionCPU.
Definition at line 471 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Reimplemented from o2::gpu::GPUReconstructionCPU.
Definition at line 469 of file GPUReconstructionOCL.cxx.
|
inline |
Definition at line 23 of file GPUReconstructionOCLKernels.cxx.
|
overrideprotectedvirtual |
Reimplemented from o2::gpu::GPUReconstructionCPU.
Definition at line 484 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Reimplemented from o2::gpu::GPUReconstructionCPU.
Definition at line 482 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Reimplemented from o2::gpu::GPUReconstructionCPU.
Definition at line 473 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Reimplemented from o2::gpu::GPUReconstructionCPU.
Definition at line 480 of file GPUReconstructionOCL.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUReconstructionDeviceBase.
Definition at line 457 of file GPUReconstructionOCL.cxx.
|
protected |
Definition at line 60 of file GPUReconstructionOCL.h.
|
protected |
Definition at line 61 of file GPUReconstructionOCL.h.