ITS GPU tracking
- General priorities:
- Integration into the FST: done
- [WIP] Thrust allocator with external memory management: for the moment it compiles but does not work, needs dedicated discussion.
- Focusing on porting all of what is possible on the device, extending the state of the art, and minimising computing on the host.
- Moving vertexing routines to the externally managed memory system. -> WIP
- Currently optimising the o2::its::timeframeGPU intialisation GPU transfers, trying to maximise data reuse & anticipating loads when it is possible.
- Optimizations:
- Asynchronous parallelisation in the tracklet finding, i.e. Multi-streaming for obvious parallelisations.
- intelligent scheduling and multi-streaming can happen right after.
- Kernel-level optimisations to be investigated.
TODO:
-
- Reproducer for HIP bug on multi-threaded track fitting: no follow-up yet.
- Fix possible execution issues and known discrepancies when using
gpu-reco-workflow: no progress.
DCAFitterGPU
- Deterministic approach via using
SMatrixGPU on the host, under particular configuration: no progress.