Event Data Model in ATLAS

Slides:



Advertisements
Similar presentations
Reconstruction and Analysis on Demand: A Success Story Christopher D. Jones Cornell University, USA.
Advertisements

ATLAS Analysis Model. Introduction On Feb 11, 2008 the Analysis Model Forum published a report (D. Costanzo, I. Hinchliffe, S. Menke, ATL- GEN-INT )
August 98 1 Jürgen Knobloch ATLAS Software Workshop Ann Arbor ATLAS Computing Planning ATLAS Software Workshop August 1998 Jürgen Knobloch Slides also.
CLEO’s User Centric Data Access System Christopher D. Jones Cornell University.
XAOD persistence considerations: size, versioning, schema evolution Joint US ATLAS Software and Computing / Physics Support Meeting Peter van Gemmeren.
Conditions DB in LHCb LCG Conditions DB Workshop 8-9 December 2003 P. Mato / CERN.
Alignment Strategy for ATLAS: Detector Description and Database Issues
Requirements for a Next Generation Framework: ATLAS Experience S. Kama, J. Baines, T. Bold, P. Calafiura, W. Lampl, C. Leggett, D. Malon, G. Stewart, B.
Event Data Model in ATLAS Edward Moyse (CERN) On behalf of the ATLAS collaboration CHEP 2004, Interlaken.
David N. Brown Lawrence Berkeley National Lab Representing the BaBar Collaboration The BaBar Mini  BaBar  BaBar’s Data Formats  Design of the Mini 
Event Data History David Adams BNL Atlas Software Week December 2001.
Introduction Advantages/ disadvantages Code examples Speed Summary Running on the AOD Analysis Platforms 1/11/2007 Andrew Mehta.
19 November 98 1 Jürgen Knobloch ATLAS Computing ATLAS Computing - issues for 1999 Jürgen Knobloch Slides also on:
LVL2 ID ESD/AOD classes Status and plans. PESA L2 ID Algorithms Review - RAL 25 July Ricardo Goncalo ESD/AOD More and more interest from physics.
AMB HW LOW LEVEL SIMULATION VS HW OUTPUT G. Volpi, INFN Pisa.
Navigation Timing Studies of the ATLAS High-Level Trigger Andrew Lowe Royal Holloway, University of London.
Vertex finding and B-Tagging for the ATLAS Inner Detector A.H. Wildauer Universität Innsbruck CERN ATLAS Computing Group on behalf of the ATLAS collaboration.
STAR Event data storage and management in STAR V. Perevoztchikov Brookhaven National Laboratory,USA.
CaloTopoCluster Based Energy Flow and the Local Hadron Calibration Mark Hodgkinson June 2009 Hadronic Calibration Workshop.
September 2007CHEP 07 Conference 1 A software framework for Data Quality Monitoring in ATLAS S.Kolos, A.Corso-Radu University of California, Irvine, M.Hauschild.
David Adams ATLAS DIAL: Distributed Interactive Analysis of Large datasets David Adams BNL August 5, 2002 BNL OMEGA talk.
CBM ECAL simulation status Prokudin Mikhail ITEP.
Moritz Backes, Clemencia Mora-Herrera Département de Physique Nucléaire et Corpusculaire, Université de Genève ATLAS Reconstruction Meeting 8 June 2010.
PROOF and ALICE Analysis Facilities Arsen Hayrapetyan Yerevan Physics Institute, CERN.
A New Tool For Measuring Detector Performance in ATLAS ● Arno Straessner – TU Dresden Matthias Schott – CERN on behalf of the ATLAS Collaboration Computing.
05/04/06Predrag Krstonosic - Cambridge True particle flow and performance of recent particle flow algorithms.
Integration of the ATLAS Tag Database with Data Management and Analysis Components Caitriana Nicholson University of Glasgow 3 rd September 2007 CHEP,
Kyle Cranmer (BNL)HCP, Isola d’Elba, March 23, The ATLAS Analysis Architecture Kyle Cranmer Brookhaven National Lab.
23/2/2000Status of GAUDI 1 P. Mato / CERN Computing meeting, LHCb Week 23 February 2000.
Software offline tutorial, CERN, Dec 7 th Electrons and photons in ATHENA Frédéric DERUE – LPNHE Paris ATLAS offline software tutorial Detectors.
Ties Behnke: Event Reconstruction 1Arlington LC workshop, Jan 9-11, 2003 Event Reconstruction Event Reconstruction in the BRAHMS simulation framework:
1 OO Muon Reconstruction in ATLAS Michela Biglietti Univ. of Naples INFN/Naples Atlas offline software MuonSpectrometer reconstruction (Moore) Atlas combined.
INFSO-RI Enabling Grids for E-sciencE Using of GANGA interface for Athena applications A. Zalite / PNPI.
27 March 2003RD Schaffer & C. Arnault CHEP031 Use of a Generic Identification Scheme Connecting Events and Detector Description in Atlas  Authors: C.
Muon Persistency Persistent Analysis Objects Muon Persistency Norbert Neumeister µ-PRS meeting February 10, 2004.
Status report for LVL2 e/  ESD/AOD Aims and constraints Tracking status Calorimetry status (Monika) Monika Wielers Ricardo Gonçalo.
Marco Cattaneo, 6-Apr Issues identified in sub-detector OO software reviews Calorimeters:18th February Tracking:24th March Rich:31st March.
STAR Simulation. Status and plans V. Perevoztchikov Brookhaven National Laboratory,USA.
Meeting with University of Malta| CERN, May 18, 2015 | Predrag Buncic ALICE Computing in Run 2+ P. Buncic 1.
ATLAS Physics Analysis Framework James R. Catmore Lancaster University.
Object-Oriented Track Reconstruction in the PHENIX Detector at RHIC Outline The PHENIX Detector Tracking in PHENIX Overview Algorithms Object-Oriented.
Mar 05 - hvdsOffline / HLT1  Athena SW Infrastructure  programming + applying tools wrt. dependencies between packages  developing + testing extra ideas.
AliRoot survey: Calibration P.Hristov 11/06/2013.
4 Dec., 2001 Software Week Data flow in the LArG Reconstruction software chain Updated status for various reconstruction algorithm LAr Converters and miscellaneous.
Barthélémy von Haller CERN PH/AID For the ALICE Collaboration The ALICE data quality monitoring system.
ANALYSIS TRAIN ON THE GRID Mihaela Gheata. AOD production train ◦ AOD production will be organized in a ‘train’ of tasks ◦ To maximize efficiency of full.
David Adams ATLAS Hybrid Event Store Integration with Athena/StoreGate David Adams BNL March 5, 2002 ATLAS Software Week Event Data Model and Detector.
CALIBRATION: PREPARATION FOR RUN2 ALICE Offline Week, 25 June 2014 C. Zampolli.
GUIDO VOLPI – UNIVERSITY DI PISA FTK-IAPP Mid-Term Review 07/10/ Brussels.
L1Calo Databases ● Overview ● Trigger Configuration DB ● L1Calo OKS Database ● L1Calo COOL Database ● ACE Murrough Landon 16 June 2008.
Measuring the B+→J/ψ (μμ) K+ Channel with the first LHC data in Atlas
Atlas IO improvements and Future prospects
Concluding discussion on Commissioning, Etmiss and DPD
Migration of reconstruction and analysis software to C++
MINERVA Z Mass Exercise
ALICE analysis preservation
Java Beans Sagun Dhakhwa.
Particle detection and reconstruction at the LHC (IV)
Progress with MUON reconstruction
OO Muon Reconstruction in ATLAS
An introduction to the ATLAS Computing Model Alessandro De Salvo
Grid Canada Testbed using HEP applications
Individual Particle Reconstruction
Linear Collider Simulation Tools
Simulation Framework Subproject cern
ATLAS DC2 & Continuous production
Use of GEANT4 in CMS The OSCAR Project
Planning next release of GAUDI
L. Glimcher, R. Jin, G. Agrawal Presented by: Leo Glimcher
Presentation transcript:

