Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
ExecutionStatsDumper.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* ExecutionStatsDumper.h (C) 2000-2026 */
9/* */
10/* Writing execution statistics. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_IMPL_EXECUTIONSTATSDUMPER_H
13#define ARCANE_IMPL_EXECUTIONSTATSDUMPER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/TraceAccessor.h"
18
20
21/*---------------------------------------------------------------------------*/
22/*---------------------------------------------------------------------------*/
23
24namespace Arcane
25{
26namespace impl
27{
28 class AcceleratorStatInfoList;
29}
30
32
33/*---------------------------------------------------------------------------*/
34/*---------------------------------------------------------------------------*/
35
42class ARCANE_IMPL_EXPORT ExecutionStatsDumper
43: public TraceAccessor
44{
45 public:
46
47 explicit ExecutionStatsDumper(ITraceMng* trace)
48 : TraceAccessor(trace)
49 {}
50
51 public:
52
53 void dumpStats(ISubDomain* sd, ITimeStats* time_stats);
54
55 private:
56
57 void _dumpProfiling(std::ostream& o);
58 void _dumpProfilingJSON(const String& filename);
59 void _dumpProfilingJSON(JSONWriter& json_writer);
60 void _dumpProfilingTable(ISimpleTableOutput* table);
61};
62
63/*---------------------------------------------------------------------------*/
64/*---------------------------------------------------------------------------*/
65
66} // End namespace Arcane
67
68/*---------------------------------------------------------------------------*/
69/*---------------------------------------------------------------------------*/
70
71#endif
Declarations of Arcane's general types.
Interface representing a simple table output.
Interface of the subdomain manager.
Definition ISubDomain.h:75
Interface managing execution time statistics.
Definition ITimeStats.h:44
TraceAccessor(ITraceMng *m)
Constructs an accessor via the trace manager m.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --