Arcane  4.2.1.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

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

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 Arcane::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 Arcane::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 232 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 299 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 300 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 301 du fichier ProfilingInfo.h.

Documentation des constructeurs et destructeur

◆ ProfInfos()

Arcane::ProfInfos::ProfInfos ( ITraceMng * tm)

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

◆ ~ProfInfos()

Arcane::ProfInfos::~ProfInfos ( )

Définition à la ligne 525 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 709 du fichier ProfilingInfo.cc.

◆ _checkNotStarted()

void Arcane::ProfInfos::_checkNotStarted ( )
private

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

◆ _funcInfoFromIndex()

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

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

◆ _getFunc()

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

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

◆ _getNextFuncInfo()

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

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

◆ _sortFunctions()

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

Définition à la ligne 666 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 677 du fichier ProfilingInfo.cc.

◆ addEvent()

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

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

◆ dumpJSON()

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

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

◆ getInfos()

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

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

◆ nbEventBeforeGettingStack()

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

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

◆ printInfos()

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

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

◆ reset()

void Arcane::ProfInfos::reset ( )

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

◆ setFunctionDepth()

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

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

◆ setNbEventBeforeGettingStack()

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

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

◆ setPeriod()

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

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

◆ startProfiling()

void Arcane::ProfInfos::startProfiling ( )

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

◆ stopProfiling()

void Arcane::ProfInfos::stopProfiling ( )

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

Documentation des données membres

◆ m_addr_map

AddrMap Arcane::ProfInfos::m_addr_map
private

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

◆ m_backtrace_func_info_provider

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

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

◆ m_counters

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

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

◆ m_current_func_info

Int32 Arcane::ProfInfos::m_current_func_info = 0
private

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

◆ m_default_func_info_provider

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

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

◆ m_func_info_buffer

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

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

◆ m_func_info_provider

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

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

◆ m_func_map

FuncMap Arcane::ProfInfos::m_func_map
private

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

◆ m_function_depth

int Arcane::ProfInfos::m_function_depth = 3
private

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

◆ m_is_started

bool Arcane::ProfInfos::m_is_started = false
private

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

◆ m_libunwind_func_info_provider

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

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

◆ m_mono_func_getter

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

Définition à la ligne 336 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 332 du fichier ProfilingInfo.h.

◆ m_period

int Arcane::ProfInfos::m_period = 0
private

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

◆ m_stack_map

StackMap Arcane::ProfInfos::m_stack_map
private

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

◆ m_total_event

Int64 Arcane::ProfInfos::m_total_event = 0
private

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

◆ m_total_stack

Int64 Arcane::ProfInfos::m_total_stack = 0
private

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

◆ m_use_backtrace

bool Arcane::ProfInfos::m_use_backtrace = false
private

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

◆ m_use_libunwind

bool Arcane::ProfInfos::m_use_libunwind = false
private

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


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