![]() |
ATLAS Offline Software
|
#include <SharedEvtQueueConsumer.h>
Public Member Functions | |
| SharedEvtQueueConsumer (const std::string &type, const std::string &name, const IInterface *parent) | |
| virtual | ~SharedEvtQueueConsumer () override |
| virtual StatusCode | initialize () override |
| virtual StatusCode | finalize () override |
| virtual int makePool | ATLAS_NOT_THREAD_SAFE (int maxevt, int nprocs, const std::string &topdir) override |
| virtual StatusCode exec | ATLAS_NOT_THREAD_SAFE () override |
| virtual StatusCode wait_once | ATLAS_NOT_THREAD_SAFE (pid_t &pid) override |
| virtual void | reportSubprocessStatuses () override |
| virtual void | subProcessLogs (std::vector< std::string > &) override |
| virtual std::unique_ptr< AthenaInterprocess::ScheduledWork > | bootstrap_func () override |
| virtual std::unique_ptr< AthenaInterprocess::ScheduledWork > | exec_func () override |
| virtual std::unique_ptr< AthenaInterprocess::ScheduledWork > | fin_func () override |
| virtual AthenaMP::AllWorkerOutputs_ptr | generateOutputReport () override |
| virtual void | useFdsRegistry (std::shared_ptr< AthenaInterprocess::FdsRegistry >) override |
| virtual void | setRandString (const std::string &randStr) override |
| virtual void | setMaxEvt (int maxEvt) override |
| virtual void | setMPRunStop (const AthenaInterprocess::IMPRunStop *runStop) override |
| virtual void | killChildren () override |
| virtual std::unique_ptr< ScheduledWork > | operator () ATLAS_NOT_THREAD_SAFE(const ScheduledWork &)=0 |
Protected Types | |
| enum | ESRange_Status { ESRANGE_SUCCESS , ESRANGE_NOTFOUND , ESRANGE_SEEKFAILED , ESRANGE_PROCFAILED , ESRANGE_FILENOTMADE , ESRANGE_BADINPFILE } |
| enum | Func_Flag { FUNC_BOOTSTRAP , FUNC_EXEC , FUNC_FIN } |
Protected Member Functions | |
| int mapAsyncFlag | ATLAS_NOT_THREAD_SAFE (Func_Flag flag, pid_t pid=0) |
| int | redirectLog (const std::string &rundir, bool addTimeStamp=true) |
| int | updateIoReg (const std::string &rundir) |
| std::string | fmterror (int errnum) |
| int | reopenFds () |
| int | handleSavedPfc (const std::filesystem::path &dest_path) |
| void | waitForSignal () |
| IEvtSelector * | evtSelector () |
Protected Attributes | |
| int | m_nprocs {-1} |
| Number of workers spawned by the master process. | |
| int | m_maxEvt {-1} |
| Maximum number of events assigned to the job. | |
| std::string | m_subprocTopDir |
| Top run directory for subprocesses. | |
| std::string | m_subprocDirPrefix |
| For ex. "worker__". | |
| std::string | m_evtSelName |
| Name of the event selector. | |
| AthenaInterprocess::ProcessGroup * | m_processGroup {nullptr} |
| const AthenaInterprocess::IMPRunStop * | m_mpRunStop {nullptr} |
| ServiceHandle< IEventProcessor > | m_evtProcessor |
| ServiceHandle< IAppMgrUI > | m_appMgr |
| ServiceHandle< IFileMgr > | m_fileMgr |
| ServiceHandle< IIoComponentMgr > | m_ioMgr |
| SmartIF< IEvtSelector > | m_evtSelector |
| std::string | m_fileMgrLog |
| std::shared_ptr< AthenaInterprocess::FdsRegistry > | m_fdsRegistry |
| std::string | m_randStr |
| Gaudi::Property< bool > | m_isPileup {this, "IsPileup", false, "Flag for configuring PileUpEventLoopMgr"} |
Private Types | |
| typedef System::ProcessTime::TimeValueType | TimeValType |
Private Member Functions | |
| int decodeProcessResult | ATLAS_NOT_THREAD_SAFE (const AthenaInterprocess::ProcessResult *presult, bool doFinalize) |
| int | reopenFd (int fd, const std::string &name) |
Private Attributes | |
| Gaudi::Property< bool > | m_useSharedReader {this, "UseSharedReader", false, "Work in pair with a SharedReader"} |
| Gaudi::Property< bool > | m_useSharedWriter {this, "UseSharedWriter", false, "Work in pair with a SharedWriter"} |
| Gaudi::Property< bool > | m_isRoundRobin {this, "IsRoundRobin", false, "Are we running in the 'reproducible mode'?"} |
| Gaudi::Property< bool > | m_debug {this, "Debug", false} |
| Gaudi::Property< bool > | m_readEventOrders {this, "ReadEventOrders", false} |
| Gaudi::Property< int > | m_nEventsBeforeFork {this, "EventsBeforeFork", 0} |
| Gaudi::Property< std::string > | m_eventOrdersFile {this, "EventOrdersFile", "athenamp_eventorders.txt"} |
| int | m_rankId {-1} |
| int | m_nSkipEvents {0} |
| ServiceHandle< IChronoStatSvc > | m_chronoStatSvc |
| SmartIF< IEventSeek > | m_evtSeek |
| SmartIF< IEvtSelectorSeek > | m_evtSelSeek |
| IEvtSelector::Context * | m_evtContext {nullptr} |
| SmartIF< IEventShare > | m_evtShare |
| SmartIF< IDataShare > | m_dataShare |
| AthenaInterprocess::SharedQueue * | m_sharedEventQueue {nullptr} |
| std::unique_ptr< AthenaInterprocess::SharedQueue > | m_sharedRankQueue |
| std::map< pid_t, std::pair< int, TimeValType > > | m_eventStat |
| std::queue< pid_t > | m_finQueue |
| std::vector< int > | m_eventOrders |
| pid_t | m_masterPid |
Definition at line 23 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 76 of file SharedEvtQueueConsumer.h.
|
protectedinherited |
| Enumerator | |
|---|---|
| ESRANGE_SUCCESS | |
| ESRANGE_NOTFOUND | |
| ESRANGE_SEEKFAILED | |
| ESRANGE_PROCFAILED | |
| ESRANGE_FILENOTMADE | |
| ESRANGE_BADINPFILE | |
Definition at line 58 of file AthenaMPToolBase.h.
|
protectedinherited |
| Enumerator | |
|---|---|
| FUNC_BOOTSTRAP | |
| FUNC_EXEC | |
| FUNC_FIN | |
Definition at line 67 of file AthenaMPToolBase.h.
| SharedEvtQueueConsumer::SharedEvtQueueConsumer | ( | const std::string & | type, |
| const std::string & | name, | ||
| const IInterface * | parent ) |
Definition at line 34 of file SharedEvtQueueConsumer.cxx.
|
overridevirtual |
Definition at line 44 of file SharedEvtQueueConsumer.cxx.
|
protectedinherited |
|
overridevirtual |
|
private |
|
overridevirtual |
|
overridevirtual |
Reimplemented from AthenaMPToolBase.
|
overridevirtual |
Implements AthenaMPToolBase.
Definition at line 254 of file SharedEvtQueueConsumer.cxx.
|
inlineprotectedinherited |
Definition at line 83 of file AthenaMPToolBase.h.
|
overridevirtual |
Implements AthenaMPToolBase.
Definition at line 479 of file SharedEvtQueueConsumer.cxx.
|
overridevirtual |
Implements AthenaMPToolBase.
Definition at line 642 of file SharedEvtQueueConsumer.cxx.
|
overridevirtual |
Reimplemented from AthenaMPToolBase.
Definition at line 96 of file SharedEvtQueueConsumer.cxx.
|
protectedinherited |
Definition at line 333 of file AthenaMPToolBase.cxx.
|
overridevirtualinherited |
Reimplemented in EvtRangeProcessor, EvtRangeScatterer, and SharedWriterTool.
Definition at line 119 of file AthenaMPToolBase.cxx.
|
protectedinherited |
Definition at line 396 of file AthenaMPToolBase.cxx.
|
overridevirtual |
Reimplemented from AthenaMPToolBase.
Definition at line 48 of file SharedEvtQueueConsumer.cxx.
|
overridevirtualinherited |
Definition at line 201 of file AthenaMPToolBase.cxx.
|
pure virtualinherited |
|
protectedinherited |
Definition at line 269 of file AthenaMPToolBase.cxx.
|
privateinherited |
Definition at line 419 of file AthenaMPToolBase.cxx.
|
protectedinherited |
Definition at line 340 of file AthenaMPToolBase.cxx.
|
overridevirtual |
Reimplemented from AthenaMPToolBase.
Definition at line 223 of file SharedEvtQueueConsumer.cxx.
|
inlineoverridevirtualinherited |
Definition at line 44 of file AthenaMPToolBase.h.
|
inlineoverridevirtualinherited |
Definition at line 45 of file AthenaMPToolBase.h.
|
overridevirtualinherited |
Definition at line 196 of file AthenaMPToolBase.cxx.
|
overridevirtual |
Definition at line 242 of file SharedEvtQueueConsumer.cxx.
|
protectedinherited |
Definition at line 322 of file AthenaMPToolBase.cxx.
|
overridevirtualinherited |
Definition at line 191 of file AthenaMPToolBase.cxx.
|
protectedinherited |
Definition at line 403 of file AthenaMPToolBase.cxx.
|
protectedinherited |
Definition at line 95 of file AthenaMPToolBase.h.
|
private |
Definition at line 66 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 71 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 58 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 81 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 61 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 77 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 69 of file SharedEvtQueueConsumer.h.
|
protectedinherited |
Definition at line 94 of file AthenaMPToolBase.h.
|
private |
Definition at line 67 of file SharedEvtQueueConsumer.h.
|
protectedinherited |
Definition at line 98 of file AthenaMPToolBase.h.
|
protectedinherited |
Name of the event selector.
Definition at line 89 of file AthenaMPToolBase.h.
|
private |
Definition at line 68 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 70 of file SharedEvtQueueConsumer.h.
|
protectedinherited |
Definition at line 100 of file AthenaMPToolBase.h.
|
protectedinherited |
Definition at line 96 of file AthenaMPToolBase.h.
|
protectedinherited |
Definition at line 99 of file AthenaMPToolBase.h.
|
private |
Definition at line 78 of file SharedEvtQueueConsumer.h.
|
protectedinherited |
Definition at line 97 of file AthenaMPToolBase.h.
|
protectedinherited |
Definition at line 103 of file AthenaMPToolBase.h.
|
private |
Definition at line 57 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 82 of file SharedEvtQueueConsumer.h.
|
protectedinherited |
Maximum number of events assigned to the job.
Definition at line 86 of file AthenaMPToolBase.h.
|
protectedinherited |
Definition at line 92 of file AthenaMPToolBase.h.
|
private |
Definition at line 60 of file SharedEvtQueueConsumer.h.
|
protectedinherited |
Number of workers spawned by the master process.
Definition at line 85 of file AthenaMPToolBase.h.
|
private |
Definition at line 64 of file SharedEvtQueueConsumer.h.
|
protectedinherited |
Definition at line 91 of file AthenaMPToolBase.h.
|
protectedinherited |
Definition at line 101 of file AthenaMPToolBase.h.
|
private |
Definition at line 63 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 59 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 73 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 74 of file SharedEvtQueueConsumer.h.
|
protectedinherited |
For ex. "worker__".
Definition at line 88 of file AthenaMPToolBase.h.
|
protectedinherited |
Top run directory for subprocesses.
Definition at line 87 of file AthenaMPToolBase.h.
|
private |
Definition at line 55 of file SharedEvtQueueConsumer.h.
|
private |
Definition at line 56 of file SharedEvtQueueConsumer.h.