When a particular build of an Athena project is deemed ready for production it will be installed as a numbered release onto the ATLAS production CVMFS server.
ATLAS software is numbered according to the following scheme:
A refers to the release series, e.g., release series
23 is used for Run 3 simulation and data taking 2023. NB that the release series matching the data taking year is here coincidental, and does not represent a convention.
B is the release flavour and usually corresponds to a particular
branch in the git repository for which the code base needs to be
23.0 is the release series for MC23 simulation, and 2023 Tier-0 reconstruction & Trigger, while
23.2 is the release series for analysis.
Principle release flavours are:
|0||Tier-0 reconstruction, trigger, and corresponding simulation production|
|2||Derivations and Analysis|
The numbering scheme reflects historical releases where a larger number of different flavours were created. These have been consolidated since release 22.0 resulting in fewer projects, but the numbering for those that remain was kept the same to remain consistent.
Note that while there is a strong correspondence between release flavour and
Athena Project, it is not
both be built from flavour
X is the major release number, monotonically increasing as code is developed
with bugs fixed and enhancements added.
Y will be used is a minor release number is required for developments
that branched from an older major release. e.g.,
any fixes required for MC16a, as releases
21.0.21 onwards contained
incompatible changes for MC16c. Most releases will not have a minor release number, and so
A.B.X is fully sufficient.
To setup a production release the release number and project need to
be specified to
Release 23.0 is the current release for 2023 data taking, trigger, reprocessing, and MC production. It is a largely technical update with respect to
22.0, in order to provide a stable release through to the end of Run3, and provides full backwards-compatibility with outputs produced in that release. Switching between
23.0 should therefore require only minor adaptations if any.
Some key features are:
HEPMC3and 64-bit event numbers, allowing for compatibility with future generator versions and larger event generation files to be produced, respectively.
LCG_102b) used for providing common libraries such as
ROOT, allowing for future compatibility with Centos9s/AlmaLinux9/RHEL9 operating systems.
AOD files produced in
23.0 can be used to produce derivations in
24.0-series releases (see the description in earlier section)
Release 22.0 was the release used for initial Run3 data taking, trigger, reprocessing, and MC production in 2022. It represents the culmination of a multi-year development program:
AOD files produced in
22.0 can be used to produce derivations in
23.0-series releases (up to
Release 21.0 was the release for Run2 data taking, trigger, reprocessing, and MC production. It was the release series in which the current CMake-based build system, and gitlab-based code versioning, were first used.
NB future reprocessings of Run2 data, and associated MC productions, will be performed in 23.0 (or newer)
Releases prior to 21.0 used an entirely different release building and versioning infrastructure, and so are not covered here.
It is very easy to see which production releases are available, just by looking in CVMFS, e.g.,
$ ls /cvmfs/atlas.cern.ch/repo/sw/software/23.0/Athena 23.0.0 23.0.1 23.0.10 23.0.11 23.0.2 23.0.3 23.0.4 23.0.5 23.0.6 23.0.7 23.0.8 23.0.9
Where the release series and flavour are encoded in the highest
level directory, then the project, then the release number
See the full asetup users guide for further options.
When a git tag is made for a production release the release coordinator will add some release notes to the tag, which you can read directly in GitLab (just navigate to the tag of interest) or through the git command line:
$ git show release/23.0.11 tag release/23.0.11 Tagger: Tadej Novak <firstname.lastname@example.org> Date: Wed Dec 7 13:27:09 2022 +0100 Release for derivations production and physics validation commit 115629ba8b6a28ad16c5c09dff994a3c43339faf (tag: release/23.0.11, tag: release/22.6.26, tag: nightly/master/2022-12-07T0501, tag: nightly/master/2022-12-07T0313, tag: nightly/master/2022-12-07T0220, tag: nightly/master/2022-12-07T0001, tag: nightly/master/2022-12-06T2300, tag: nightly/master/2022-12-06T2101, tag: nightly/master/2022-12-06T2001, tag: nightly/master/2022-12-06T2000) Merge: e823350ccd3 7681d5affec ...
If you need to find out which nightly build
corresponded to a particular release the
ReleaseData file contains
$ cat /cvmfs/atlas.cern.ch/repo/sw/software/23.0/Athena/23.0.11/InstallArea/x86_64-centos7-gcc11-opt/ReleaseData [release_metadata] release:23.0.11 nightly name:master project name:Athena nightly release:115629ba8b6 date:2022-12-06T2101 compiler:GNU-11.2.0 cuda:NVIDIA-11.7.99 cxxpath:/cvmfs/sft.cern.ch/lcg/releases/gcc/11.2.0-8a51a/x86_64-centos7/bin/g++ cudapath:/cvmfs/sft.cern.ch/lcg/releases/LCG_102b_ATLAS_6/cuda/11.7.1/x86_64-centos7-gcc11-opt/bin/nvcc cmake:3.21.3
You can also search for references with the right tag or hash
in git using
$ git describe --tags --match 'release/*' nightly/22.0/2022-11-01T2101 release/22.0.101 $ git describe --tags --match 'nightly/*' release/22.0.101 nightly/22.0/2022-11-01T2101 $ git describe --tags --match 'nightly/*' 5a344df38c0 nightly/22.0/2022-11-01T2101