Event Data Model in ATLAS Edward Moyse, (University of Massachusetts Amherst) CHEP 2006, Mumbai

Introduction “For large collaborations like the ATLAS experiment common interfaces and common data objects are a necessity to insure easy maintenance and coherence of the experiments software platform over a long period of time.” This talk will give an overview of how the ATLAS EDM is constructed, what the constraints on it were, and what the benefits of this EDM are. All sub-detectors are touched on, but I will not have time to go into detail, but will concentrate instead on recent developments.

Computing Model ~1.6 Mb ~500 Kb ~100 Kb Amount of data per year: ~ 1PB Cost of distribution and storage is a key concern Subsets of full data distributed to remote sites. The Event Summary Data (ESD) is intended to contain the detailed output of reconstruction, and will contain sufficient information to allow Particle ID, track re-fitting, jet calibration to be re-done. Allows fast turn-around for 'tuning' of algorithms and calibrations Analysis Object Data (AOD) contains enough data for common analyses to be performed. In addition, TAGS (at AOD level) indicate key features of events, allowing the rapid selection of particular event types. Raw Data ~1.6 Mb Event Summary Data (ESD) ~500 Kb ~100 Kb Analysis Object Data (AOD) Analysis

Event Data Model The ATLAS EDM has been shaped by many considerations: Must allow the correct level of modularity ( raw data / ESD / AOD etc) to fulfil the computing model. (Obviously) must be able to encapsulate the required event data! Should promote code re-use by: Allowing the factoring out of common tools; Sharing data classes: Between offline reconstruction, and the online trigger Between the sub-detector systems … …whilst minimising/preventing unnecessary dependencies

Event Data Model (2) Separation of Event/Non-event data: For example, try to avoid having detector description (GeoModel) available in event data (normally use “Identifiers” instead) Event and non-event data are even stored differently: ATLAS has StoreGate, (a transient event store), and DetectorStore (exists for whole run) The design of the EDM has been strongly shaped by framework requirements The EDM must be “persistifiable” (ATLAS uses POOL to read/write data) which is a non-trivial requirement, and which excludes many possible EDM designs (more on this later) Truth Link EDM data objects and the simulated event.

Detector Sub-Systems Trackers Calorimeters Inner Detector Muon Spectrometer Calorimeters Tile Liquid Argon (LAr) Two types of detectors in ATLAS, trackers and calorimeters. The ATLAS EDM is designed to share as much code as possible, within the same sub-system type

Calorimeter RawChannel CaloCell CaloTower CaloCluster CellMaker CaloTowerMaker CaloClusterMaker LAr and Tile retain separate identities at raw data level but LAr and Tile converge at cell level: Calibrated calo cells produced from either Raw Data or simulation Calorimeter ‘towers’ then produced from the cells… along with ‘clusters’ which are collections of calorimeter elements (i.e. cells, towers, even clusters themselves) Reconstruction Input Object for both calorimeter types are ‘CaloCells’ and ‘CaloClusters’, with CaloCells present in ESD, and CaloClusters present in both AOD and ESD.

Calorimeter (2) Navigation It is possible to retrieve the individual cells used to create any calorimeter object by using the “Navigation Tokens” to retrieve the desired type I.e. using CaloCells as the token will return cell from e.g. an EnergyCluster Calorimeter data classes inherit from I4Momentum Allows use of calo objects as input to generic algorithms (Many analysis algorithms will only require a kinematic object to have a 4 momentum interface) Compactification To reduce the size of the persistifed data, the calorimeter cells are compressed before being output to disk. For more details, please see Poster : “142 - The Calorimeter Event Data Model for the ATLAS Experiment at LHC”

