Key4hep Discussion

→ Europe/Zurich
Zoom

Zoom

Zoom Meeting ID
95444210901
Host
Andre Sailer
Useful links
Join via phone
Zoom URL

# Key4hep Live Notes

This is a document for taking notes during Key4hep meetings.

Date: December 15, 2020

Agenda: https://indico.cern.ch/event/983710/

Connected: Andre, Teng, Joseph, Weidong, Thomas, Xiaomei, Birgit, Tao, Jiaheng, Wengxin, Clement, Placido, Frank, Paolo, Gerri

## Communities Round Table

* Birgit at desy to join the core FCChh software activities

## Validation for Key4hep
* see slides
* Based on the LHCb validation system (see references)
* Should be a bit more simplified for Key4hep
    * Use github actions
* Todo list in the slides

* Joseph: has containers in the github page, and build recipes. Integrate the approaches

* Thomas: Unify unit test cases? Just use one unit test library? Have the same output format to parse them?
* Teng: need to discuss. python and c++ use different libraries.
* Thomas: using `catch2` in some packages

* Andre: Physics validation part of the plans? (Simulation, energy deposit doesn't change too much)
* Teng: not at the moment
* Frank: Would be very good to be able to run a few events.
* Joseph: System should be easy to implement these kind of tests

* Weidong: Teng will provide the testing framework, package maintainers will be responsible for the testing

* Joseph: Also providing resources to run tests is important.

* Joseph: "Standard" format for storing test results?
* Andre: junit.xml, java, pytest.
* Thomas: catch2 might have different outputs, not just terminal

* Teng: can catch2 also handle log parsers? Memory leaks?
* Thomas: not sure, maybe with address or memory sanitizers.

## Presentations

### Epiphany

* Invitation has to be answered, discuss offline
    * Probably 20 minutes
* https://epiphany.ifj.edu.pl/current/
*
### Virtual Chep

* papers(!) due February 28, 2021
    * Submissions should consist of a paper of 6-10 pages, following the instructions for authors. Paper submission is open until 28 February 2021.
    * https://indico.cern.ch/event/948465/page/21562-instructions-to-submitters

* Contribution:
    * Key4hep overview
        * Few paragraphs per contribution?
    * Delphes parts?
    * podio?

### Hong Kong IAS
* Fully virtual
* https://indico.cern.ch/event/971970/
* http://ias.ust.hk/web/ias/eng/event_detail.php?p=&tid=0&id=1505
* Miniworkshop, January 14-15
* Conference, January 18-21

## Transition of FCCSW to EDM4hep started
* https://github.com/HEP-FCC/FCCSW/tree/edm4hep

### Raised some questions and issues:
* Duplicated GeoSvc
   - https://github.com/cepc/CEPCSW/issues/64
* Some tests build with spack are taking 10x more time to run
    - [ ] down to three failing tests, all connected to the same HepMC file
    - Valentin: almost finished, created additional repositories
        - https://github.com/HEP-FCC/k4Gen
        - https://github.com/HEP-FCC/k4SimGeant4
        - https://github.com/HEP-FCC/k4RecCalorimeter
    - extended interface of the core framework
    - need cross check with LC reconstrution workflow
        - e.g. geometry service
        - should cross check w/ MarlinWrapper


## k4 delphes interface
- its own repository: https://github.com/key4hep/k4SimDelphes
- EDM4hep_Delphes (pythia8 dependence), also moved there
- Eventually move EDM4hep interface to Delphes?

- Thomas: refactored the EDM4hepDelphes converter by doing the conversion on the final Delphes TTree
    - Merged: https://github.com/key4hep/k4SimDelphes/pull/5
    - triggered discussion on allowing for different formats:
        - 1-1 correspondence of Delphes collections to EDM4hep collections vs. having well defined list of ReconstructedParticles (PFOs)
        - latter is definitely needed for ILC, probably all e+e- machines
        - work in progress to have both options...

## Podio

- Thomas has started PR with generic I/O benchmarks for PODIO/EDM4hep as a follow up to the talk
    - will allow for detailed timing of individual I/O steps for different I/O systems
    - https://github.com/AIDASoft/podio/pull/155

### CI

* EDM4hep and podio in LCG releases?
    * LCG_97a_FCC_4
    * dev3, dev4
    * LCG_99

### Discussion: Interplay between Readers, Writers, EventStore and Collections
* https://github.com/AIDASoft/podio/issues/140
* Benedikt and Thomas had discussions with goal to sketch out the model
    * See: https://indico.cern.ch/event/983031/#4-discussion

## EDM4hep

## Build system / Target compiler / dependencies

* Some developments sparked by HSF workshop discussion
* Try out installation on top of gentoo prefix
* Progress in building natively on macos:
    * https://github.com/key4hep/key4hep-spack/issues/136
* Distribute spack on cvmfs

### Problem with Root (e.g., 6.20.04) and spack installed gcc

* Cannot create dictionaries
    * std headers not found
    * https://github.com/spack/spack/issues/17488
    * workaround in place

* Thomas: this seems to be a general issue w/ spack installed compiler
    * Valentin: could be worked around by disabling compiler wrappers

* [ ] TODO: document the workaround of adding the compiler symlink

### CMake Template

* Valentin: need to update the HSF CMake project template
    * https://github.com/HSF/tools
    * could be a nice student project at some point
    * [ ] need a project description


## k4FWCore

* Problem with writing additional TTree: https://github.com/key4hep/k4FWCore/issues/10
    * PR: https://github.com/key4hep/k4FWCore/pull/23
    * Solved!

* CMake configuration for k4FWCore updated to Gaudi v35

* Issue Read problem for collections with vector members
    - https://github.com/key4hep/k4FWCore/issues/27
    * Valentin has written PR to address this
        * https://github.com/key4hep/k4FWCore/pull/29
    * Solved?

## MarlinWrapper

## Delphes "Algorithm" to run from Gaudi

- need to finish work on the converter (see above)


## Distributed Computing, Workload Management, Data Management

### Grid production system

* -> Schedule dedicated discussion for distributed computing and Key4hep
    * postpone to next year, as quite some preparation needed
    * Xiaomei will make a doodle to pick a date

 

### Validation system
* Teng/Weidong: Validation system for key4hep
    * will start the work very soon
    * plan to report in next meeting
* LHCb CI & Validation: https://indico.ihep.ac.cn/event/11444/session/12/contribution/173/material/slides/0.pdf

## Gaudi

## Geometry packages


## AOB

- Joseph working on automated builds
    - currently implementing automated notifications on the corresponding Github page
    - Valentin suggest to use CDash for this  
    - Check output of `spack install --help-cdash`
        - once cdash instance set up, spack should be able to automatically send the reports
        - can test on my.cdash.org, then use the CERN SFT instance if it works

* Proposal: discuss simulation programs
    * Gaussino
    * Gaudi integrations
    * ddsim

- Clement: should start a discussion on common geometry packages a la lcgeo
    - probably next year


## Next meeting?

* January 19, 2020


### Try to find occasional meeting slot to accomodate contributions from the Americas?

* E.g. Beijing time 10pm, 3pm europe, US morning (San Francisco 6am)

## Call for Logos

 

There are minutes attached to this event. Show them.
    • 09:00 → 09:05
      Introduction 5m
    • 09:05 → 09:25
      Plan of software validation 20m
      Speaker: Dr Teng LI (University of Edinburgh, UK)
    • 09:50 → 10:00
      Discussion 10m
      Speakers: Everyone, Valentin Volkl (University of Innsbruck (AT))