Geant4
10.00.p03
|
#include <G4MTRunManager.hh>
Public Types | |
enum | WorkerActionRequest { UNDEFINED, NEXTITERATION, ENDWORKER } |
typedef std::map< G4int, G4VPhysicalVolume * > | masterWorlds_t |
Public Types inherited from G4RunManager | |
enum | RMType { sequentialRM, masterRM, workerRM } |
Static Public Member Functions | |
static G4ScoringManager * | GetMasterScoringManager () |
static masterWorlds_t & | GetMasterWorlds () |
static void | addWorld (G4int counter, G4VPhysicalVolume *w) |
static G4MTRunManager * | GetMasterRunManager () |
static G4RunManagerKernel * | GetMasterRunManagerKernel () |
static G4MTRunManagerKernel * | GetMTMasterRunManagerKernel () |
Static Public Member Functions inherited from G4RunManager | |
static G4RunManager * | GetRunManager () |
Protected Member Functions | |
virtual G4bool | InitializeSeeds (G4int) |
virtual void | PrepareCommandsStack () |
virtual void | StoreRNGStatus (const G4String &filenamePrefix) |
virtual void | CreateAndStartWorkers () |
virtual void | WaitForReadyWorkers () |
virtual void | WaitForEndEventLoopWorkers () |
virtual void | TerminateWorkers () |
virtual void | NewActionRequest (WorkerActionRequest newRequest) |
void | RefillSeeds () |
Protected Member Functions inherited from G4RunManager | |
void | StackPreviousEvent (G4Event *anEvent) |
G4RunManager (RMType rmType) | |
void | UpdateScoring () |
virtual void | DeleteUserInitializations () |
Private Types | |
typedef std::list< G4Thread * > | G4ThreadsList |
Private Attributes | |
G4int | nworkers |
G4int | forcedNwokers |
G4ThreadsList | threads |
std::vector< G4String > | uiCmdsForWorkers |
CLHEP::HepRandomEngine * | masterRNGEngine |
G4MTRunManagerKernel * | MTkernel |
Static Private Attributes | |
static G4ScoringManager * | masterScM = 0 |
static masterWorlds_t | masterWorlds = G4MTRunManager::masterWorlds_t() |
static G4MTRunManager * | fMasterRM = 0 |
Definition at line 50 of file G4MTRunManager.hh.
|
private |
Definition at line 108 of file G4MTRunManager.hh.
typedef std::map<G4int,G4VPhysicalVolume*> G4MTRunManager::masterWorlds_t |
Definition at line 149 of file G4MTRunManager.hh.
Enumerator | |
---|---|
UNDEFINED | |
NEXTITERATION | |
ENDWORKER |
Definition at line 188 of file G4MTRunManager.hh.
G4MTRunManager::G4MTRunManager | ( | ) |
Definition at line 83 of file G4MTRunManager.cc.
References FatalException, fMasterRM, forcedNwokers, G4cout, G4endl, G4Exception(), G4Threading::G4GetNumberOfCores(), G4RunManagerKernel::GetNumberOfStaticAllocators(), G4ScoringManager::GetScoringManagerIfExist(), G4UImanager::GetUIpointer(), JustWarning, G4RunManager::kernel, masterRNGEngine, masterScM, MTkernel, nSeedsMax, nSeedsPerEvent, numberOfEventToBeProcessed, nworkers, randDbl, and G4UImanager::SetMasterUIManager().
|
virtual |
Definition at line 162 of file G4MTRunManager.cc.
References randDbl, and TerminateWorkers().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 547 of file G4MTRunManager.cc.
|
virtual |
Reimplemented from G4RunManager.
Definition at line 531 of file G4MTRunManager.cc.
References G4MTRunManagerKernel::BroadcastAbortRun(), G4cerr, G4endl, G4State_EventProc, G4State_GeomClosed, G4StateManager::GetCurrentState(), G4StateManager::GetStateManager(), MTkernel, and G4RunManager::runAborted.
|
inlinestatic |
Definition at line 152 of file G4MTRunManager.hh.
References masterWorlds.
Referenced by ConstructScoringWorlds().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 367 of file G4MTRunManager.cc.
References addWorld(), G4RunManager::ConstructScoringWorlds(), G4TransportationManager::GetNoWorlds(), G4ScoringManager::GetScoringManagerIfExist(), G4TransportationManager::GetTransportationManager(), G4TransportationManager::GetWorldsIterator(), masterScM, and masterWorlds.
|
protectedvirtual |
Reimplemented in tbbMasterRunManager.
Definition at line 244 of file G4MTRunManager.cc.
References G4UserWorkerThreadInitialization::CreateAndStartWorker(), NewActionRequest(), NEXTITERATION, nworkers, G4WorkerThread::SetNumberThreads(), G4WorkerThread::SetThreadId(), threads, and G4RunManager::userWorkerThreadInitialization.
Referenced by InitializeEventLoop().
std::vector< G4String > G4MTRunManager::GetCommandStack | ( | ) |
Definition at line 238 of file G4MTRunManager.cc.
References uiCmdsForWorkers.
Referenced by tbbTask::execute(), and G4MTRunManagerKernel::StartThread().
|
inline |
Definition at line 217 of file G4MTRunManager.hh.
References eventModuloDef.
Referenced by G4WorkerRunManager::GenerateEvent().
|
inline |
Definition at line 153 of file G4MTRunManager.hh.
References masterRNGEngine.
Referenced by tbbTask::execute(), G4WorkerRunManager::SetupDefaultRNGEngine(), and G4MTRunManagerKernel::StartThread().
|
static |
Definition at line 64 of file G4MTRunManager.cc.
References fMasterRM.
Referenced by G4TheMTRayTracer::CreateBitMap(), tbbTask::execute(), G4WorkerRunManager::GenerateEvent(), G4WorkerRunManager::MergePartialResults(), G4TheMTRayTracer::RestoreUserActions(), G4WorkerRunManager::RunInitialization(), G4WorkerRunManager::RunTermination(), G4WorkerRunManager::SetupDefaultRNGEngine(), G4MTRunManagerKernel::StartThread(), G4TheMTRayTracer::StoreUserActions(), G4RunManagerKernel::WorkerDefineWorldVolume(), and G4RunManagerKernel::WorkerUpdateWorldVolume().
|
static |
Definition at line 73 of file G4MTRunManager.cc.
References fMasterRM, and G4RunManager::kernel.
Referenced by G4WorkerRunManager::InitializeGeometry().
|
inlinestatic |
Definition at line 150 of file G4MTRunManager.hh.
References masterScM.
Referenced by G4WorkerRunManager::ConstructScoringWorlds(), and G4WorkerRunManager::G4WorkerRunManager().
|
inlinestatic |
Definition at line 151 of file G4MTRunManager.hh.
References masterWorlds.
Referenced by G4RunManagerKernel::WorkerDefineWorldVolume(), and G4RunManagerKernel::WorkerUpdateWorldVolume().
|
static |
Definition at line 78 of file G4MTRunManager.cc.
|
inline |
Definition at line 56 of file G4MTRunManager.hh.
References nworkers.
Referenced by main().
|
virtual |
G4UImanager::GetUIpointer()->SetIgnoreCmdNotFound(true);
Reimplemented from G4RunManager.
Definition at line 204 of file G4MTRunManager.cc.
References G4RunManager::BeamOn(), G4RunManager::Initialize(), and G4RunManager::SetRunIDCounter().
Referenced by main().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 265 of file G4MTRunManager.cc.
References CreateAndStartWorkers(), eventModulo, eventModuloDef, G4RunManager::fakeRun, G4TemplateRNGHelper< T >::Fill(), G4Exception(), G4TemplateRNGHelper< T >::GetInstance(), InitializeSeeds(), JustWarning, masterRNGEngine, G4RunManager::msgText, MTkernel, G4RunManager::n_select_msg, nSeedsFilled, nSeedsMax, nSeedsPerEvent, nSeedsUsed, G4RunManager::numberOfEventProcessed, numberOfEventToBeProcessed, nworkers, PrepareCommandsStack(), randDbl, G4RunManager::selectMacro, G4MTRunManagerKernel::SetUpDecayChannels(), G4Timer::Start(), G4RunManager::timer, G4RunManager::userWorkerThreadInitialization, G4RunManager::verboseLevel, and WaitForReadyWorkers().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 524 of file G4MTRunManager.cc.
References G4CascadeInterface::Initialize(), and G4RunManager::InitializePhysics().
Definition at line 90 of file G4MTRunManager.hh.
Referenced by InitializeEventLoop().
void G4MTRunManager::MergeRun | ( | const G4Run * | localRun | ) |
Definition at line 453 of file G4MTRunManager.cc.
References G4RunManager::currentRun, and G4Run::Merge().
Referenced by G4WorkerRunManager::MergePartialResults().
void G4MTRunManager::MergeScores | ( | const G4ScoringManager * | localScoringManager | ) |
Definition at line 447 of file G4MTRunManager.cc.
References masterScM, and G4ScoringManager::Merge().
Referenced by G4WorkerRunManager::MergePartialResults().
|
protectedvirtual |
Reimplemented in tbbMasterRunManager.
Definition at line 801 of file G4MTRunManager.cc.
References G4CONDITIONWAIT, G4CONDTIONBROADCAST, nextActionRequest, threads, and G4TemplateAutoLock< M, L, U >::unlock().
Referenced by CreateAndStartWorkers(), and TerminateWorkers().
|
protectedvirtual |
Definition at line 227 of file G4MTRunManager.cc.
References G4UImanager::GetCommandStack(), G4UImanager::GetUIpointer(), and uiCmdsForWorkers.
Referenced by InitializeEventLoop().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 218 of file G4MTRunManager.cc.
|
protected |
Definition at line 341 of file G4MTRunManager.cc.
References G4TemplateRNGHelper< T >::GetInstance(), masterRNGEngine, nSeedsFilled, nSeedsMax, nSeedsPerEvent, numberOfEventToBeProcessed, randDbl, and G4TemplateRNGHelper< T >::Refill().
Referenced by SetUpAnEvent(), and SetUpNEvents().
|
virtual |
Reimplemented from G4RunManager.
Reimplemented in tbbMasterRunManager.
Definition at line 353 of file G4MTRunManager.cc.
References G4RunManager::RunTermination(), G4RunManager::TerminateEventLoop(), and WaitForEndEventLoopWorkers().
Referenced by tbbMasterRunManager::RunTermination().
|
inline |
Definition at line 216 of file G4MTRunManager.hh.
void G4MTRunManager::SetNumberOfThreads | ( | G4int | n | ) |
Definition at line 179 of file G4MTRunManager.cc.
References forcedNwokers, G4Exception(), JustWarning, n, nworkers, and threads.
Referenced by main().
Definition at line 459 of file G4MTRunManager.cc.
References G4TemplateRNGHelper< T >::GetInstance(), G4TemplateRNGHelper< T >::GetSeed(), nSeedsFilled, nSeedsPerEvent, nSeedsUsed, G4RunManager::numberOfEventProcessed, numberOfEventToBeProcessed, RefillSeeds(), and G4Event::SetEventID().
Referenced by G4WorkerRunManager::GenerateEvent().
|
virtual |
Definition at line 478 of file G4MTRunManager.cc.
References eventModulo, G4TemplateRNGHelper< T >::GetInstance(), G4TemplateRNGHelper< T >::GetSeed(), nSeedsFilled, nSeedsPerEvent, nSeedsUsed, G4RunManager::numberOfEventProcessed, numberOfEventToBeProcessed, RefillSeeds(), G4RunManager::runAborted, and G4Event::SetEventID().
Referenced by G4WorkerRunManager::GenerateEvent().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 411 of file G4MTRunManager.cc.
References G4UserRunAction::SetMaster(), and G4RunManager::SetUserAction().
Referenced by G4TheMTRayTracer::RestoreUserActions(), and G4TheMTRayTracer::StoreUserActions().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 417 of file G4MTRunManager.cc.
References FatalException, and G4Exception().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 423 of file G4MTRunManager.cc.
References FatalException, and G4Exception().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 429 of file G4MTRunManager.cc.
References FatalException, and G4Exception().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 435 of file G4MTRunManager.cc.
References FatalException, and G4Exception().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 441 of file G4MTRunManager.cc.
References FatalException, and G4Exception().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 400 of file G4MTRunManager.cc.
References G4RunManager::SetUserInitialization().
Referenced by main(), G4TheMTRayTracer::RestoreUserActions(), and G4TheMTRayTracer::StoreUserActions().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 406 of file G4MTRunManager.cc.
References G4RunManager::SetUserInitialization().
|
virtual |
Reimplemented from G4RunManager.
Definition at line 384 of file G4MTRunManager.cc.
References G4RunManager::userWorkerInitialization.
|
virtual |
Reimplemented from G4RunManager.
Definition at line 389 of file G4MTRunManager.cc.
References G4RunManager::userWorkerThreadInitialization.
|
virtual |
Reimplemented from G4RunManager.
Definition at line 394 of file G4MTRunManager.cc.
References G4VUserActionInitialization::BuildForMaster(), and G4RunManager::userActionInitialization.
|
protectedvirtual |
Reimplemented from G4RunManager.
Definition at line 172 of file G4MTRunManager.cc.
References G4RunManager::randomNumberStatusDir.
|
virtual |
Reimplemented from G4RunManager.
Definition at line 222 of file G4MTRunManager.cc.
|
protectedvirtual |
Reimplemented in tbbMasterRunManager.
Definition at line 503 of file G4MTRunManager.cc.
References ENDWORKER, G4UserWorkerThreadInitialization::JoinWorker(), NewActionRequest(), threads, and G4RunManager::userWorkerThreadInitialization.
Referenced by ~G4MTRunManager().
|
virtual |
Reimplemented in tbbMasterRunManager.
Definition at line 781 of file G4MTRunManager.cc.
References G4CONDITIONWAIT, and G4CONDTIONBROADCAST.
Referenced by G4WorkerRunManager::RunTermination().
|
virtual |
Reimplemented in tbbMasterRunManager.
Definition at line 719 of file G4MTRunManager.cc.
References G4CONDITIONWAIT, and G4CONDTIONBROADCAST.
Referenced by G4WorkerRunManager::RunInitialization().
|
virtual |
Reimplemented in tbbMasterRunManager.
Definition at line 842 of file G4MTRunManager.cc.
References G4CONDITIONWAIT, G4CONDTIONBROADCAST, and nextActionRequest.
Referenced by G4MTRunManagerKernel::StartThread().
|
protectedvirtual |
Reimplemented in tbbMasterRunManager.
Definition at line 749 of file G4MTRunManager.cc.
References G4CONDITIONWAIT, G4CONDTIONBROADCAST, and threads.
Referenced by RunTermination().
|
protectedvirtual |
Reimplemented in tbbMasterRunManager.
Definition at line 663 of file G4MTRunManager.cc.
References G4CONDITIONWAIT, G4CONDTIONBROADCAST, and threads.
Referenced by InitializeEventLoop().
|
protected |
Definition at line 206 of file G4MTRunManager.hh.
Referenced by InitializeEventLoop(), and SetUpNEvents().
|
protected |
Definition at line 205 of file G4MTRunManager.hh.
Referenced by GetEventModulo(), and InitializeEventLoop().
|
staticprivate |
Definition at line 159 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), GetMasterRunManager(), GetMasterRunManagerKernel(), and GetMTMasterRunManagerKernel().
|
private |
Definition at line 105 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), and SetNumberOfThreads().
|
private |
Definition at line 114 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), getMasterRandomEngine(), InitializeEventLoop(), and RefillSeeds().
|
staticprivate |
Definition at line 156 of file G4MTRunManager.hh.
Referenced by ConstructScoringWorlds(), G4MTRunManager(), GetMasterScoringManager(), and MergeScores().
|
staticprivate |
Definition at line 157 of file G4MTRunManager.hh.
Referenced by addWorld(), ConstructScoringWorlds(), and GetMasterWorlds().
|
private |
Definition at line 160 of file G4MTRunManager.hh.
Referenced by AbortRun(), G4MTRunManager(), GetMTMasterRunManagerKernel(), and InitializeEventLoop().
|
protected |
Definition at line 201 of file G4MTRunManager.hh.
Referenced by NewActionRequest(), and ThisWorkerWaitForNextAction().
|
protected |
Definition at line 208 of file G4MTRunManager.hh.
Referenced by InitializeEventLoop(), RefillSeeds(), SetUpAnEvent(), and SetUpNEvents().
|
protected |
Definition at line 209 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), InitializeEventLoop(), and RefillSeeds().
|
protected |
Definition at line 210 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), InitializeEventLoop(), RefillSeeds(), SetUpAnEvent(), and SetUpNEvents().
|
protected |
Definition at line 207 of file G4MTRunManager.hh.
Referenced by InitializeEventLoop(), SetUpAnEvent(), and SetUpNEvents().
|
protected |
Definition at line 130 of file G4MTRunManager.hh.
Referenced by tbbMasterRunManager::CreateAndStartWorkers(), G4MTRunManager(), InitializeEventLoop(), RefillSeeds(), SetUpAnEvent(), and SetUpNEvents().
|
private |
Definition at line 103 of file G4MTRunManager.hh.
Referenced by CreateAndStartWorkers(), G4MTRunManager(), GetNumberOfThreads(), InitializeEventLoop(), and SetNumberOfThreads().
|
protected |
Definition at line 211 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), InitializeEventLoop(), RefillSeeds(), and ~G4MTRunManager().
|
private |
Definition at line 109 of file G4MTRunManager.hh.
Referenced by CreateAndStartWorkers(), NewActionRequest(), SetNumberOfThreads(), TerminateWorkers(), WaitForEndEventLoopWorkers(), and WaitForReadyWorkers().
|
private |
Definition at line 112 of file G4MTRunManager.hh.
Referenced by GetCommandStack(), and PrepareCommandsStack().