120 likes | 370 Views
ATLAS Software. Kaushik De University of Texas At Arlington based on a tutorial by P. Calafiura (LBNL) LHC Computing Workshop, Ankara May 2, 2008. References. Workbook https://twiki.cern.ch/twiki/bin/view/Atlas/WorkBook Athena Wiki: https://twiki.cern.ch/twiki/bin/view/Atlas/CoreSoftware
E N D
ATLAS Software Kaushik De University of Texas At Arlington based on a tutorial by P. Calafiura (LBNL) LHC Computing Workshop, Ankara May 2, 2008
References Workbook https://twiki.cern.ch/twiki/bin/view/Atlas/WorkBook Athena Wiki:https://twiki.cern.ch/twiki/bin/view/Atlas/CoreSoftware Glossary:http://cern.ch/wlav/athena/athask/glossary.html ATLAS Code LXR indexer: http://alxr.usatlas.bnl.gov/ cvs repository: http://atlas-sw.cern.ch/cgi-bin/viewcvs-atlas.cgi/offline/ Doxygen summary: http://atlas-computing.web.cern.ch/atlas-computing/links/nightlyDocDirectory/allpackages.html
Platform and Releases ATLAS software certified on linux SLC4 with gcc 3.4.x in 32 bits mode • Also built in native 64 bits and with gcc 4.1 • Port to Mac OS long-standing low priority goal • No Windows version planned Regular developer and production releases • 14.0.0 next production release, being validated • 14.1.0 latest developer, being validated • 13.0.40.3 latest production “cache” (bugfix patched release, distributed to Tier Xs)
Code Distribution • Each release, and many nightly builds can be installed on your laptop using pacman distribution kits • Mainly geared towards grid production and running existing code • Usable for code development https://uimon.cern.ch/twiki/bin/view/Atlas/WorkBookInstallingAtlasSoftware
CMT Configuration Management Tool www.cmtsite.org • Used for almost everything • Build releases • Setup work environment • Compile and install your code, jo files, ... • Generate documentation • Create distribution kits https://twiki.cern.ch/twiki/bin/view/Atlas/CMTInAtlas
AtlasLogin Standard environment setup CMT package takes care of setting up core cmt environment • $CMT ..CONFIG, ..PATH, ..PROJECTPATH • Differ per release, and per workspace • Define lookup for rest of environment setup • CMT project, part of releases and kit Centrally maintained (lots of work) Reasonably customizable Easy to use! > setup 13.2.0,dbg https://twiki.cern.ch/twiki/bin/view/Atlas/AtlasLogin
Important envars (1) • $CMTCONFIG • Determined by platform, compiler, and dbg or opt. Defines library selection and compiler/linker options • $CMTPATH • Search path for finding packages. • $CMTPROJECTPATH • Search path for finding projects • cmt show path • As envars above can change on-the-fly Bootstrap Settings
Important envars (2) • $JOBOPTSEARCHPATH • For athena.py to find job options files • $DATAPATH • For PathResolver to find data files • $PATH • For shell to find binaries • $LD_LIBRARY_PATH • For dld.so to find libraries • $PYTHONPATH • For python to find modules Final Settings
Athena in a nut shell Athena is based on LHCb's GAUDI
Job Options Use python scripts to configure • Global job properties • Verbosity, inputs, outputs, no of evts to process,... • Hierarchy of JobProperties containers jobproperties.CaloCellFlags.doLArCellEmMisCalib() • Detector tasks • Digitize InDet, Reconstruct Pixel, skip LAr,... • https://twiki.cern.ch/twiki/bin/view/Atlas/DetFlags • Gaudi Components (Algs, Tools, Services) • via Configurables, python classes mirroring C++ • Set component properties, see doc, default values https://twiki.cern.ch/twiki/bin/view/Atlas/configurableMigration
Selected Top-level Job Options HelloWorld http://alxr.usatlas.bnl.gov/lxr/source/atlas/Control/AthenaExamples/AthExHelloWorld/share/HelloWorldOptions.py Job Options Examples (more advanced) http://alxr.usatlas.bnl.gov/lxr/source/atlas/Control/AthenaExamples/AthExJobOptions/share/ Digitization (and pileup) http://alxr.usatlas.bnl.gov/lxr/source/atlas/Simulation/Digitization/share/DigitizationRTT_all_pileup10_perfmon.py RecExCommon (standard offline reco) http://alxr.usatlas.bnl.gov/lxr/source/atlas/Reconstruction/RecExample/RecExCommon/share/RecExCommon_topOptions.py RecExCommission (combined cosmic reco) http://alxr.usatlas.bnl.gov/lxr/source/atlas/Reconstruction/RecExample/RecExCommission/share/RecExCommission_topOptions.py AODtoDPD (primary DPD maker) http://alxr.usatlas.bnl.gov/lxr/source/atlas/PhysicsAnalysis/DPDUtils/share/AODtoDPD.py
Job Transformations Python scripts used to run production tasks • More complex than job options scripts • Variable configuration (e.g. Input files) • Validate results, produce report • Flexible framework helps writing them https://twiki.cern.ch/twiki/bin/view/Atlas/AtlasPythonTrf • Many ready to use • Event Generators • G4 simulation, digitization/pileup • Reconstruction