Skip to content

Add Athena TEvent-based file access

Teng Jian Khoo requested to merge khoo/athena:22.0-xAODEventSelectorCfg into 22.0

FYI @will, @jburr

I took a stab at converting ReadxAODHybrid.py to CA, and it seemed pretty easy to get a working job.

The good news:

  • Running on 10k events of a DAOD_PHYS file via AthAnalysis docker image on my laptop, defaulting to branch access, I got the following speeds: xAODReadCfg:
cObjR_ALL                                            INFO Time User   : Tot=   30 [ms] Ave/Min/Max=     1.5(+-    3.57)/       0/      10 [ms] #= 20
cObj_ALL                                             INFO Time User   : Tot=   60 [ms] Ave/Min/Max=    3.33(+-    7.45)/       0/      30 [ms] #= 18
ChronoStatSvc                                        INFO Time User   : Tot= 27.1  [s]  #=  1

PoolReadCfg:

cObjR_ALL                                            INFO Time User   : Tot= 7.37  [s] Ave/Min/Max=7.64e-05(+- 0.00122)/       0/    0.25  [s] #=96408
cObj_ALL                                             INFO Time User   : Tot= 39.5  [s] Ave/Min/Max=0.000519(+- 0.00245)/       0/    0.26  [s] #=76086
ChronoStatSvc                                        INFO Time User   : Tot=  210  [s]  #=  1

The output (TTree, processed with CP algs incl applying trigger selection) files were found to be identical by diff-root.

Not so good (maybe):

xAOD::TEvent::getEvent... WARNING Can't find EventFormatElement for hashed SG key 232541402
xAOD::TEvent::proxy_exact WARNING Can't find BranchInfo for 232541402.
xAOD::TEvent::addToStore  WARNING Function should only be called through an invalid ElementLink
xAOD::TEvent::getEvent... WARNING Can't find EventFormatElement for hashed SG key 805826821
xAOD::TEvent::proxy_exact WARNING Can't find BranchInfo for 805826821.
ClassIDSvc                                           INFO getRegistryEntries: read 3 CLIDRegistry entries for module ALL
xAOD::TEvent::getEvent... WARNING Can't find EventFormatElement for hashed SG key 466416009
xAOD::TEvent::proxy_exact WARNING Can't find BranchInfo for 466416009.

Have not yet tried to determine what this object was -- does that look like a non-xAOD object?

If we want to have both plain xAOD read and Hybrid mode, can that just be an argument to the function rather than a separate function or file? And do any of the services set up here seem obviously unnecessary?

Reopened !55609 (closed) to clearly base on 22.0 (changed partway) after massive rebase failure

Merge request reports