Abstract

The offline software framework of the ATLAS experiment (Athena) consists of many small components of various types like Algorithm, Tool or Service. To assemble these components into an executable application for event processing, a dedicated configuration step is necessary. The configuration of a particular job depends on the work-flow (simulation, reconstruction, high-level trigger, overlay, calibration, analysis ...) and the input data (real or simulated data, beam-energy, ...). The configuration step is done by executing python code. The resulting config-uration depends on optionally pre-set flags as well as meta-data about the data to be processed. For the python configuration code, there is almost no structure enforced, leaving the full power of python to the user. While this approach did work, it also proved to be error prone and complicated to use. It also leads to jobs containing more components that they actually need. For LHC Run 3 a more robust system is envisioned. It is still based on python but enforces a structure and emphasis modularity. This contribution briefly reports about the configuration system used during LHC Run 1 and Run 2 and details the prototype of an improved system to be used in Run 3 and beyond.

Highlights

  • The software framework of the ATLAS Experiment [1], Athena [2], consists of thousands of C++-written components. They are assembled at run-time into executable jobs

  • The individual components can define properties that can be set at run-time

  • This component model allows for a high degree of flexibility

Read more

Summary

Introduction

The software framework of the ATLAS Experiment [1], Athena [2], consists of thousands of C++-written components. They are assembled at run-time into executable jobs. The individual components can define properties (variables) that can be set at run-time. This component model allows for a high degree of flexibility. The Athena framework is used in the high-level trigger, reconstruction, simulation, digitzation and to some extend for analysis jobs. This article is about configuring Athena by defining a set of components, their properties and the relationship between

Types of components
A bit of history
Auto-Configuration
Basic principles of the new configuration system
Elements of the new configuration system
De-Duplication
Configuration flags
Integration
Current status and plans

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.