Idea #5986

Investigate whether we can support graceful loss of a small number of EventBuilders

Added by Kurt Biery almost 7 years ago. Updated about 2 years ago.

Additional Functionality
Target version:
Start date:
Due date:
% Done:


Estimated time:
32.00 h


In our current use of mpirun, if one DAQ process dies, there is a very good chance that the full MPI program will shut down.

We should investigate if it is possible to have a small number of EventBuilder processes to die and continue running. (Here "running" means "take data" or "continue the current run in progress".)

If we determine that this is possible, then it will entail modifying the MPI program so that individual process failures do not bring the full system down And implementing a way to tell the BoardReaders that an EventBuilder has died and they should no longer send Fragments to that EB.

I'm going to only estimate the investigation portion of this task, for now. If we decide to go ahead with an implementation, then that work will need to be added, either in this Issue or an additional one.

Related issues

Related to ds50daq - Idea #3980: Investigate if the MPI program can be run in such a way that the loss of a single process doesn't stop the whole programClosed06/04/2013


#1 Updated by Eric Flumerfelt about 4 years ago

  • Category set to Additional Functionality
  • Target version deleted (577)

The TransferPlugin-based data transfer work opens the door on this a bit. Still needed: a Routing Master, removal of remaining MPI calls in application.

#2 Updated by Eric Flumerfelt about 2 years ago

  • Status changed from New to Closed

This has been shown to work at protoDUNE, using artdaq v3_04_00. Other issues document refinements, e.g. #22061.

Also available in: Atom PDF