Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::LinuxPerfPerformanceCounterService
+ Graphe d'héritage de Arcane::LinuxPerfPerformanceCounterService:
+ Graphe de collaboration de Arcane::LinuxPerfPerformanceCounterService:

Fonctions membres publiques

 LinuxPerfPerformanceCounterService (const ServiceBuildInfo &sbi)
 
void build ()
 
void initialize () override
 Initialise le service.
 
bool _addEvent (int event_type, int event_config, bool is_optional=false)
 Ajoute un évènement et retourne true si cela ne fonctionne pas.
 
void start () override
 Débute le suivi des compteurs de performance.
 
void stop () override
 Arrête le suivi des compteurs de performance.
 
bool isStarted () const override
 Indique si le service a démarré (start() a été appelé)
 
Integer getCounters (Int64ArrayView counters, bool do_substract) override
 Récupère les valeurs actuelles des compteurs.
 
Int64 getCycles () override
 Valeur du compteur pour le nombre de cycles du CPU.
 
- 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.
 
TraceAccessoroperator= (const TraceAccessor &rhs)
 Opérateur de recopie.
 
virtual ~TraceAccessor ()
 Libère les ressources.
 
ITraceMngtraceMng () 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 privées

void _closeAll ()
 
Int64 _getOneCounter (Int32 index)
 
void _checkInitialize ()
 

Attributs privés

UniqueArray< intm_events_file_descriptor
 
bool m_is_started = false
 
bool m_is_init = false
 
pid_t m_process_id = -1
 

Membres hérités additionnels

- Attributs publics statiques hérités de Arcane::IPerformanceCounterService
static const int MIN_COUNTER_SIZE = 8
 Taille minimale de la vue pour getCounters()
 
- Fonctions membres protégées hérités de Arccore::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
 
Int32 _localVerboseLevel () const
 

Description détaillée

Définition à la ligne 36 du fichier LinuxPerfPerformanceCounterService.cc.

Documentation des constructeurs et destructeur

◆ LinuxPerfPerformanceCounterService()

Arcane::LinuxPerfPerformanceCounterService::LinuxPerfPerformanceCounterService ( const ServiceBuildInfo sbi)
inlineexplicit

Définition à la ligne 42 du fichier LinuxPerfPerformanceCounterService.cc.

◆ ~LinuxPerfPerformanceCounterService()

Arcane::LinuxPerfPerformanceCounterService::~LinuxPerfPerformanceCounterService ( )
inline

Définition à la ligne 46 du fichier LinuxPerfPerformanceCounterService.cc.

Documentation des fonctions membres

◆ _addEvent()

bool Arcane::LinuxPerfPerformanceCounterService::_addEvent ( int  event_type,
int  event_config,
bool  is_optional = false 
)
inline

Ajoute un évènement et retourne true si cela ne fonctionne pas.

Définition à la ligne 61 du fichier LinuxPerfPerformanceCounterService.cc.

Références Arccore::Array< T >::add(), ARCANE_FATAL, et Arccore::TraceAccessor::info().

◆ _checkInitialize()

void Arcane::LinuxPerfPerformanceCounterService::_checkInitialize ( )
inlineprivate

Définition à la ligne 164 du fichier LinuxPerfPerformanceCounterService.cc.

◆ _closeAll()

void Arcane::LinuxPerfPerformanceCounterService::_closeAll ( )
inlineprivate

Définition à la ligne 144 du fichier LinuxPerfPerformanceCounterService.cc.

◆ _getOneCounter()

Int64 Arcane::LinuxPerfPerformanceCounterService::_getOneCounter ( Int32  index)
inlineprivate

Définition à la ligne 153 du fichier LinuxPerfPerformanceCounterService.cc.

◆ build()

void Arcane::LinuxPerfPerformanceCounterService::build ( )
inline

Définition à la ligne 53 du fichier LinuxPerfPerformanceCounterService.cc.

◆ getCounters()

Integer Arcane::LinuxPerfPerformanceCounterService::getCounters ( Int64ArrayView  counters,
bool  do_substract 
)
inlineoverridevirtual

