12#ifndef ARCANE_UTILS_PROFILING_H
13#define ARCANE_UTILS_PROFILING_H
19#include "arcane/utils/String.h"
29class AcceleratorStatInfoList;
46 Int64 m_begin_time = 0.0;
118 Int64
execTime()
const {
return m_end_time - m_begin_time; }
130 std::atomic<Int64> m_nb_chunk = 0;
133 Int64 m_begin_time = 0;
136 Int64 m_end_time = 0;
158 ARCANE_DEPRECATED_REASON(
"Y2023: Use _threadLocalForLoopInstance() instead")
167 static void setProfilingLevel(Int32 level);
215 static Int32 m_profiling_level;
Déclarations des types utilisés dans Arcane.
Classe pour gérer le profiling d'une seule exécution d'une boucle.
void setEndTime(Int64 v)
Positionne le temps de fin de la boucle en nanoseconde.
void setBeginTime(Int64 v)
Positionne le temps de début de la boucle (en nanoseconde)
Int64 nbChunk() const
Nombre de chunks.
void incrementNbChunk()
Incrémente le nombre de chunk utilisé.
Int64 execTime() const
Temps d'exécution (en nanoseconde).
Informations de trace pour une boucle 'for'.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Gestionnaire pour le profiling.
static bool hasProfiling()
Indique si le profilage est actif.
static Int32 profilingLevel()
Niveau de profilage.
Statistiques pour les accélérateurs.
Statistiques cumulées sur le nombre de boucles exécutées.
Statistiques d'exécution des boucles.
ForLoopStatInfoListImpl * _internalImpl() const
Type opaque pour l'implémentation interne.
Classe permettant de récupérer le temps passé entre l'appel au constructeur et au destructeur.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-