Abstract
One of the most computationally challenging problems expected for the High-Luminosity Large Hadron Collider (HL-LHC) is finding and fitting particle tracks during event reconstruction. Algorithms used at the LHC today rely on Kalman filtering, which builds physical trajectories incrementally while incorporating material effects and error estimation. Recognizing the need for faster computational throughput, we have adapted Kalman-filterbased methods for highly parallel, many-core SIMD and SIMT architectures that are now prevalent in high-performance hardware. Previously we observed significant parallel speedups, with physics performance comparable to CMS standard tracking, on Intel Xeon, Intel Xeon Phi, and (to a limited extent) NVIDIA GPUs. While early tests were based on artificial events occurring inside an idealized barrel detector, we showed subsequently that our mkFit software builds tracks successfully from complex simulated events (including detector pileup) occurring inside a geometrically accurate representation of the CMS-2017 tracker. Here, we report on advances in both the computational and physics performance of mkFit, as well as progress toward integration with CMS production software. Recently we have improved the overall efficiency of the algorithm by preserving short track candidates at a relatively early stage rather than attempting to extend them over many layers. Moreover, mkFit formerly produced an excess of duplicate tracks; these are now explicitly removed in an additional processing step. We demonstrate that with these enhancements, mkFit becomes a suitable choice for the first iteration of CMS tracking, and eventually for later iterations as well. We plan to test this capability in the CMS High Level Trigger during Run 3 of the LHC, with an ultimate goal of using it in both the CMS HLT and offline reconstruction for the HL-LHC CMS tracker.
Highlights
Algorithm OverviewOur implementation of the Kalman filter (KF) tracking algorithm is described in detail elsewhere [3,4,5,6,7,8,9,10,11,12] and it has not fundamentally changed, so only its main features will be summarized here
The reconstruction of charged particle tracks is crucial for the physics goals of the Large Hadron Collider (LHC) experiments as it is needed to estimate the particle momenta, identify the particle type, tag the flavor of hadron jets, and improve the resolution of both jet energy and missing transverse momentum
The challenge will be even greater at the High Luminosity LHC and especially at the High Level Trigger (HLT), an accurate measurement is needed quickly so that the most interesting events are stored for further processing
Summary
Our implementation of the KF tracking algorithm is described in detail elsewhere [3,4,5,6,7,8,9,10,11,12] and it has not fundamentally changed, so only its main features will be summarized here. KF operations are implemented using the Matriplex library, a matrix-major representation that allows for SIMD processing of track candidates; Matriplex auto-generates vectorized code that is aware of the matrix sparsity. The core of the track building algorithm achieves nearly 3x speedup from vectorization when using a vector size of 16 floats. We achieve further speedups of more than a factor of 30 compared to the single-threaded, vectorized execution of the full application. The multithreaded scaling is close to ideal when the number of threads does not exceed the number of available physical cores (32), and all threads are dedicated to different events (which is equivalent to a multi-process execution over multiple events)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have