Profiling manager. More...
Static Public Member Functions | |
| static Impl::ForLoopStatInfoList * | threadLocalInstance () |
| static void | setProfilingLevel (Int32 level) |
| Sets the profiling level. | |
| static Int32 | profilingLevel () |
| Profiling level. | |
| static bool | hasProfiling () |
| Indicates if profiling is active. | |
| static void | visitLoopStat (const std::function< void(const Impl::ForLoopStatInfoList &)> &f) |
| Visits the loop statistics list. | |
| static void | visitAcceleratorStat (const std::function< void(const Impl::AcceleratorStatInfoList &)> &f) |
| Visits the accelerator statistics list. | |
| static const Impl::ForLoopCumulativeStat & | globalLoopStat () |
| static Impl::ForLoopStatInfoList * | _threadLocalForLoopInstance () |
| static Impl::AcceleratorStatInfoList * | _threadLocalAcceleratorInstance () |
Static Private Attributes | |
| static Int32 | m_profiling_level = 0 |
Profiling manager.
It is possible to enable profiling by calling setProfilingLevel() with a value greater than or equal to 1.
Statistics are added by retrieving an instance of impl::ForLoopStatInfoList specific to the currently executing thread.
Definition at line 152 of file arccore/src/base/arccore/base/Profiling.h.
|
static |
. Thread-local instance of the accelerator statistics manager
Definition at line 281 of file Profiling.cc.
|
static |
. Thread-local instance of the loop statistics manager
Definition at line 272 of file Profiling.cc.
Referenced by Arcane::Accelerator::Impl::RunCommandImpl::notifyEndExecuteKernel().
|
static |
Definition at line 317 of file Profiling.cc.
|
inlinestatic |
Indicates if profiling is active.
Definition at line 175 of file arccore/src/base/arccore/base/Profiling.h.
|
inlinestatic |
Profiling level.
Definition at line 172 of file arccore/src/base/arccore/base/Profiling.h.
Referenced by Arcane::Application::initialize().
|
static |
Sets the profiling level.
If 0, there is no profiling. Profiling is active starting from level 1.
Definition at line 308 of file Profiling.cc.
Referenced by Arcane::Application::build().
|
static |
TODO: Deprecate. Use static impl::ForLoopStatInfoList* _threadLocalForLoopInstance() instead.
Definition at line 263 of file Profiling.cc.
|
static |
Visits the accelerator statistics list.
There is an instance of impl::AcceleratorStatInfoList per thread that executed a loop.
This method must not be called when profiling is active.
Definition at line 299 of file Profiling.cc.
Referenced by Arcane::Accelerator::RunnerInternal::printProfilingInfos().
|
static |
Visits the loop statistics list.
There is an instance of impl::ForLoopStatInfoList per thread that executed a loop.
This method must not be called if loops are currently executing.
Definition at line 290 of file Profiling.cc.
|
staticprivate |
Definition at line 217 of file arccore/src/base/arccore/base/Profiling.h.