Welcome to repository and documentation for ML pipelines and techniques by the ExatrkX Collaboration.
- To present the ExaTrkX Project pipeline for track reconstruction of TrackML and ITk data in a clear and simple way
- To present a set of templates, best practices and results gathered from significant trial and error, to speed up the development of others in the domain of machine learning for high energy physics. We focus on applications specific to detector physics, but many tools can be applied to other areas, and these are collected in an application-agnostic way in the Tools section.
To start as quickly as possible, clone the repository, Install and follow the steps in Quickstart. This will get you generating toy tracking data and running inference immediately. Many of the choices of structure will be made clear there. If you already have a particle physics problem in mind, you can apply the Template that is most suitable to your use case.
Once up and running, you may want to consider more complex ML Models. Many of these are built on other libraries (for example Pytorch Geometric).
Thank god that almost every package used in this library is available on conda and has known compatibility for both CPU and GPU (with CUDA v11.3). Therefore installation should be as simple as:
CPU-only installation
conda env create -f cpu_environment.yml python=3.9
conda activate exatrkx-cpu
pip install -e .
Or, after ensuring your GPU drivers are updated to run CUDA v11.3:
GPU installation
conda env create -f gpu_environment.yml python=3.9
conda activate exatrkx-gpu
pip install -e .
You should be ready for the Quickstart!
A very possible error will be
OSError: libcudart.so.XX.X: cannot open shared object file: No such file or directory
This indicates a mismatch between CUDA versions. Identify the library that called the error, and ensure there are no versions of this library installed in parallel, e.g. from a previous pip --user
install.