Minutes for LArSoft coordination meeting on October 9, 2018


Vito Di Benedetto, Giuseppe Cerati, Lynn Garren, Robert Hatcher, Alex Himmel, Kyle Knoepfel, Saba Sehrish, Hans Wenzel


Erin Conley, Katherine Lato, Ben Morgan, Paul Russo, Gleb Sinev

Project status report [Giuseppe Cerati]

  • Feature branch request: in larsim jsoto_maxrange_in_extendedphotlib
  • Bug fix in progress: issue #21041 for BlurredClusteringAlg

Status of art-independent code migration [Saba Sehrish]

  • Q: if the plan is to also look at the code that can be factorized to be able to migrate?

  • A: For the first pass, we are only looking at the code as it is but making a note of potential candidates after they have been refactored.

Update on art 3 LArSoft migration [Kyle Knoepfel]

  • The purpose is to upgarde LArSoft to use the new art release that also provides multi-threading
  • To enable multithreading you have to opt for it, the default art behavior is still sequential
  • [Kyle Knoepfel] and [Lynn Garren] have been working on this
  • Some key points and observations
  • art services are not the most well-defined constructs in art
  • Do not use callbacks directly in your code, for services
  • NuRandomService: upcoming change in the createEngine to return Art-owned reference to engine, so there is no need to interact with it directly
  • There should be no header guards in the files that are not intended to be included
  • art removed the ability to reconfigure modules several versions ago
  • ThreadSanitizer is a useful tool for data race detection, and was used by [Paul Russo] while working on multi-threading art.

A Proposal for Inheriting Configuration from Provenance [Alex Himmel]

  • Problem to address is that services must tbe configured in consistent ways across different art jobs.
  • a potential solution is to have a wrapper script (that looks at fhicl configurations, runs config_dumper as needed).
  • Conclusion: There was an agreement to have discussion(s) with the art and LArSoft experts to understand the requirements and possible solution proposal. 


  • It is important to identify whether service is what is needed for a particular problem, and may be there are different options that can pursued for each of different use of service.