Biweekly meeting: C++ Modules in ROOT

Europe/Zurich
Oksana Shadura (University of Nebraska Lincoln (US)), Vasil Georgiev Vasilev (Institute for Advanced Physical Studies (BG))

Attendance: Arpitha, Bertrand, David, Oksana, Vassil

[Arpitha] Link to the slides of the final presentation -- https://docs.google.com/presentation/d/1faormRqzGtOl5uofUukEAaTi1f2rAan6-m0zPfXlFUc/edit?usp=sharing The plots (100 runs) are not clear. We should put x-axis label. We should define rdict and global module index. We should ask Yuka to get a few slides on basic introduction to aid non-computer scientists.

[Axel] I would like to thank Arpitha for the work she did on the GMI. The major concern is that according to plots on the slides GMI is not scalable because for hsimple.C we seem to get linear behavior and if we go to 200 libraries the thing will explode. Vassil: The GMI in the case of hsimple.C loads around 50 modules, 30 out of which are redundant. If we load the other 30 corresponding libraries it will be essentially nop. The worse case scenario is preloading all modules (currently the case for cmssw) and we do not see scalability issues.

[Bertrand] I'd like to revive the PCH #pragma once issue on windows. We should continue with the initial plan. I will ping you when I am back from vacation.

[David] Helping Vassil with the modules work. We should follow up on symlink PR.

[Oksana] Not a lot on the modules part.

[Vassil] I've focused mostly on making the runtime_cxxmodules incremental builds work. This is the only left prerequisite for making it default for ROOT. The problem is the way we build the modules for external dependencies such as std, libc (and tinyxml, boost, etc for cmssw). Rootcling injects fake dependencies. I have committed a partial fix and we will try resurrecting our incremental builds and see if that suffice.

Next meeting is in 2 weeks time.

There are minutes attached to this event. Show them.
    • 14:00 14:30
      Updates 30m
      Speakers: Oksana Shadura (University of Nebraska Lincoln (US)), Vasil Georgiev Vasilev (Institute for Advanced Physical Studies (BG))
    • 14:30 15:00
      Round table 30m