Interface gérant les statistiques sur les temps d'exécution. Plus de détails...
#include <arcane/core/ITimeStats.h>
Fonctions membres publiques | |
virtual void | beginGatherStats ()=0 |
Démarre la collection des temps. | |
virtual void | endGatherStats ()=0 |
Arrête la collection des temps. | |
virtual void | beginAction (const String &action_name)=0 |
virtual void | endAction (const String &action_name, bool print_time)=0 |
virtual void | beginPhase (eTimePhase phase)=0 |
virtual void | endPhase (eTimePhase phase)=0 |
virtual Real | elapsedTime (eTimePhase phase)=0 |
Temps réel écoulé pour la phase phase. | |
virtual Real | elapsedTime (eTimePhase phase, const String &action)=0 |
Temps écoulé pour une phase d'une action. | |
virtual void | dumpCurrentStats (const String &name)=0 |
Affiche les statistiques d'une action. | |
virtual void | dumpStats (std::ostream &ostr, bool is_verbose, Real nb, const String &name, bool use_elapsed_time=false)=0 |
Affiche les statistiques sur les temps d'exécution. | |
virtual void | dumpTimeAndMemoryUsage (IParallelMng *pm)=0 |
Affiche la date actuelle et la mémoire consommée. | |
virtual bool | isGathering () const =0 |
Indique si les statistiques sont actives. | |
virtual void | dumpStatsJSON (JSONWriter &writer)=0 |
Sérialise dans l'écrivain writer les statistiques temporelles. | |
virtual ITimeMetricCollector * | metricCollector ()=0 |
Interface de collection associée. | |
virtual void | notifyNewIterationLoop ()=0 |
Notifie qu'on commence une nouvelle itération de la boucle de calcul. | |
virtual void | saveTimeValues (Properties *p)=0 |
virtual void | mergeTimeValues (Properties *p)=0 |
virtual void | resetStats (const String &action_name)=0 |
Interface gérant les statistiques sur les temps d'exécution.
Il faut appeler beginGatherStats() pour commencer à collecter les informations et appeler endGatherStats() pour arrêter la collection.
En général cette interface ne s'utilise pas directement mais par l'intermédiaire des classes Timer::Phase et Timer::Action.
Les méthodes de cette classe ne doivent être appelées que par un seul thread.
Définition à la ligne 47 du fichier ITimeStats.h.
Démarre la collection des temps.
Implémenté dans Arcane::TimeStats.
Affiche les statistiques d'une action.
Affiche les statistiques de l'action name ainsi que ces sous-actions pour l'itération courante.
Implémenté dans Arcane::TimeStats.
|
pure virtual |
Affiche les statistiques sur les temps d'exécution.
Il est possible de spécifier une valeur pour avoir un temps par itération ou par entité. Si use_elapsed_time est vrai, utilise le temps horloge, sinon utilise le temps CPU.
Implémenté dans Arcane::TimeStats.
|
pure virtual |
Sérialise dans l'écrivain writer les statistiques temporelles.
Implémenté dans Arcane::TimeStats.
|
pure virtual |
Affiche la date actuelle et la mémoire consommée.
Cette opération est collective sur pm.
Cette opération affiche la mémoire consommée pour le sous-domaine courant ainsi que le min et le max pour tous les sous-domaines.
Implémenté dans Arcane::TimeStats.
|
pure virtual |
Temps réel écoulé pour la phase phase.
Retourne le temps réel écoulé (en seconde) pour la phase phase.
Implémenté dans Arcane::TimeStats.
|
pure virtual |
Temps écoulé pour une phase d'une action.
Retourne le temps réel écoulé (en seconde) pour la phase phase de l'action action. Le temps retourné est celui de l'action et de chacune de ses filles.
Implémenté dans Arcane::TimeStats.
Arrête la collection des temps.
Implémenté dans Arcane::TimeStats.
Indique si les statistiques sont actives.
Les statistiques sont actives entre l'appel à beginGatherStats() et endGatherStats().
Implémenté dans Arcane::TimeStats.
|
pure virtual |
Interface de collection associée.
Implémenté dans Arcane::TimeStats.
Référencé par Arcane::ParallelMngDispatcher::timeMetricCollector().
Notifie qu'on commence une nouvelle itération de la boucle de calcul.
Cette information est utilisée pour calculer les temps par itération.
Implémenté dans Arcane::TimeStats.