ROOT Team Meeting

32/1-A24 (CERN)



Show room on map
Danilo Piparo (CERN), Jakob Blomer (CERN)
ROOT Team Meeting
Zoom Meeting ID
Axel Naumann
Alternative hosts
Lorenzo Moneta, Danilo Piparo, Vincenzo Eduardo Padulano, Bertrand Bellenot, Jakob Blomer, Enrico Guiraud
Useful links
Join via phone
Zoom URL

News and Shifter Report

  • 6.28 fails on mac13 due to Keras. It doesn't work if we use .keras; not backported to 6.28.
  • Fedora 39 and Windows failures.
  • Root doesn't build anymore with modules when Xcode 15 is used. Apple decided to reorganize the module map private internal STL implementation.
  • Jenkins cannot be completely rid on 6.26 for now. Planning to completely migrate to GitHub Actions.
    • For now, we watch both Jenkins and the new CI for asymmetry - build nodes of Jenkins are unmaintained. Still in the middle of a transition.

Meeting News


Very short round table: Discussions regarding the 1GB limit. Gave a heads-up to Atlas people - there might be a bit of "fall-out" in not allowing unsplit classes right now.


Presentation by Walter - simulation-based inference - Using ML models likelihoods in Roofit. Need to do some initial groundwork, and there can be a summer student program for Roofit. It would also potentially combine different technologies we have inside ROOT.


1) If we remove the cmake option - communicate to stacks colleagues.
2) Installation of ROOT stopped working after an upgrade due to a header issue. Think of ways to avoid.

Round Table


  • Forum, finish merit, work on a feature.
  • Problem with Mac, there was an update and had to roll back.
  • New Mac Minis and setting them up.


  • Worked on a bug in the latest version of Keras on Mac.


  • Thesis work - finalize collection of results, finding summer students.

Jonas R:

  • Relatively short week.
  • Selecting summer students - 6 people on the list.
  • Much closer with upstream PyROOT and ROOT. 2 dozen tests failing.

Jonas H:

  • Europa.
  • Quick look at the module problem - 1 PR that solves part of the problem - Vassil's solution.


  • Deadline for RNTuple quest position.
  • Number of bug fixes - unsplittable objects.
  • Merged the 1st version of hadd support.
  • Upcoming things for RNTuple:
    • New option to check a type - requested by CMS.
    • Unsplit: This is a big milestone. Make up our minds to self-describe data. Some sort of streamer info for RNTuple.
    • Review of the new TSystem method - collecting random bits.

[Danilo]: But that does not touch. Can we decouple this?
[Jacob]: Not yet fully clear, not one that would break backport compatibility. Store some sort of streamer info.
[Lorenzo]: What is cryptorand?
[Jacob]: It's a method to get random bytes of cryptographic quality. Something that the OS provides, every OS has a different way to provide this.


  • Working on adding adaptiveCPP support to ROOT.


  • Zombie processes generated by ROOT test - Apple.
  • Proposals: Present 3 talks - (Hamburg) in May.
  • Friday: Release proposal - one release in May (we need it because LHCB needs it).
  • November release: LLVM - we will continue to try and upgrade LLVM to 18 and decide later on at different decision points. Plan is the same just less aggressive. Meeting with experiment to discuss this.

[Vassil]: One thing always wants to mention: we had a talk last year at LLVM dev conference: a patch can load the JIT to optimize once we see it. If we switch to a later LLVM version and that thing runs it will completely get rid of the virtual functions in RDataFrame.
[Danilo]: Please point to the talk on shush (Mattermost). Also, enabling O2 for jitted code and it's worse.
[Vassil]: We can't blindly apply O2, there are some issues.


  • Reduce the failure on Windows. Failure to clean up, only way to reboot, if it happens too often - will check.
  • Using namespace std issue - all the dictionaries contain it and it is much more complicated - very specific problem on Windows when trying to include bits.
  • Quickly fixed broken Clad on Windows.
  • Cleanup of CMake on Windows - legacy CMake.
  • Budge a lot of things in root/roottest and CI - going to take some time.
  • Update VS on Windows runners - working on it. 8 runners - it's a bit more complicated.

[Vassil]: Microsoft ships Windows virtual machines: you can download and legally use it for a month.
[Bertrand]: It is easy to update VS from CLI and a virtual machine might be more complicated than just updating.


  • Spent some time with OS 14. Not happy with what we have now. Not happy with what's coming too:
    • For Apple, it may make sense to split module files into multiple PCM files.
    • Each header file which is a textual will have a copy. When we scale to more modules, they explode.
    • In the PR, making a giant module with wrapping and using one file.

[Danilo]: We also want to cater to people using Apple with a new SDK.
[Vassil]: For 15.2 we might need more conditionals.
[Jonas]: It's not worse than what we have on Linux.
[Vassil]: It's just us that's trying to raise this issue.
[Danilo]: It may be better as we see it before people see it for Mac beta.


  • Random function of TSystem - not a standard libc++ function. Different with different OSes. There are 3 different ways to do this.
  • Ratio plot - was trying to recreate some objects and not the case now. Make JS root to be compatible with this. No visible changes will be seen, only internal. Some changes in JSRoot and still doing it.

[Danilo]: Adrian will be here for 6 months.

There are minutes attached to this event. Show them.
    • 4:00 PM 4:01 PM
      Find notetaker 1m
    • 4:01 PM 4:05 PM
      News 4m
    • 4:05 PM 4:10 PM
      Shift handover 5m
    • 4:10 PM 4:20 PM
      Meeting Summaries and Plans 10m
      • I/O
      • TMVA
      • RooFit
      • PPP
      • Planning / Godparents /...
      • LIM
    • 5:00 PM 5:25 PM
      Round Table 25m
    • 5:25 PM 5:30 PM
      A.O.B. 5m