Cargando…

Multi-threaded Software Framework Development for the ATLAS Experiment

ATLAS's current software framework, Gaudi/Athena, has been very successful for the experiment in LHC Runs 1 and 2. However, its single threaded design has been recognised for some time to be increasingly problematic as CPUs have increased core counts and decreased available memory per core. Eve...

Descripción completa

Detalles Bibliográficos
Autores principales: Stewart, Graeme, Bold, Tomasz, Baines, John, Calafiura, Paolo, Dotti, Andrea, Farrell, Steven, Leggett, Charles, Malon, David, Ritsch, Elmar, Snyder, Scott, Tsulaia, Vakhtang, van Gemmeren, Peter, Wynne, Benjamin
Lenguaje:eng
Publicado: 2016
Materias:
Acceso en línea:http://cds.cern.ch/record/2120835
Descripción
Sumario:ATLAS's current software framework, Gaudi/Athena, has been very successful for the experiment in LHC Runs 1 and 2. However, its single threaded design has been recognised for some time to be increasingly problematic as CPUs have increased core counts and decreased available memory per core. Even the multi-process version of Athena, AthenaMP, will not scale to the range of architectures we expect to use beyond Run2. ATLAS examined the requirements on an updated multi-threaded framework and layed out plans for a new framework, including better support for high level trigger (HLT) use cases, in 2014. In this paper we report on our progress in developing the new multi-threaded task parallel extension of Athena, AthenaMT. Implementing AthenaMT has required many significant code changes. Progress has been made in updating key concepts of the framework, to allow the incorporation of different levels of thread safety in algorithmic code (from un-migrated thread-unsafe code, to thread safe copyable code to reentrant code). Substantial advances have also been made in implementing a data flow centric design, which has fundamental implications on the structure of the framework, as well as on the development of the new 'event views' infrastructure. These event views support partial event processing and are an essential component to support the HLT's processing of certain regions of interest and we give results from early tests. A major effort has also been invested to have an early version of AthenaMT that can run simulation on many core architectures, which has augmented the understanding gained from work on earlier demonstrators ATLAS demonstrators. We also discuss progress in planning the migration of the large ATLAS algorithmic code base to AthenaMT for Run3.