Récupère les valeurs actuelles des compteurs.

Cette méthode ne doit être appelée que si isStarted() est vrai.

Si do_substract vaut false, remplit counters avec les valeurs actuelles des compteurs. Si do_substract vaut true, remplit counters avec la différence entre les valeurs actuelles et celles de counters lors de l'appel.

Int64ArrayView counters = ...;
p->getCounters(counters,false);
... // Operation.
p->getCounters(counters,true);
info() << "Nb cycle=" << counters[0].
Interface d'un service d'accès aux compteurs de performance.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
Vue modifiable d'un tableau d'un type T.
TraceMessage info() const
Flot pour un message d'information.

Le compteur d'indice 0 est toujours le nombre de cycle. counters doit valoir assez d'éléments pour renseigner au moins MIN_COUNTER_SIZE compteurs.

Valeurs retournées
lenombre de compteurs renseignés.
Précondition
isStarted()==true

Implémente Arcane::IPerformanceCounterService.

Définition à la ligne 119 du fichier LinuxPerfPerformanceCounterService.cc.

Références Arccore::AbstractArray< T >::size().

◆ getCycles()

Int64 Arcane::LinuxPerfPerformanceCounterService::getCycles ( )
inlineoverridevirtual

Valeur du compteur pour le nombre de cycles du CPU.

Précondition
isStarted()==true

Implémente Arcane::IPerformanceCounterService.

Définition à la ligne 130 du fichier LinuxPerfPerformanceCounterService.cc.

◆ initialize()

void Arcane::LinuxPerfPerformanceCounterService::initialize ( )
inlineoverridevirtual

Initialise le service.

Implémente Arcane::IPerformanceCounterService.

Définition à la ligne 55 du fichier LinuxPerfPerformanceCounterService.cc.

◆ isStarted()

bool Arcane::LinuxPerfPerformanceCounterService::isStarted ( ) const
inlineoverridevirtual

Indique si le service a démarré (start() a été appelé)

Implémente Arcane::IPerformanceCounterService.

Définition à la ligne 114 du fichier LinuxPerfPerformanceCounterService.cc.

◆ start()

void Arcane::LinuxPerfPerformanceCounterService::start ( )
inlineoverridevirtual

Débute le suivi des compteurs de performance.

Précondition
isStarted()==false.
Postcondition
isStarted()==true.

Implémente Arcane::IPerformanceCounterService.

Définition à la ligne 89 du fichier LinuxPerfPerformanceCounterService.cc.

Références ARCANE_FATAL, et Arccore::TraceAccessor::info().

◆ stop()

void Arcane::LinuxPerfPerformanceCounterService::stop ( )
inlineoverridevirtual

Arrête le suivi des compteurs de performance.

Précondition
isStarted()==true.
Postcondition
isStarted()==false.

Implémente Arcane::IPerformanceCounterService.

Définition à la ligne 102 du fichier LinuxPerfPerformanceCounterService.cc.

Références ARCANE_FATAL, et Arccore::TraceAccessor::info().

Documentation des données membres

◆ m_events_file_descriptor

UniqueArray<int> Arcane::LinuxPerfPerformanceCounterService::m_events_file_descriptor
private

Définition à la ligne 137 du fichier LinuxPerfPerformanceCounterService.cc.

◆ m_is_init

bool Arcane::LinuxPerfPerformanceCounterService::m_is_init = false
private

Définition à la ligne 139 du fichier LinuxPerfPerformanceCounterService.cc.

◆ m_is_started

bool Arcane::LinuxPerfPerformanceCounterService::m_is_started = false
private

Définition à la ligne 138 du fichier LinuxPerfPerformanceCounterService.cc.

◆ m_process_id

pid_t Arcane::LinuxPerfPerformanceCounterService::m_process_id = -1
private

Définition à la ligne 140 du fichier LinuxPerfPerformanceCounterService.cc.


La documentation de cette classe a été générée à partir du fichier suivant :