200th ROOT Parallelism, Performance and Programming Model Meeting

Europe/Zurich
32/S-C22 (CERN)

32/S-C22

CERN

17
Show room on map
Stephan Hageboeck (CERN), Vincenzo Eduardo Padulano (CERN)
Zoom Meeting ID
61666320058
Host
Marta Czurylo
Useful links
Join via phone
Zoom URL

Taking Stock and Highlights

  • Histograms: will adoption happen early enough if ROOT does not more actively engage with users / experiments?

    • A successful strategy are shared student projects / embedding a student in SFT for a while.

    • Another option is a mini workshop end of the year.

  • RFile: it’s up to us to reach out to experiments.

    • Jack will e.g. talk about RFile to ALICE

    • Other liaisons could repeat this

    • One should consider updating many ROOT tutorials once RFile is out of experimental

    • What about throwing exceptions in Get? → Generally, nullptr is preferred for pointer-like return types.

  • Bologna training: Use this to get feedback from the audience about RFile, RHist and automatic registration

  • Auto registration:

    • Do we need more tooling to make the transition to no-registration easier and more robust?

    • Is there a way to detect objects that are not written anywhere?

    • Converge on programmatic way to set auto-registration defaults. An easy way is gEnv->Set(...)

Actions

  • Stephan: We need a few examples, also for slides, with the autoregistration in combination with RFile

  • Jonas R: Check for how many builtins we can simplify the "fail on missing" functionality. Is "fail on missing" still needed when ROOT moves towards system first?

  • Stephan: Organise a “Readiness Review” seminar / mini-workshop about histos to have the final green-light about the interface. Timeline

    • September: fix the date, contact the individuals

    • November-December the event

    • Until March, implement the suggestions

  • Jack: Drive the discussion about the browsing of RFile, bringing it to a conclusion

  • Stephan: Converge on the default for autoregistration story, gEnv or global function

  • Danilo: Get the answer by EPiC about whether they need SOFIE for C++ processing

  • Danilo: Go to Mateusz, and ask to improve REve documentations

Decisions to be taken

  • We want to change the name of the libraries, e.g. to libROOTCore.so

    • In ROOT 6, ideally by v 6.42, rename the libraries, and provide hardlinks to the previous names. These will always be installed to avoid any broken installations.

    • If a user links to a library using the old name, issue a message, asking them to move to root-config --libs, to cmake, or to update the library names manually

    • In ROOT 7, stop providing the hardlinks, except on explicit request

  • root7 CMake switch: we want to phase it out, ideally for 6.42 and be nice about it. Changes which only marginally affect build times will be "On" without any way to switch them off (e.g. RFile), and components that are more than a few files will acquire their own switch.

  • We remove JSMVA files from ROOT. Since years it’s not shipped in a working state.

  • We want to switch off TGeometry conditionally, under the umbrella of geom

AOB

  • What about https://github.com/root-project/root/issues/16327 , i.e. encapsulation of header files → too big of a change header encapsulation for ROOT7. For ROOT8

  • Question where to remove: Net, SQL, TTreeSQL, Monte Carlo (TPythia8 and Monte Carlo), MLP, QuadP, TH1K:
    Might be too much in one go. Deprecate them at a slow pace during the time where ROOT 7 is already out.

  • We need a path for the evolutions of graphics and gui

  • We need a path for the evolution of TObject::Print and TObject::Ls

There are minutes attached to this event. Show them.