Speaker
Graeme Stewart
(University of Glasgow (GB))
Description
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 laid 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.
Authors
Andrea Dotti
(SLAC National Accelerator Laboratory (US))
Benjamin Michael Wynne
(University of Edinburgh (GB))
Charles Leggett
(Lawrence Berkeley National Lab. (US))
David Malon
(Argonne National Laboratory (US))
Graeme Stewart
(University of Glasgow (GB))
John Baines
(STFC - Rutherford Appleton Lab. (GB))
Paolo Calafiura
(Lawrence Berkeley National Lab. (US))
Peter Van Gemmeren
(Argonne National Laboratory (US))
Scott Snyder
(Brookhaven National Laboratory (US))
Steven Andrew Farrell
(Lawrence Berkeley National Lab. (US))
Tomasz Bold
(AGH Univ. of Science and Technology, Krakow)
Vakho Tsulaia
(Lawrence Berkeley National Lab. (US))