Module principal. Plus de détails...
#include <arcane/core/ModuleMaster.h>
Fonctions membres publiques | |
ModuleMaster (const ModuleBuildInfo &) | |
Constructeur. | |
virtual | ~ModuleMaster () |
Destructeur. | |
virtual VersionInfo | versionInfo () const |
Version du module. | |
virtual CaseOptionsMain * | caseoptions () |
Accès aux options du module. | |
virtual IModule * | toModule () |
Conversion en IModule. | |
virtual CommonVariables * | commonVariables () |
Accès aux variables 'communes' partagées entre tout service et module. | |
virtual void | addTimeLoopService (ITimeLoopService *tls) |
Ajoute le service de boucle en temps. | |
virtual void | dumpStandardCurves () |
Sort les courbes classiques (CPUTime, ElapsedTime, ...) | |
void | timeLoopBegin () |
Point d'entrée auto-chargé en début d'itération de la boucle de calcul. | |
void | timeLoopEnd () |
Point d'entrée auto-chargé en fin d'itération de la boucle de calcul. | |
void | masterInit () |
Point d'entrée auto-chargé en début d'initialisation. | |
void | masterStartInit () |
Point d'entrée auto-chargé en début d'initialisation d'un nouveau cas. | |
void | masterContinueInit () |
Point d'entrée auto-chargé en début de reprise d'un nouveau cas. | |
Fonctions membres publiques hérités de Arcane::AbstractModule | |
AbstractModule (const ModuleBuildInfo &) | |
Constructeur à partir d'un ModuleBuildInfo. | |
virtual | ~AbstractModule () |
Destructeur. | |
String | name () const override |
Nom du module. | |
ISession * | session () const override |
Session associé au module. | |
ISubDomain * | subDomain () const override |
Sous-domaine associé au module. | |
IMesh * | defaultMesh () const override |
Maillage par défaut pour ce module. | |
MeshHandle | defaultMeshHandle () const override |
Maillage par défaut pour ce module. | |
IParallelMng * | parallelMng () const override |
Gestionnaire du parallélisme par échange de message. | |
IAcceleratorMng * | acceleratorMng () const override |
Gestionnaire des accélérateurs. | |
ITraceMng * | traceMng () const override |
Gestionnaire de traces. | |
void | setUsed (bool v) override |
Positionne le flag d'utilisation du module. | |
bool | used () const override |
Retourne l'état d'utilisation du module. | |
void | setDisabled (bool v) override |
Positionne le flag d'activation du module. | |
bool | disabled () const override |
Retourne l'état d'activation du module. | |
bool | isGarbageCollected () const override |
Indique si le module utilise un système de Garbage collection. | |
Fonctions membres publiques hérités de Arccore::TraceAccessor | |
TraceAccessor (ITraceMng *m) | |
Construit un accesseur via le gestionnaire de trace m. | |
TraceAccessor (const TraceAccessor &rhs) | |
Constructeur par recopie. | |
TraceAccessor & | operator= (const TraceAccessor &rhs) |
Opérateur de recopie. | |
virtual | ~TraceAccessor () |
Libère les ressources. | |
ITraceMng * | traceMng () const |
Gestionnaire de trace. | |
TraceMessage | info () const |
Flot pour un message d'information. | |
TraceMessage | pinfo () const |
Flot pour un message d'information en parallèle. | |
TraceMessage | info (char category) const |
Flot pour un message d'information d'une catégorie donnée. | |
TraceMessage | pinfo (char category) const |
Flot pour un message d'information parallèle d'une catégorie donnée. | |
TraceMessage | info (bool v) const |
Flot pour un message d'information. | |
TraceMessage | warning () const |
Flot pour un message d'avertissement. | |
TraceMessage | pwarning () const |
TraceMessage | error () const |
Flot pour un message d'erreur. | |
TraceMessage | perror () const |
TraceMessage | log () const |
Flot pour un message de log. | |
TraceMessage | plog () const |
Flot pour un message de log. | |
TraceMessage | logdate () const |
Flot pour un message de log précédé de la date. | |
TraceMessage | fatal () const |
Flot pour un message d'erreur fatale. | |
TraceMessage | pfatal () const |
Flot pour un message d'erreur fatale en parallèle. | |
TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
Flot pour un message de debug. | |
Trace::eDebugLevel | configDbgLevel () const |
Niveau debug du fichier de configuration. | |
TraceMessage | info (Int32 verbose_level) const |
Flot pour un message d'information d'un niveau donné | |
TraceMessage | linfo () const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
TraceMessage | linfo (Int32 relative_level) const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
void | fatalMessage (const StandaloneTraceMessage &o) const |
Fonctions membres publiques hérités de Arcane::IModule | |
virtual | ~IModule () |
Destructeur. | |
Fonctions membres publiques hérités de Arcane::CommonVariables | |
CommonVariables (IModule *c) | |
Construit les références des variables communes pour le module c. | |
CommonVariables (IVariableMng *variable_mng) | |
Construit les références des variables communes pour le gestionnaire variable_mng. | |
CommonVariables (ISubDomain *sd) | |
Construit les références des variables communes pour le sous-domaine sd. | |
virtual | ~CommonVariables () |
Libère les ressources. | |
Int32 | globalIteration () const |
Numéro de l'itération courante. | |
Real | globalTime () const |
Temps courant. | |
Real | globalOldTime () const |
Temps courant précédent. | |
Real | globalFinalTime () const |
Temps final de la simulation. | |
Real | globalDeltaT () const |
Delta T courant. | |
Real | globalCPUTime () const |
Temps CPU utilisé (en seconde) | |
Real | globalOldCPUTime () const |
Temps CPU utilisé précédent (en seconde) | |
Real | globalElapsedTime () const |
Temps horloge (elapsed) utilisé (en seconde) | |
Real | globalOldElapsedTime () const |
Temps horloge (elapsed) utilisé précédent (en seconde) | |
Fonctions membres publiques hérités de Arcane::IModuleMaster | |
virtual | ~IModuleMaster () |
Destructeur. | |
Fonctions membres protégées | |
virtual void | timeIncrementation () |
Incrémentation du pas de temps surchargeable. | |
virtual void | timeStepInformation () |
Affichage surchargeable des informations du pas de temps. | |
void | _masterBeginLoop () |
void | _masterEndLoop () |
void | _masterStartInit () |
void | _masterContinueInit () |
void | _masterLoopExit () |
void | _masterMeshChanged () |
void | _masterRestore () |
Fonctions membres protégées hérités de Arcane::AbstractModule | |
void | _setVersionInfo (const VersionInfo &vi) |
Fonctions membres protégées hérités de Arccore::TraceAccessor | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Attributs protégés | |
CaseOptionsMain * | m_case_options_main |
Instance des options du module. | |
Integer | m_nb_loop |
Nombre de boucles de calcul effectuées. | |
Real | m_old_cpu_time |
Valeur du temps CPU à la derniere itération. | |
Real | m_old_elapsed_time |
Valeur du temps horloge à la derniere itération. | |
UniqueArray< ITimeLoopService * > | m_timeloop_services |
Liste des serviecs de boucle en temps. | |
bool | m_is_first_loop |
Indique si on est dans la première itération de l'exécution. | |
Real | m_thm_mem_used |
Real | m_thm_diff_cpu |
Real | m_thm_global_cpu_time |
Real | m_thm_diff_elapsed |
Real | m_thm_global_elapsed_time |
Real | m_thm_global_time |
bool | m_has_thm_dump_at_iteration |
Fonctions membres privées | |
void | _dumpTimeInfo () |
Membres hérités additionnels | |
Fonctions membres publiques statiques hérités de Arcane::AbstractModule | |
static void | staticInitialize (ISubDomain *sd) |
Initialisation du module pour le sous-domaine sd. | |
Fonctions membres publiques statiques hérités de Arcane::IModuleMaster | |
static IModuleMaster * | createDefault (const ModuleBuildInfo &) |
Création d'une instance de IModuleMaster. | |
Attributs publics hérités de Arcane::CommonVariables | |
VariableScalarInt32 | m_global_iteration |
Itération courante. | |
VariableScalarReal | m_global_time |
Temps actuel. | |
VariableScalarReal | m_global_deltat |
Delta T global. | |
VariableScalarReal | m_global_old_time |
Temps précédent le temps actuel. | |
VariableScalarReal | m_global_old_deltat |
Delta T au temps précédent le temps global. | |
VariableScalarReal | m_global_final_time |
Temps final du cas. | |
VariableScalarReal | m_global_old_cpu_time |
Temps précédent CPU utilisé (en seconde) | |
VariableScalarReal | m_global_cpu_time |
Temps CPU utilisé (en seconde) | |
VariableScalarReal | m_global_old_elapsed_time |
Temps précédent horloge utilisé (en seconde) | |
VariableScalarReal | m_global_elapsed_time |
Temps horloge utilisé (en seconde) | |
Module principal.
Ce module est toujours chargé en premier pour que ces points d'entrée encadrent tous ceux des autres modules. Il contient les variables globales du cas, comme le nom de fichier ou le numéro de l'itération.
Définition à la ligne 44 du fichier ModuleMaster.h.
Arcane::ModuleMaster::ModuleMaster | ( | const ModuleBuildInfo & | mb | ) |
Constructeur.
Définition à la ligne 57 du fichier ModuleMaster.cc.
Références Arcane::addEntryPoint(), Arcane::ISubDomain::caseMng(), m_case_options_main, masterContinueInit(), masterInit(), masterStartInit(), Arcane::IEntryPoint::PAutoLoadBegin, Arcane::IEntryPoint::PAutoLoadEnd, timeLoopBegin(), timeLoopEnd(), Arcane::IEntryPoint::WComputeLoop, Arcane::IEntryPoint::WContinueInit, Arcane::IEntryPoint::WInit, Arcane::IEntryPoint::WOnMeshChanged, Arcane::IEntryPoint::WRestore, et Arcane::IEntryPoint::WStartInit.
|
virtual |
|
protected |
Définition à la ligne 391 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 427 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 403 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 439 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 451 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 463 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 415 du fichier ModuleMaster.cc.
|
virtual |
Ajoute le service de boucle en temps.
Implémente Arcane::IModuleMaster.
Définition à la ligne 382 du fichier ModuleMaster.cc.
Références m_timeloop_services.
|
inlinevirtual |
Accès aux options du module.
Implémente Arcane::IModuleMaster.
Définition à la ligne 65 du fichier ModuleMaster.h.
|
inlinevirtual |
Accès aux variables 'communes' partagées entre tout service et module.
Implémente Arcane::IModuleMaster.
Définition à la ligne 71 du fichier ModuleMaster.h.
|
virtual |
Sort les courbes classiques (CPUTime, ElapsedTime, ...)
Implémente Arcane::IModuleMaster.
Définition à la ligne 332 du fichier ModuleMaster.cc.
Références Arccore::TraceAccessor::info(), Arcane::CommonVariables::m_global_cpu_time, Arcane::CommonVariables::m_global_elapsed_time, Arcane::CommonVariables::m_global_time, m_old_cpu_time, m_old_elapsed_time, Arcane::VariableRef::name(), Arcane::AbstractModule::subDomain(), et Arcane::ISubDomain::timeHistoryMng().
Référencé par timeLoopEnd().
void Arcane::ModuleMaster::masterContinueInit | ( | ) |
Point d'entrée auto-chargé en début de reprise d'un nouveau cas.
Définition à la ligne 148 du fichier ModuleMaster.cc.
Références Arcane::ISubDomain::caseMng(), Arccore::TraceAccessor::info(), Arcane::CommonVariables::m_global_iteration, Arcane::CommonVariables::m_global_old_deltat, Arcane::CommonVariables::m_global_old_time, et Arcane::AbstractModule::subDomain().
Référencé par ModuleMaster().
void Arcane::ModuleMaster::masterInit | ( | ) |
Point d'entrée auto-chargé en début d'initialisation.
Définition à la ligne 140 du fichier ModuleMaster.cc.
Référencé par ModuleMaster().
void Arcane::ModuleMaster::masterStartInit | ( | ) |
Point d'entrée auto-chargé en début d'initialisation d'un nouveau cas.
N'est pas appelé en cas d'initialisation sur une reprise
Définition à la ligne 118 du fichier ModuleMaster.cc.
Références Arcane::ISubDomain::caseMng(), Arcane::CommonVariables::m_global_cpu_time, Arcane::CommonVariables::m_global_elapsed_time, Arcane::CommonVariables::m_global_iteration, Arcane::CommonVariables::m_global_old_cpu_time, Arcane::CommonVariables::m_global_old_deltat, Arcane::CommonVariables::m_global_old_elapsed_time, Arcane::CommonVariables::m_global_old_time, Arcane::CommonVariables::m_global_time, et Arcane::AbstractModule::subDomain().
Référencé par ModuleMaster().
|
protectedvirtual |
Incrémentation du pas de temps surchargeable.
Définition à la ligne 169 du fichier ModuleMaster.cc.
Références Arcane::CommonVariables::m_global_deltat, et Arcane::CommonVariables::m_global_time.
Référencé par timeLoopBegin().
void Arcane::ModuleMaster::timeLoopBegin | ( | ) |
Point d'entrée auto-chargé en début d'itération de la boucle de calcul.
Définition à la ligne 197 du fichier ModuleMaster.cc.
Références Arcane::ISubDomain::allReplicaParallelMng(), Arcane::ISubDomain::caseMng(), Arcane::IParallelMng::commSize(), Arcane::IParallelMng::computeMinMaxSum(), Arcane::platform::getOnlineDebuggerService(), Arccore::TraceAccessor::info(), Arcane::CommonVariables::m_global_cpu_time, Arcane::CommonVariables::m_global_deltat, Arcane::CommonVariables::m_global_elapsed_time, Arcane::CommonVariables::m_global_iteration, Arcane::CommonVariables::m_global_old_cpu_time, Arcane::CommonVariables::m_global_old_elapsed_time, Arcane::CommonVariables::m_global_old_time, Arcane::CommonVariables::m_global_time, m_is_first_loop, m_nb_loop, m_old_cpu_time, m_old_elapsed_time, Arcane::AbstractModule::parallelMng(), Arcane::AbstractModule::subDomain(), timeIncrementation(), et timeStepInformation().
Référencé par ModuleMaster().
void Arcane::ModuleMaster::timeLoopEnd | ( | ) |
Point d'entrée auto-chargé en fin d'itération de la boucle de calcul.
Définition à la ligne 305 du fichier ModuleMaster.cc.
Références dumpStandardCurves(), Arccore::TraceAccessor::info(), Arcane::CommonVariables::m_global_iteration, et Arcane::AbstractModule::subDomain().
Référencé par ModuleMaster().
|
protectedvirtual |
Affichage surchargeable des informations du pas de temps.
Définition à la ligne 178 du fichier ModuleMaster.cc.
Références Arccore::TraceAccessor::info(), Arcane::CommonVariables::m_global_deltat, Arcane::CommonVariables::m_global_iteration, Arcane::CommonVariables::m_global_time, et m_nb_loop.
Référencé par timeLoopBegin().
Conversion en IModule.
Implémente Arcane::IModuleMaster.
Définition à la ligne 68 du fichier ModuleMaster.h.
|
inlinevirtual |
Version du module.
Réimplémentée à partir de Arcane::AbstractModule.
Définition à la ligne 60 du fichier ModuleMaster.h.
|
protected |
Instance des options du module.
Définition à la ligne 128 du fichier ModuleMaster.h.
Référencé par ModuleMaster(), et ~ModuleMaster().
|
protected |
Définition à la ligne 151 du fichier ModuleMaster.h.
|
protected |
Indique si on est dans la première itération de l'exécution.
Définition à la ligne 143 du fichier ModuleMaster.h.
Référencé par timeLoopBegin().
|
protected |
Nombre de boucles de calcul effectuées.
Définition à la ligne 131 du fichier ModuleMaster.h.
Référencé par timeLoopBegin(), et timeStepInformation().
|
protected |
Valeur du temps CPU à la derniere itération.
Définition à la ligne 134 du fichier ModuleMaster.h.
Référencé par dumpStandardCurves(), et timeLoopBegin().
|
protected |
Valeur du temps horloge à la derniere itération.
Définition à la ligne 137 du fichier ModuleMaster.h.
Référencé par dumpStandardCurves(), et timeLoopBegin().
|
protected |
Définition à la ligne 146 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 148 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 147 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 149 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 150 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 145 du fichier ModuleMaster.h.
|
protected |
Liste des serviecs de boucle en temps.
Définition à la ligne 140 du fichier ModuleMaster.h.
Référencé par addTimeLoopService().