Peano
Loading...
Searching...
No Matches
Statistics.h
Go to the documentation of this file.
1
// This file is part of the Peano project. For conditions of distribution and
2
// use, please see the copyright notice at www.peano-framework.org
3
#pragma once
4
5
6
#include "
tarch/mpi/mpi.h
"
7
#include "
tarch/logging/Log.h
"
8
#include "
tarch/mpi/Rank.h
"
9
10
11
#include "
State.h
"
12
13
14
namespace
toolbox
{
15
namespace
loadbalancing {
16
class
Statistics;
17
}
18
}
19
20
21
30
class
toolbox::loadbalancing::Statistics
{
31
public
:
35
Statistics
();
36
37
std::string
toString
()
const
;
38
48
void
waitForGlobalDataExchange
();
49
50
void
updateGlobalView
();
51
52
int
getLocalNumberOfInnerUnrefinedCells
()
const
;
53
int
getGlobalNumberOfInnerUnrefinedCells
()
const
;
54
int
getGlobalNumberOfRanksWithEnabledLoadBalancing
()
const
;
55
int
getGlobalNumberOfTrees
()
const
;
56
int
getNumberOfStateUpdatesWithoutAnySplit
()
const
;
57
int
getMaximumTreesPerRank
()
const
;
58
59
void
incLocalNumberOfSplits
(
int
delta=1 );
60
61
void
notifyOfStateChange
(
State
state
);
62
68
bool
hasConsistentViewOfWorld
()
const
;
69
70
private
:
71
static
tarch::logging::Log
_log
;
72
76
int
_localNumberOfInnerUnrefinedCells
;
77
81
int
_globalNumberOfInnerUnrefinedCells
;
82
83
int
_globalNumberOfTrees
;
84
85
int
_globalNumberOfRanksWithEnabledLoadBalancing
;
86
87
bool
_localLoadBalancingEnabled
;
88
94
int
_localNumberOfSplits
;
95
100
int
_globalNumberOfSplits
;
101
102
int
_numberOfStateUpdatesWithoutAnySplit
;
103
104
int
_maximumTreesPerRank
;
105
106
bool
_viewConsistent
;
107
108
#ifdef Parallel
112
MPI_Request*
_globalSumRequest
;
113
MPI_Request*
_globalNumberOfSplitsRequest
;
114
MPI_Request*
_globalNumberOfTreesRequest
;
115
MPI_Request*
_globalNumberOfRanksWithEnabledLoadBalancingRequest
;
116
MPI_Request*
_globalMaximumTreesPerRankRequest
;
117
#endif
118
119
int
_globalNumberOfInnerUnrefinedCellsBufferIn
;
120
int
_globalNumberOfInnerUnrefinedCellsBufferOut
;
121
int
_numberOfSplitsIn
;
122
int
_numberOfSplitsOut
;
123
int
_numberOfTreesIn
;
124
int
_numberOfTreesOut
;
125
int
_numberOfRanksWithEnabledLoadBalancingIn
;
126
int
_numberOfRanksWithEnabledLoadBalancingOut
;
127
int
_numberOfMaximumTreesOut
;
128
int
_maximumTreesIn
;
129
130
};
131
132
state
AutomatonState state
Definition
GridTraversalEventGeneratorTest.cpp:146
Log.h
Rank.h
State.h
tarch::logging::Log
Log Device.
Definition
Log.h:516
toolbox::loadbalancing::Statistics
Statistics helper routine for load balancing.
Definition
Statistics.h:30
toolbox::loadbalancing::Statistics::_localNumberOfSplits
int _localNumberOfSplits
This is my local accumulator where I keep track of how often I did split in this iteration.
Definition
Statistics.h:94
toolbox::loadbalancing::Statistics::_numberOfMaximumTreesOut
int _numberOfMaximumTreesOut
Definition
Statistics.h:127
toolbox::loadbalancing::Statistics::getMaximumTreesPerRank
int getMaximumTreesPerRank() const
Definition
Statistics.cpp:208
toolbox::loadbalancing::Statistics::_globalNumberOfInnerUnrefinedCells
int _globalNumberOfInnerUnrefinedCells
Required for local stats, but also replicated in cell count metrics.
Definition
Statistics.h:81
toolbox::loadbalancing::Statistics::_numberOfTreesIn
int _numberOfTreesIn
Definition
Statistics.h:123
toolbox::loadbalancing::Statistics::getGlobalNumberOfRanksWithEnabledLoadBalancing
int getGlobalNumberOfRanksWithEnabledLoadBalancing() const
Definition
Statistics.cpp:198
toolbox::loadbalancing::Statistics::hasConsistentViewOfWorld
bool hasConsistentViewOfWorld() const
If the stats spot some inconsistencies (local number of cells is bigger than global number,...
Definition
Statistics.cpp:218
toolbox::loadbalancing::Statistics::_globalNumberOfInnerUnrefinedCellsBufferIn
int _globalNumberOfInnerUnrefinedCellsBufferIn
Definition
Statistics.h:119
toolbox::loadbalancing::Statistics::getGlobalNumberOfInnerUnrefinedCells
int getGlobalNumberOfInnerUnrefinedCells() const
Definition
Statistics.cpp:193
toolbox::loadbalancing::Statistics::_numberOfSplitsIn
int _numberOfSplitsIn
Definition
Statistics.h:121
toolbox::loadbalancing::Statistics::_maximumTreesPerRank
int _maximumTreesPerRank
Definition
Statistics.h:104
toolbox::loadbalancing::Statistics::_globalNumberOfRanksWithEnabledLoadBalancingRequest
MPI_Request * _globalNumberOfRanksWithEnabledLoadBalancingRequest
Definition
Statistics.h:115
toolbox::loadbalancing::Statistics::_viewConsistent
bool _viewConsistent
Definition
Statistics.h:106
toolbox::loadbalancing::Statistics::_numberOfStateUpdatesWithoutAnySplit
int _numberOfStateUpdatesWithoutAnySplit
Definition
Statistics.h:102
toolbox::loadbalancing::Statistics::getGlobalNumberOfTrees
int getGlobalNumberOfTrees() const
Definition
Statistics.cpp:203
toolbox::loadbalancing::Statistics::_numberOfTreesOut
int _numberOfTreesOut
Definition
Statistics.h:124
toolbox::loadbalancing::Statistics::_globalNumberOfSplitsRequest
MPI_Request * _globalNumberOfSplitsRequest
Definition
Statistics.h:113
toolbox::loadbalancing::Statistics::_globalNumberOfInnerUnrefinedCellsBufferOut
int _globalNumberOfInnerUnrefinedCellsBufferOut
Definition
Statistics.h:120
toolbox::loadbalancing::Statistics::_maximumTreesIn
int _maximumTreesIn
Definition
Statistics.h:128
toolbox::loadbalancing::Statistics::_globalNumberOfSplits
int _globalNumberOfSplits
Lags behind global number by one iteration in an MPI world as data will arrive with one iteration del...
Definition
Statistics.h:100
toolbox::loadbalancing::Statistics::_globalNumberOfRanksWithEnabledLoadBalancing
int _globalNumberOfRanksWithEnabledLoadBalancing
Definition
Statistics.h:85
toolbox::loadbalancing::Statistics::_localLoadBalancingEnabled
bool _localLoadBalancingEnabled
Definition
Statistics.h:87
toolbox::loadbalancing::Statistics::_numberOfRanksWithEnabledLoadBalancingIn
int _numberOfRanksWithEnabledLoadBalancingIn
Definition
Statistics.h:125
toolbox::loadbalancing::Statistics::_globalNumberOfTreesRequest
MPI_Request * _globalNumberOfTreesRequest
Definition
Statistics.h:114
toolbox::loadbalancing::Statistics::getLocalNumberOfInnerUnrefinedCells
int getLocalNumberOfInnerUnrefinedCells() const
Definition
Statistics.cpp:188
toolbox::loadbalancing::Statistics::_numberOfRanksWithEnabledLoadBalancingOut
int _numberOfRanksWithEnabledLoadBalancingOut
Definition
Statistics.h:126
toolbox::loadbalancing::Statistics::_globalSumRequest
MPI_Request * _globalSumRequest
Required for local stats, but also replicated in cell count metrics.
Definition
Statistics.h:112
toolbox::loadbalancing::Statistics::_log
static tarch::logging::Log _log
Definition
Statistics.h:71
toolbox::loadbalancing::Statistics::updateGlobalView
void updateGlobalView()
Definition
Statistics.cpp:78
toolbox::loadbalancing::Statistics::toString
std::string toString() const
Definition
Statistics.cpp:34
toolbox::loadbalancing::Statistics::_localNumberOfInnerUnrefinedCells
int _localNumberOfInnerUnrefinedCells
Required for local stats, but also replicated in cell count metrics.
Definition
Statistics.h:76
toolbox::loadbalancing::Statistics::incLocalNumberOfSplits
void incLocalNumberOfSplits(int delta=1)
Definition
Statistics.cpp:182
toolbox::loadbalancing::Statistics::waitForGlobalDataExchange
void waitForGlobalDataExchange()
Typically called by.
Definition
Statistics.cpp:53
toolbox::loadbalancing::Statistics::getNumberOfStateUpdatesWithoutAnySplit
int getNumberOfStateUpdatesWithoutAnySplit() const
Definition
Statistics.cpp:213
toolbox::loadbalancing::Statistics::_globalMaximumTreesPerRankRequest
MPI_Request * _globalMaximumTreesPerRankRequest
Definition
Statistics.h:116
toolbox::loadbalancing::Statistics::_globalNumberOfTrees
int _globalNumberOfTrees
Definition
Statistics.h:83
toolbox::loadbalancing::Statistics::notifyOfStateChange
void notifyOfStateChange(State state)
Definition
Statistics.cpp:29
toolbox::loadbalancing::Statistics::Statistics
Statistics()
Set all the MPI requests to nullptr.
Definition
Statistics.cpp:10
toolbox::loadbalancing::Statistics::_numberOfSplitsOut
int _numberOfSplitsOut
Definition
Statistics.h:122
mpi.h
toolbox::loadbalancing::State
State
State descriptor of load balancing.
Definition
State.h:22
toolbox
Definition
InterpolationRestriction.h:10
src
toolbox
loadbalancing
Statistics.h
Generated on Fri Apr 11 2025 10:18:04 for Peano by
1.10.0