A detailed geometry description is essential to any high quality track reconstruction application. In current C++ based track reconstruction software libraries this is often achieved by an object oriented, polymorphic geometry description that implements different shapes and objects by extending a common base class. Such a design, however, has been shown to be problematic when attempting to adapt these application to run on heterogenous computing hardware, particularly on hardware accelerators. We present detray, a compile-time polymorphic and yet accurate track reconstruction geometry description which is part of the ACTS parallelization R&D efforts. detray is built as a indexed based geometry description with dedicated shallow memory layout, and uses variadic template programming to allow custom shapes and intersection algorithms rather than virtual inheritance. It implements the ACTS navigation model of boundary portals and purely surface based entities and is designed to serve as a potential geometry and navigation back-end to ACTS. detray is compatible with the vecmem memory management library and thus can be instantiated as a geometry model in host and device memory, respectively. We present the concepts, a propagation demonstrator using the Open Data Detector and discuss its portability and usage in device applications.
This project aims to establish a unified tracking detector geometry description for host/device code in order to enhance code and algorithm portability.
|Speaker time zone||Compatible with Europe|