46 #ifndef MUELU_TIMEMONITOR_HPP 47 #define MUELU_TIMEMONITOR_HPP 50 #include <Teuchos_DefaultComm.hpp> 51 #include <Teuchos_Time.hpp> 52 #include <Teuchos_TimeMonitor.hpp> 78 timer_ = Teuchos::TimeMonitor::getNewTimer(
"MueLu: " + msg);
80 timer_ = rcp(
new Teuchos::Time(
"MueLu: " + msg));
85 timer_->incrementNumCalls();
91 if (
timer_ != Teuchos::null)
109 template <
class TagName>
135 timer_->incrementNumCalls();
141 if (
timer_ != Teuchos::null)
149 RCP<MutuallyExclusiveTime<TagName> >
timer_;
154 #endif // MUELU_TIMEMONITOR_HPP High level timing information (use Teuchos::TimeMonitor::summarize() to print)
void SetVerbLevel(const VerbLevel verbLevel)
Set the verbosity level of this object.
MutuallyExclusiveTimeMonitor()
RCP< Teuchos::Time > timer_
TimeMonitor(const BaseClass &object, const std::string &msg, MsgType timerLevel=Timings0)
Namespace for MueLu classes and methods.
Integrates Teuchos::TimeMonitor with MueLu verbosity system.
MutuallyExclusiveTimeMonitor(const BaseClass &object, const std::string &msg, MsgType timerLevel=Timings0)
Constructor.
int SetProcRankVerbose(int procRank) const
Set proc rank used for printing.
VerbLevel GetVerbLevel() const
Get the verbosity level.
static RCP< MutuallyExclusiveTime< TagName > > getNewTimer(const std::string &name)
Return a new MutuallyExclusiveTime that is registered with the Teuchos::TimeMonitor (for timer summar...
Similar to TimeMonitor, but uses MutuallyExclusiveTime objects.
By default, enabled timers appears in the teuchos time monitor summary. Use this option if you do not...
RCP< MutuallyExclusiveTime< TagName > > timer_
bool IsPrint(MsgType type, int thisProcRankOnly=-1) const
Find out whether we need to print out information for a specific message type.
Timers that are enabled (using Timings0/Timings1) will be printed during the execution.
Base class for MueLu classes.
This class wraps a Teuchos::Time and maintains a mutually exclusive property between wrapped timers...
~MutuallyExclusiveTimeMonitor()
int GetProcRankVerbose() const
Get proc rank used for printing. Do not use this information for any other purpose.