Module principal. Plus de détails...
#include <arcane/core/ModuleMaster.h>
Graphe d'héritage de Arcane::ModuleMaster:
Graphe de collaboration de Arcane::ModuleMaster:Fonctions membres publiques | |
| ModuleMaster (const ModuleBuildInfo &) | |
| Constructeur. | |
| ~ModuleMaster () override | |
| Destructeur. | |
| VersionInfo | versionInfo () const override |
| Version du module. | |
| CaseOptionsMain * | caseoptions () override |
| Accès aux options du module. | |
| IModule * | toModule () override |
| Conversion en IModule. | |
| CommonVariables * | commonVariables () override |
| Accès aux variables 'communes' partagées entre tout service et module. | |
| void | addTimeLoopService (ITimeLoopService *tls) override |
| Ajoute le service de boucle en temps. | |
| void | dumpStandardCurves () override |
| 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 Arcane::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 Arcane::TraceAccessor | |
| void | _setLocalVerboseLevel (Int32 v) |
| Int32 | _localVerboseLevel () const |
Attributs protégés | |
| CaseOptionsMain * | m_case_options_main = nullptr |
| Instance des options du module. | |
| Integer | m_nb_loop = 0 |
| Nombre de boucles de calcul effectuées. | |
| Real | m_old_cpu_time = 0.0 |
| Valeur du temps CPU à la dernière itération. | |
| Real | m_old_elapsed_time = 0.0 |
| Valeur du temps horloge à la dernière itération. | |
| UniqueArray< ITimeLoopService * > | m_timeloop_services |
| Liste des services de boucle en temps. | |
| bool | m_is_first_loop = true |
| Indique si on est dans la première itération de l'exécution. | |
| Real | m_thm_mem_used = 0.0 |
| Real | m_thm_diff_cpu = 0.0 |
| Real | m_thm_global_cpu_time = 0.0 |
| Real | m_thm_diff_elapsed = 0.0 |
| Real | m_thm_global_elapsed_time = 0.0 |
| Real | m_thm_global_time = 0.0 |
| bool | m_has_thm_dump_at_iteration = false |
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 39 du fichier ModuleMaster.h.
|
explicit |
Constructeur.
Définition à la ligne 58 du fichier ModuleMaster.cc.
Références Arcane::AbstractModule::AbstractModule(), Arcane::addEntryPoint(), Arcane::ISubDomain::caseMng(), Arcane::CommonVariables::CommonVariables(), m_case_options_main, masterContinueInit(), masterInit(), masterStartInit(), Arcane::IEntryPoint::PAutoLoadBegin, Arcane::IEntryPoint::PAutoLoadEnd, Arcane::ModuleBuildInfo::subDomain(), timeLoopBegin(), timeLoopEnd(), Arcane::IEntryPoint::WComputeLoop, Arcane::IEntryPoint::WContinueInit, Arcane::IEntryPoint::WInit, Arcane::IEntryPoint::WOnMeshChanged, Arcane::IEntryPoint::WRestore, et Arcane::IEntryPoint::WStartInit.
Voici le graphe d'appel pour cette fonction :
|
override |
|
protected |
Définition à la ligne 380 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 416 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 392 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 428 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 440 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 452 du fichier ModuleMaster.cc.
|
protected |
Définition à la ligne 404 du fichier ModuleMaster.cc.
|
overridevirtual |
Ajoute le service de boucle en temps.
Implémente Arcane::IModuleMaster.
Définition à la ligne 371 du fichier ModuleMaster.cc.
Références m_timeloop_services.
|
inlineoverridevirtual |
Accès aux options du module.
Implémente Arcane::IModuleMaster.
Définition à la ligne 58 du fichier ModuleMaster.h.
Références m_case_options_main.
|
inlineoverridevirtual |
Accès aux variables 'communes' partagées entre tout service et module.
Implémente Arcane::IModuleMaster.
Définition à la ligne 64 du fichier ModuleMaster.h.
Références Arcane::CommonVariables::CommonVariables().
Voici le graphe d'appel pour cette fonction :
|
overridevirtual |
Sort les courbes classiques (CPUTime, ElapsedTime, ...)
Implémente Arcane::IModuleMaster.
Définition à la ligne 321 du fichier ModuleMaster.cc.
Références Arcane::ITimeHistoryMng::addValue(), Arcane::platform::getCPUTime(), Arcane::platform::getCurrentDateTime(), Arcane::platform::getMemoryUsed(), Arcane::platform::getRealTime(), Arcane::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::AbstractModule::subDomain(), et Arcane::ISubDomain::timeHistoryMng().
Référencé par timeLoopEnd().
Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :| void Arcane::ModuleMaster::masterContinueInit | ( | ) |
Point d'entrée auto-chargé en début de reprise d'un nouveau cas.
Définition à la ligne 137 du fichier ModuleMaster.cc.
Références Arcane::ISubDomain::caseMng(), Arcane::TraceAccessor::info(), Arcane::CommonVariables::m_global_iteration, Arcane::CommonVariables::m_global_old_deltat, Arcane::CommonVariables::m_global_old_time, Arcane::AbstractModule::subDomain(), et Arcane::ICaseMng::updateOptions().
Référencé par ModuleMaster().
Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :| void Arcane::ModuleMaster::masterInit | ( | ) |
Point d'entrée auto-chargé en début d'initialisation.
Définition à la ligne 129 du fichier ModuleMaster.cc.
Référencé par ModuleMaster().
Voici le graphe des appelants de cette fonction :| 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 107 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, Arcane::AbstractModule::subDomain(), et Arcane::ICaseMng::updateOptions().
Référencé par ModuleMaster().
Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :
|
protectedvirtual |
Incrémentation du pas de temps surchargeable.
Définition à la ligne 158 du fichier ModuleMaster.cc.
Références Arcane::CommonVariables::m_global_deltat, et Arcane::CommonVariables::m_global_time.
Référencé par timeLoopBegin().
Voici le graphe des appelants de cette fonction :| 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 186 du fichier ModuleMaster.cc.
Références Arcane::ISubDomain::allReplicaParallelMng(), Arcane::ISubDomain::caseMng(), Arcane::IParallelMng::commSize(), Arcane::IParallelMng::computeMinMaxSum(), Arcane::platform::getCPUTime(), Arcane::platform::getCurrentDateTime(), Arcane::platform::getMemoryUsed(), Arcane::platform::getOnlineDebuggerService(), Arcane::platform::getRealTime(), Arcane::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::IParallelMng::reduce(), Arcane::MessagePassing::ReduceMax, Arcane::AbstractModule::subDomain(), timeIncrementation(), timeStepInformation(), et Arcane::ICaseMng::updateOptions().
Référencé par ModuleMaster().
Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :| void Arcane::ModuleMaster::timeLoopEnd | ( | ) |
Point d'entrée auto-chargé en fin d'itération de la boucle de calcul.
Définition à la ligne 294 du fichier ModuleMaster.cc.
Références dumpStandardCurves(), Arcane::TraceAccessor::info(), Arcane::CommonVariables::m_global_iteration, et Arcane::AbstractModule::subDomain().
Référencé par ModuleMaster().
Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :
|
protectedvirtual |
Affichage surchargeable des informations du pas de temps.
Définition à la ligne 167 du fichier ModuleMaster.cc.
Références Arcane::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().
Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :
|
inlineoverridevirtual |
Conversion en IModule.
Implémente Arcane::IModuleMaster.
Définition à la ligne 61 du fichier ModuleMaster.h.
|
inlineoverridevirtual |
Version du module.
Réimplémentée à partir de Arcane::AbstractModule.
Définition à la ligne 55 du fichier ModuleMaster.h.
|
protected |
Instance des options du module.
Définition à la ligne 123 du fichier ModuleMaster.h.
Référencé par caseoptions(), ModuleMaster(), et ~ModuleMaster().
|
protected |
Définition à la ligne 147 du fichier ModuleMaster.h.
|
protected |
Indique si on est dans la première itération de l'exécution.
Définition à la ligne 138 du fichier ModuleMaster.h.
Référencé par timeLoopBegin().
|
protected |
Nombre de boucles de calcul effectuées.
Définition à la ligne 126 du fichier ModuleMaster.h.
Référencé par timeLoopBegin(), et timeStepInformation().
|
protected |
Valeur du temps CPU à la dernière itération.
Définition à la ligne 129 du fichier ModuleMaster.h.
Référencé par dumpStandardCurves(), et timeLoopBegin().
|
protected |
Valeur du temps horloge à la dernière itération.
Définition à la ligne 132 du fichier ModuleMaster.h.
Référencé par dumpStandardCurves(), et timeLoopBegin().
|
protected |
Définition à la ligne 141 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 143 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 142 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 144 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 145 du fichier ModuleMaster.h.
|
protected |
Définition à la ligne 140 du fichier ModuleMaster.h.
|
protected |
Liste des services de boucle en temps.
Définition à la ligne 135 du fichier ModuleMaster.h.
Référencé par addTimeLoopService().