Developments in FCCSW / Key4hep

Status for October 2023

Juraj Smieško

CERN

FCC Software Meeting

30 October 2023

Upcoming Key4hep Release

Highlight: Support for the frame I/O in Podio/EDM4hep

Will include also:

  • FCC detectors migrated to the k4Geo (PR#282)
  • Gaudi::Functional — new way to write algorithms (PR#129)
  • New repository for native Gaudi reconstruction algorithms: k4Reco
  • Event info in EventHeader (PR#133)
  • Improved k4run (PR#134)

Issue to coordinate the release: #536

Upcoming Key4hep Release

Heads up:

  • The old EDM4hep files might not be working properly when loaded into Gaudi steering
    • Legacy support provided (PR#103 will also provide automatic switching when reading)
  • Reading of FCCAnalyses pre-generated samples should not be affected
    • Inspecting of the files tricky, solutions can be found here
  • Handling of the metadata changed (example PR#41)
  • Deprecated lcdd and other updates to GeoSvc (PR#47)
  • For the FCC-ee related algorithms we started implementing breaking changes for the Gaudi steering (example PR#53)
  • FCCAnalyses release 0.8.0 is the last one to support running of the analysis with:
    python python/FCCAnalysis.py ana_script.py

FCCAnalyses Verbosity Levels

Synchronizing RDataFrame verbosity levels with FCCAnalyses

  • RDataFrame has no output + three verbose levels:
    • ROOT::Experimental::ELogLevel::kInfo—Basic information
    • ROOT::Experimental::ELogLevel::kDebug—More multi-thread related information
    • ROOT::Experimental::ELogLevel::kDebug+10— Also dumps JITed code
  • FCCAnalyses itself now prints using Python logging module
  • Three verbosity levels (-v, -vv, -vvv) can be specified from the command line:
    • fccanalysis -v run ...
  • More details in this PR

FCCAnalyses EDM4hep Source

Offers possibility to work with fully fledged EDM4hep objects

  • Tested with the CLD fullsim
  • Currently investigating how the saving of the intermediate results might work
  • Development done in this PR

Documentation & Platforms

There are several sources of documentation

Key4hep nightlies are build for three OSes:

  • CentOS 7, AlmaLinux 9 and Ubuntu 22.04