CLICdp + Key4hep Software Discussion

Europe/Zurich
32/S-C22 (CERN)

32/S-C22

CERN

17
Show room on map
Andre Sailer (CERN)

Software Meeting Minutes
---

# 220614: Software Meeting

Agenda:

Present: Andre, Placido, Valentin, Kalina, Benedikt

Apologies:

## SummerStudent project(s)?

* julia frontend for podio
   * Student working on it

* Converting algorithms from iLCSoft to Gaudi (Placido, Benedikt)
   * Including the validation
   * Summerstudent coming on July 4

* EDM4hep output for GuineaPig (Valentin, Andre)
   * https://gitlab.cern.ch/clic-software/guinea-pig/
   * can store metadata about configuration in the single outputfile
   * Summerstudent is here

## MC Generators

## CLICDet Delphes Card

## Simulation

* Issue with simulation of muons with fixed pT?
   * observed different duplicate vs phi using different muon simulation runs
   * Maybe different input (not pt, but energy)?
   * Different Theta range, 0-90 degrees before, 0-180 degrees now

## Reconstruction

### Tracking

### Particle Flow

### Digitizer

### Event Display

### FlavourTagging

### Long-Lived Particle

### dE/dX

### LCGeo Test

## Infrastructure

### Sanitizers/Compilers

## iLCDirac

* FCC VO

* add key4hep-stack to config  (gaudiapp)
   * Test Clic Reco With GaudiWrapper inside iLCDirac
       * [ ] RandomSeed
           * Not fully implemented in vanilla Gaudi 
           * Should implement something in Gaudi like the randomseeder in Marlin

* [ ] Next Workflow for FCC
   * [ ] Pythia via Gaudi: need command and steeringfile(s) to use
       * [ ] Check mattermost channel for command and steeringfile
   * [x] Can maybe overwrite settings from Pythia File via the command line options


## Key4hep

### Gaudi

* [ ] Make a service optional/disable in config file: Ticket with Gaudi
   * https://gitlab.cern.ch/gaudi/Gaudi/-/issues/178
* [ ] How to gracefully stop execution "right now"? Re-implement ApplicationMgr?
   * [ ] Reset number of events to be run over?
   * [ ] can stop, but not gracefully
   * [ ] Need developments in Gaudi
* [ ] Random Seeding
   * [ ] https://gitlab.cern.ch/gaudi/Gaudi/-/merge_requests/1321

   * How is this done in Gaussino
       * https://gitlab.cern.ch/Gaussino/Gaussino/-/blob/master/Gen/RndInit/RndInit/IRndSeedingTool.h
       * https://gitlab.cern.ch/Gaussino/Gaussino/-/issues/2
       * https://gitlab.cern.ch/Gaussino/Gaussino/-/tree/mimazure-new-cmake/NewRnd
   * Marlin
       * https://github.com/iLCSoft/Marlin/blob/master/source/src/ProcessorEventSeeder.cc
       * No way to make this multi-threading capable without changing all marlin processors(!?!)

### CI

* [ ] CVMFS deploy from gitlab: https://cern.service-now.com/service-portal?id=ticket&table=u_request_fulfillment&n=RQF1650416
   * --> Need to re-open the ticket (Valentin)
   * gitlab-runner  was missing permissions
       * New ticket: https://cern.service-now.com/service-portal?id=ticket&table=u_request_fulfillment&n=RQF1747119
       * IT will fix the gitlab integration on another repo and then replay the steps on sw.hsf{-nightlies}.org
   * pinged Enrico again, was held up by a PR to gitlab concerning secrets (don't know any details)
       * Enrico is looking into a workaround

* [ ] Create a MacOS11 (12?) build for podio
   * [ ] Use LCG mac11 nightly builds (or mac1015)
   * https://github.com/AIDASoft/podio/pull/225
   * [x] Not using podio master in LCG nightly builds?
       * Not using the master, using tag
   * mac11 fuse on github actions is not working
       * [ ] issue with github-actions


### Environment Script

### View

### key4hep-spack/spack

* Request to save information about key4hep release used to metadata
   * proposal: save path to setup if available
   * https://github.com/key4hep/key4hep-spack/pull/327

* Trying to fix dependencies of gdb
   * https://github.com/spack/spack/pull/29374
   * Does anyone know how the stl pretty-printers are distributed (libstdc++?)?
       * /cvmfs/sw.hsf.org/contrib/gcc/8.3.0/x86_64-centos7-gcc4.8.5-opt/3tor3brwrrwwjs5jhvwrb5plauumwozz/share/gcc-8.3.0/python/libstdcxx/v6/printers.py

* spack dev setup, how to?
   * [ ] documentation needs some additions: creating environment, using packages for development

* [ ] new release for ubuntu20/native, centos7/gcc11, centos7/clang13

 

### podio

- [x]  podio RNTuple backend
   - [ ] Write collections, where only the classname is known as a string is working, reading must also work somehow
   - [ ] Metadata,
   - [ ] subset collections 
   - [x] etc

### EDM4hep

* When writing EDM4hep collections Clusters and CaloHits, but only writing the
 ECAL hit collection, not the HCAL hits, which might be linked from the cluster,
 things break when reading the file that only contains the Clusters or only some of the HitCollections
 * [ ] Test and Fixes: https://github.com/AIDASoft/podio/pull/235

* [ ] Test writing sample event data:
   * Incomplete, e.g., TrackCollection not written

* [ ] TrackerHit"Wrapper"


### k4FWCore

- [ ] Using more podio stuff directly for the event service, GaudiHive like interface
   - https://github.com/key4hep/k4FWCore/issues/69

### k4MarlinWrapper

* [ ] geoSvc to replace MarlinDD4hep
   * [ ] Need to set the GlobalTrackerReadoutEncodingStringID

* [ ] Multithreading
   * [ ] needs multithreading capable podio/k4FWCore
       * [ ] Wait for the podio Frame to appear
   * [ ] LCFIPlus: jetClustering and Refiner giving trouble
       * [ ] static variable https://github.com/lcfiplus/LCFIPlus/blob/278d7bb54e2602c2c0cd170c00f72fe302794bcf/include/LcfiplusProcessor.h#L59
   * [ ] probably just can't do this reproducibly, see issue about random seeding above

* [x] some issues discovered by Erica in the converters

* [ ] change clic steering python file to use environment variable to locate other steering input files.

* [ ] add ced2go like wrapper

### spack

Issue

Opened PRs for a bunch of improvements:
* [ ] fixes to fetching fastjet https://github.com/spack/spack/pull/20064
* [ ] special "commit" version for nightlies https://github.com/spack/spack/pull/20065

* [ ] Compiling everything with clang(12)
   * Issue with "base" packages, mesa
   * Requires patches for some packages to existing versions

* [ ] DD4hep recipe:
   * Which versions to keep? 
       * Keep from what is in the last ILD iLCSoft build
       * /cvmfs/ilc.desy.de/sw/x86_64_gcc82_centos7/v02-02-03/DD4hep/v01-11-02/

## FCCee Detector Model

* Andrea Ciarma investigating issues with the Simulation job options

## Documentation Update

* Take a look at Benedikt's changes
* https://github.com/key4hep/key4hep-web
   * How does this integrate with https://key4hep.github.io/key4hep-doc/ ?
   * Is there a HTML version of this to better understand what it looks like?


## AOB


### Next Meeting

May 3, 2022, 13:00

 

 

There are minutes attached to this event. Show them.
    • 13:00 14:00
      Round the table 1h