Tracking For Tracking to support two different sub-detectors, it is important to standardise more than just with a common Track and ‘hits’ We need common: Track parameter definitions Interfaces to clusters, drift circles etc. Error matrices In addition, we need a clean way to handle differing coordinate frames, introduced by the use of many surface types in tracking. Tools and Algorithms do not need to know specifics of detector. Generalised tools allow Tracking to work equally well on ID and Muons. Benefits:

Track One of the most important elements in the ATLAS EDM is the common Track (an ESD level object). It must work in a wide range of applications, from online (where speed is important) alignment studies (which need detailed information) … to reconstruction Tracks at ESD level consist of fitted measurements (with Muon and ID concrete implementations, which derive from a common base clase) on multiple surfaces It is the output from the fitters, and is the input to the combined reconstruction. All reconstruction packages use the same track class. For AOD, something more lightweight is needed: TrackParticles are created from Tracks: Contain summary information about parent track (number of hits on track etc) Are physics analysis objects, with 4-momenta (the class inherits from I4Momentum – in general AOD objects inherit from I4mom, and IParticle etc.) Can be used for vertex finding, but not re-fitting etc.

Persistency Issues Some problems with ATLAS’ persistency mechanisms, namely: ‘Schema evolution’ (see below) Size (our ESD is too large for our computing requirements) Performance issues reported with e.g. stl maps. Schema Evolution - a very brief overview follows: When ROOT reads data back in, it first creates an object of the same type (using the default constructor) and then ‘streams’ data into the object If the object that is created has a different ‘shape’ from the object that was written out (e.g. an int was removed from the class), then this streaming will not work - at best it fails, or crashes. Worst case : subtly corrupted data This can happen very easily, and an accidental ‘improvement’ of a transient EDM class can make recently produced data unreadable.

Solutions Creation of an ‘Event Management Board’, to determine what is to be persistified, and in what format, and in general to give guidance to developers. Will use … New tools to automatically detect schema change in our nightly builds We (with the help of Marcin Nowak) are currently testing a new design: two EDMs one for the transient world (i.e. designed for ease-of-use), and one for the persistent world (i.e. designed for as compact storage as possible) Aim to have raw data classes done by Release 12 (end of March)

An example… Transient Convertors Persistent CscRawDataContainer CscRawDataContainer_p1 CscRawDataCollection CscRawDataCollection_p1 CscRawData CscRawData_p1 CscRawData_p0 To write out CscRawData the convertors iterate through the container and collections, and produce a CscRawData_p1 for each CscRawData. virtual voidtransToPers(const CscRawData* transObj, CscRawData_p1* persObj, MsgStream &log) const; To read in, the convertor creates CscRawDatas, and the collections and container which house them virtual voidpersToTrans(const CscRawData_p1* persObj, CscRawData* transObj, MsgStream &log) const

Example (II) The trick is that the version on disk, the persistent object, has its version explicitly defined in the name. In the example shown, there are two persistent versions of CscRawData, CscRawData_p0 and CscRawData_p1 If we try to read old data into Athena, the object that is created is still the old type (CscRawData_p0) meaning we have no schema evolution. The convertors can now either pass this data to a specific method which handles the conversion to the current transient EDM, or fail gracefully. When we create the persistent models we can do some extra tricks Design persistent classes to enable use of ROOT ‘split mode’ to optimise perfomance. Compress the data double to float, and enums packed into bits. Smarter compression, such as multi-linear ranges to pack floats Pack several ints into one etc I.e. use knowledge of possible dynamic ranges to reduce ESD size.

Conclusion The transient EDM is rapidly stabilising Both in the calorimeter, and the tracking, the use of common interfaces has allowed the development of common tools (e.g. fitters which work on ID and Muon data, with little to no tweaking) More importantly, it appears to be fulfilling the design requirements (and has been tested on real data: cosmics and Combined Test Beam). However, the issue of persistency is obviously a big concern. Being tackled both at the human level, with the creation of the ‘Event Management Board’ … and technically with, the proposed solution of having a transient/persistent EDM.