Performance optimization for the LHCb experiment
Optimisation de performances pour l'expérience LHCb
Résumé
The LHCb experiment, at CERN, is preparing a major upgrade of its detector and a change from an hardware-based to a fully software-based trigger system. It is now facing the challenge of being able to process incoming events at a rate of 30 million events per second. To cope with this massive data input, the software must be optimized to use the processing power of the filtering farm more efficiently. This thesis focus on the first algorithm of LHCb's High Level Trigger software: the Vertex Locator (VELO) reconstruction algorithm. The VELO is the first detector encountered by particles, directly surrounding the interaction region. Its goal is to find the initial track candidate that are then followed through the other layers of the LHCb detector with a good enough resolution that they could also be used to locate the origin of the collisions. The first step of this algorithm is to prepare the data by grouping pixels of the silicon sensors into hits; this process is called connected component analysis (CCA). This thesis presents multiple new CCA algorithms for both CPU and GPU architectures. A new VELO reconstruction algorithm using SIMD is presented, that enable LHCb to process events in real time and improve the quality of the reconstruction. The SIMDWrapper library, developed for the new VELO algorithm, is now part of LHCb's software and is used in other algorithms.
L'expérience LHCb, au CERN, prépare une mise à niveau majeure de son détecteur et le passage d'un système de déclenchement matériel à un système de déclenchement entièrement logiciel. Elle est désormais confrontée au défi de pouvoir traiter les événements entrants à une cadence de 30 millions d'événements par seconde. Pour faire face à ce flux de données massif, le logiciel doit être optimisé pour utiliser plus efficacement la puissance de traitement de la ferme de filtrage. Cette thèse porte sur le premier algorithme du logiciel High Level Trigger de LHCb : l'algorithme de reconstruction du Vertex Locator (VELO). Le VELO est le premier détecteur rencontré par les particules, entourant directement la région d'interaction. Son objectif est de trouver les trajectoires candidates initiales qui seront ensuite suivies à travers les autres couches du détecteur LHCb. Ces trajectoires doivent être estimées avec une résolution suffisamment bonne pour qu'elles puisse également être utilisées pour localiser l'emplacement des collisions. La première étape de cet algorithme consiste à préparer les données en regroupant les pixels des capteurs en hits ; ce processus est appelé analyse en composantes connexes (ACC). Cette thèse présente plusieurs nouveaux algorithmes d'ACC pour les architectures CPU et GPU. Un nouvel algorithme de reconstruction pour le détecteur VELO utilisant le SIMD est présenté, qui permet à LHCb de traiter les événements en temps réel et d'améliorer la qualité de la reconstruction. La bibliothèque SIMDWrapper, développée pour ce nouvel algorithme, fait désormais partie du logiciel de LHCb et est utilisée dans d'autres algorithmes.
Origine | Version validée par le jury (STAR) |
---|