Skip to content
Snippets Groups Projects

Update to allow Alignment to run multithreaded

Merged Wouter Hulsbergen requested to merge updatemutexlockingstrategy_June2022 into master

Modifications to allow running multithreaded:

  • rewrote AlElementHistos to use Accumulator::Histogram
  • changed from mutex to shared_mutex to profit from readonly locks
  • create AlEquations object in each event call on the stack and add at end of event to minimize number of write locks
  • AlignAlgorithm no longer derives from GaudiHistoAlg
  • update gaudiiter to support running multi-threaded (works on MDF files only)

This addresses most of what is discussed in #30

This also fixes a crash in a test on clang that was due to a bug in the IO of the Al::Equations object.

@graven, @jcobbled

Edited by Wouter Hulsbergen

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Wouter Hulsbergen resolved all threads

    resolved all threads

  • added 1 commit

    • f3393c6e - replace boost::lexical_ cast by to_string

    Compare with previous version

  • added 1 commit

    • 987cef3a - don't template AlElementHistos as it is not necessary

    Compare with previous version

  • added 1 commit

    Compare with previous version

  • added 3 commits

    • b0878a30 - - bug fix for clang (template<> missing)
    • 0bec3f4a - write output file from AlignAlgorithmBase::stop in offline environment
    • 73fc7aeb - use gaudirun.py rather than gaudiiter.py in analyzer test

    Compare with previous version

  • Wouter Hulsbergen changed title from Draft: Next update to allow Alignment to run multithreaded to Draft: Update to allow Alignment to run multithreaded

    changed title from Draft: Next update to allow Alignment to run multithreaded to Draft: Update to allow Alignment to run multithreaded

  • Wouter Hulsbergen changed the description

    changed the description

  • added 1 commit

    Compare with previous version

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading