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

Classes

struct  FuncAddrInfo
 
class  IFuncInfoProvider
 
class  IStackInfoProvider
 Interface pour récupérer les infos d'une pile d'appel. Plus de détails...
 
class  NullFuncInfoProvider
 
class  SortedProfStackInfo
 

Types publics

typedef std::map< void *, ProfAddrInfo, std::less< void * >, StaticAlloc< std::pair< void *const, ProfAddrInfo > > > AddrMap
 
typedef std::map< Int64, ProfFuncInfo *, std::less< Int64 >, StaticAlloc< std::pair< const Int64, ProfFuncInfo * > > > FuncMap
 
typedef std::map< ProfStackInfo, Int64, std::less< ProfStackInfo >, StaticAlloc< std::pair< const ProfStackInfo, Int64 > > > StackMap
 

Fonctions membres publiques

 ProfInfos (ITraceMng *tm)
 
void printInfos (bool dump_file)
 
void dumpJSON (JSONWriter &writer)
 
void getInfos (Int64Array &)
 
void startProfiling ()
 
void addEvent (void *address, int overflow_event[MAX_COUNTER], int nb_overflow_event)
 
void stopProfiling ()
 
void reset ()
 
void setFunctionDepth (int v)
 
void setPeriod (int v)
 
void setNbEventBeforeGettingStack (Integer v)
 
Int64 nbEventBeforeGettingStack () const
 
- 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 protégées

void _addEvent (void *address, int overflow_event[MAX_COUNTER], int nb_overflow_event, IStackInfoProvider &stack_info, Integer function_depth)
 
bool _getFunc (void *addr, FuncAddrInfo &info)
 
void _sortFunctions (std::set< ProfFuncInfo *, ProfFuncComparer > &sorted_func)
 
- Fonctions membres protégées hérités de Arccore::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
 
Int32 _localVerboseLevel () const
 

Fonctions membres privées

ProfFuncInfo_getNextFuncInfo ()
 
ProfFuncInfo_funcInfoFromIndex (Int32 index)
 
void _storeAddress (void *address, bool is_counter0, int overflow_event[MAX_COUNTER], int nb_overflow_event, bool *do_add, bool *do_stack, bool *func_already_added)
 
void _checkNotStarted ()
 

Attributs privés

AddrMap m_addr_map
 
FuncMap m_func_map
 
StackMap m_stack_map
 
Int64 m_total_event = 0
 
Int64 m_total_stack = 0
 
Int64 m_counters [MAX_COUNTER]
 
Int32 m_current_func_info = 0
 
ProfFuncInfo m_func_info_buffer [MAX_FUNC]
 
int m_period = 0
 
Int64 m_nb_event_before_getting_stack = 5000
 
int m_function_depth = 3
 
bool m_use_backtrace = false
 
bool m_use_libunwind = false
 
MonoFuncAddrGetterm_mono_func_getter = nullptr
 
bool m_is_started = false
 
IFuncInfoProviderm_default_func_info_provider = nullptr
 
IFuncInfoProviderm_libunwind_func_info_provider = nullptr
 
IFuncInfoProviderm_backtrace_func_info_provider = nullptr
 
IFuncInfoProviderm_func_info_provider = nullptr
 

Description détaillée

Définition à la ligne 197 du fichier ProfilingInfo.h.

Documentation des définitions de type membres

◆ AddrMap

typedef std::map<void*,ProfAddrInfo,std::less<void*>,StaticAlloc<std::pair<void* const,ProfAddrInfo> > > Arcane::ProfInfos::AddrMap

Définition à la ligne 247 du fichier ProfilingInfo.h.

◆ FuncMap

typedef std::map<Int64,ProfFuncInfo*,std::less<Int64>,StaticAlloc<std::pair<const Int64,ProfFuncInfo*> > > Arcane::ProfInfos::FuncMap

Définition à la ligne 248 du fichier ProfilingInfo.h.

◆ StackMap

typedef std::map<ProfStackInfo,Int64,std::less<ProfStackInfo>,StaticAlloc<std::pair<const ProfStackInfo,Int64> > > Arcane::ProfInfos::StackMap

Définition à la ligne 249 du fichier ProfilingInfo.h.

Documentation des constructeurs et destructeur

◆ ProfInfos()

Arcane::ProfInfos::ProfInfos ( ITraceMng tm)

Définition à la ligne 461 du fichier ProfilingInfo.cc.

◆ ~ProfInfos()

Arcane::ProfInfos::~ProfInfos ( )

Définition à la ligne 492 du fichier ProfilingInfo.cc.

Documentation des fonctions membres

◆ _addEvent()

void Arcane::ProfInfos::_addEvent ( void address,
int  overflow_event[MAX_COUNTER],
int  nb_overflow_event,
IStackInfoProvider stack_info,
Integer  function_depth 
)
protected

Définition à la ligne 676 du fichier ProfilingInfo.cc.

◆ _checkNotStarted()

void Arcane::ProfInfos::_checkNotStarted ( )
private

Définition à la ligne 570 du fichier ProfilingInfo.cc.

◆ _funcInfoFromIndex()

ProfFuncInfo & Arcane::ProfInfos::_funcInfoFromIndex ( Int32  index)
inlineprivate

Définition à la ligne 296 du fichier ProfilingInfo.h.

◆ _getFunc()

bool Arcane::ProfInfos::_getFunc ( void addr,
FuncAddrInfo info 
)
protected

Définition à la ligne 763 du fichier ProfilingInfo.cc.

◆ _getNextFuncInfo()

ProfFuncInfo * Arcane::ProfInfos::_getNextFuncInfo ( )
private

Définition à la ligne 504 du fichier ProfilingInfo.cc.

◆ _sortFunctions()

void Arcane::ProfInfos::_sortFunctions ( std::set< ProfFuncInfo *, ProfFuncComparer > &  sorted_func)
protected

Définition à la ligne 633 du fichier ProfilingInfo.cc.

◆ _storeAddress()

void Arcane::ProfInfos::_storeAddress ( void address,
bool  is_counter0,
int  overflow_event[MAX_COUNTER],
int  nb_overflow_event,
bool do_add,
bool do_stack,
bool func_already_added 
)
private

Définition à la ligne 644 du fichier ProfilingInfo.cc.

◆ addEvent()

void Arcane::ProfInfos::addEvent ( void address,
int  overflow_event[MAX_COUNTER],
int  nb_overflow_event 
)

Définition à la ligne 604 du fichier ProfilingInfo.cc.

◆ dumpJSON()

void Arcane::ProfInfos::dumpJSON ( JSONWriter writer)

Définition à la ligne 1041 du fichier ProfilingInfo.cc.

◆ getInfos()

void Arcane::ProfInfos::getInfos ( Int64Array pkt)

Définition à la ligne 982 du fichier ProfilingInfo.cc.

◆ nbEventBeforeGettingStack()

Int64 Arcane::ProfInfos::nbEventBeforeGettingStack ( ) const
inline

Définition à la ligne 264 du fichier ProfilingInfo.h.

◆ printInfos()

void Arcane::ProfInfos::printInfos ( bool  dump_file)

Définition à la ligne 822 du fichier ProfilingInfo.cc.

◆ reset()

void Arcane::ProfInfos::reset ( )

Définition à la ligne 797 du fichier ProfilingInfo.cc.

◆ setFunctionDepth()

void Arcane::ProfInfos::setFunctionDepth ( int  v)

Définition à la ligne 580 du fichier ProfilingInfo.cc.

◆ setNbEventBeforeGettingStack()

void Arcane::ProfInfos::setNbEventBeforeGettingStack ( Integer  v)
inline

Définition à la ligne 263 du fichier ProfilingInfo.h.

◆ setPeriod()

void Arcane::ProfInfos::setPeriod ( int  v)

Définition à la ligne 590 du fichier ProfilingInfo.cc.

◆ startProfiling()

void Arcane::ProfInfos::startProfiling ( )

Définition à la ligne 518 du fichier ProfilingInfo.cc.

◆ stopProfiling()

void Arcane::ProfInfos::stopProfiling ( )

Définition à la ligne 551 du fichier ProfilingInfo.cc.

Documentation des données membres

◆ m_addr_map

AddrMap Arcane::ProfInfos::m_addr_map
private

Définition à la ligne 266 du fichier ProfilingInfo.h.

◆ m_backtrace_func_info_provider

IFuncInfoProvider* Arcane::ProfInfos::m_backtrace_func_info_provider = nullptr
private

Définition à la ligne 283 du fichier ProfilingInfo.h.

◆ m_counters

Int64 Arcane::ProfInfos::m_counters[MAX_COUNTER]
private

Définition à la ligne 271 du fichier ProfilingInfo.h.

◆ m_current_func_info

Int32 Arcane::ProfInfos::m_current_func_info = 0
private

Définition à la ligne 272 du fichier ProfilingInfo.h.

◆ m_default_func_info_provider

IFuncInfoProvider* Arcane::ProfInfos::m_default_func_info_provider = nullptr
private

Définition à la ligne 281 du fichier ProfilingInfo.h.

◆ m_func_info_buffer

ProfFuncInfo Arcane::ProfInfos::m_func_info_buffer[MAX_FUNC]
private

Définition à la ligne 273 du fichier ProfilingInfo.h.

◆ m_func_info_provider

IFuncInfoProvider* Arcane::ProfInfos::m_func_info_provider = nullptr
private

Définition à la ligne 284 du fichier ProfilingInfo.h.

◆ m_func_map

FuncMap Arcane::ProfInfos::m_func_map
private

Définition à la ligne 267 du fichier ProfilingInfo.h.

◆ m_function_depth

int Arcane::ProfInfos::m_function_depth = 3
private

Définition à la ligne 276 du fichier ProfilingInfo.h.

◆ m_is_started

bool Arcane::ProfInfos::m_is_started = false
private

Définition à la ligne 280 du fichier ProfilingInfo.h.

◆ m_libunwind_func_info_provider

IFuncInfoProvider* Arcane::ProfInfos::m_libunwind_func_info_provider = nullptr
private

Définition à la ligne 282 du fichier ProfilingInfo.h.

◆ m_mono_func_getter

MonoFuncAddrGetter* Arcane::ProfInfos::m_mono_func_getter = nullptr
private

Définition à la ligne 279 du fichier ProfilingInfo.h.

◆ m_nb_event_before_getting_stack

Int64 Arcane::ProfInfos::m_nb_event_before_getting_stack = 5000
private

Définition à la ligne 275 du fichier ProfilingInfo.h.

◆ m_period

int Arcane::ProfInfos::m_period = 0
private

Définition à la ligne 274 du fichier ProfilingInfo.h.

◆ m_stack_map

StackMap Arcane::ProfInfos::m_stack_map
private

Définition à la ligne 268 du fichier ProfilingInfo.h.

◆ m_total_event

Int64 Arcane::ProfInfos::m_total_event = 0
private

Définition à la ligne 269 du fichier ProfilingInfo.h.

◆ m_total_stack

Int64 Arcane::ProfInfos::m_total_stack = 0
private

Définition à la ligne 270 du fichier ProfilingInfo.h.

◆ m_use_backtrace

bool Arcane::ProfInfos::m_use_backtrace = false
private

Définition à la ligne 277 du fichier ProfilingInfo.h.

◆ m_use_libunwind

bool Arcane::ProfInfos::m_use_libunwind = false
private

Définition à la ligne 278 du fichier ProfilingInfo.h.


La documentation de cette classe a été générée à partir des fichiers suivants :