EDM4hep Live Notes
Date: January 12, 2021
Indico: https://indico.cern.ch/event/983626/
This is a document for taking notes during EDM4hep meetings.
Connected: Joseph, Andre, Tao, Weidong, Teng, Jiaheng, Frank, Birgit, Placido, Sang Yun, Thomas, Xingtao, Valentin, Clement, Brieuc, Gerri, Hyeonja
Apologies:
Introduction and General Points
Key4hep presentation at Epiphany
Virtual Chep
-
papers(!) due February 28, 2021
-
Contribution:
- Key4hep overview
- Few paragraphs per contribution?
- Delphes parts?
- podio+edm4hep!
-
TODO: share the overleaf from the last CHEP proceedings
-
TODO: create repository for published documents?
-
Why not CERN gitlab/DESY stash?
- Need cern or desy computing accounts to access non-public repositories
- (At least at the moment for CERN gitlab, might change)
-
Private github repository free now?
Progress and Discussion
Podio
Benchmarking
[Thomas] Added some scripts and tools to have almost automatic benchmarking and some results using k4SimDelphes to “generate” data for I/O. Could be made fully automatic with a bit more work and if we want it to be fully automatic.
Plans for multi-threading testing of EDM4hep for CEPC
- Using Gaudi-hive functionality to speed up garfield simulation of the driftchamber
- Any documentation sugestions for how this can be done?
- Valentin: sounds very useful, not much experience in FCC
- Andre: What is the status of multi-threading for podio?
- Thomas: Reading is safe by design, writing has to be synchronised (e.g. by Gaudi)
- Frank: Root or also SIO backend?
- Thomas: Difference between standalone readers and what happens in the Gaudi world
- Valentin: Inside Gaudi it should work
Issues
more fixes to unsigned and shadowed variables
c++ concepts
- BH: add compile time checks for class behaviours: e.g., movable
CollectionIterator does not fully satisfy iterator concept
Idea: True reference collections
issue w/ ROOT and (vectors of) non-copyable collections
- happens in ROOT 6.22
- PM: there is a patch available in LCG repository
- ROOT team is working on a general solution
What are the different branches in the root file?
- Related to use in RDataFrame
- Encode more information in the relation branch names?
Multi-Threading
See minutes of https://indico.cern.ch/event/969468/
–> Open issue(s) for further discussion
- Thomas and Benedikt discussing and started to work, nothing to report yet
“event class” in podio
- Currently being perceived
Writing second file with another tree
PRs
Disable collection operator=
- need to check if current implementation addresses all use cases
- need test use-cases
EventStore
Schema Evolution
Features
LCIOConverters
EDM4hep
https://github.com/key4hep/EDM4hep/pulls
- Thomas, Clement:
- Where to put tools using EDM4hep? In EDM4hep or separate repository?
- VV: Would be nice to keep EDM4hep stable, so separate repository.
- FG: Concur. Many releases for LCIO just to update tools.
Issues
k4FWCore: cannot read collections back
DD4hep output plugin
–> Moved to DD4hep
Repository is getting too big
- github pages branch is getting large
- Can they be created on the fly?
- Use a different host for the website
Tracker Hit
- Q: Tracker hit input to tracking algorithms?
- A: In LCIO different traker hits: Planar and Cylindrical using inheritance. Still needs to be adressed how to do this in EDM4hep.
- Q: Is inheritance needed?
- Q: What to use for Driftchambers?
- Open issue:
Need review of EDM4hepDelphes output
–> Moving to separate repository
Reworking output handling
PRs
https://github.com/key4hep/EDM4hep/pulls/
Release 1.0
- Need:
Plugin
Eventheader
Meta Data (Event / Run Parameters)
AOB
Generator infrastructure in FCCSW moved to EDM4hep
Framework integration of k4SimDelphes
- On hold until delphes output reworked
- Started with updating the Gaudi documentation
Dual Read-out calorimeter for FCC
- Special data structure used for that simulation
- Tried to use edm4hep, some issues
- Present in a future meeting
Conditions handling in Belle2
- Benedikt, or Martin Ritter
Feedback from FCC tutorial for snowmass
- Common question: What are the different branches in the root file?
uproot
was also used to access the root file
- Basically re-implemented event store
- Try to get this into the, e.g., podio repository
Next meeting: