38 #ifndef Foam_profilingPstream_H 39 #define Foam_profilingPstream_H 81 static std::unique_ptr<cpuTime> timer_;
113 suspend_ = bool(timer_);
125 return !suspend_ && bool(timer_);
145 (void) timer_->cpuTimeIncrement();
154 times_[idx] += timer_->cpuTimeIncrement();
173 addTime(timingType::BROADCAST);
191 addTime(timingType::ALL_TO_ALL);
A 1D vector of objects of type <T> with a fixed length <N>.
profilingPstream()
Default construct, enables global timer.
static void addReduceTime()
Add time increment to reduce time.
static void addWaitTime()
Add time increment to wait time.
~profilingPstream()
Destructor, disables global timer.
Timers and values for simple (simplistic) mpi-profiling. The entire class behaves as a singleton...
static timingList & times() noexcept
Access to the timing information.
static void suspend() noexcept
Suspend use of timer (if active)
timingType
Enumeration within times array.
FixedList< double, 7 > timingList
The timing values.
static void addOtherTime()
Add time increment to other time.
static void addAllToAllTime()
Add time increment to allToAll time.
static void addTime(const timingType idx)
Add time increment.
static void addScatterTime()
Add time increment to scatter time.
static void beginTiming()
Update timer prior to measurement.
static void resume() noexcept
Resume use of timer (if previously active)
static void addBroadcastTime()
Add time increment to broadcast time.
static void disable() noexcept
Remove timer for measuring communication activity.
static bool active() noexcept
Timer is active (not suspended and enabled)
static void addGatherTime()
Add time increment to gather time.
static void enable()
Create timer for measuring communication, or reset existing.