MueLu
Version of the Day
|
Timer to be used in factories. Similar to SubMonitor but adds a timer level by level. More...
#include <MueLu_Monitor.hpp>
Public Member Functions | |
SubFactoryMonitor (const BaseClass &object, const std::string &msg, int levelID, MsgType msgLevel=Runtime1, MsgType timerLevel=Timings1) | |
Constructor. More... | |
SubFactoryMonitor (const BaseClass &object, const std::string &msg, const Level &level, MsgType msgLevel=Runtime1, MsgType timerLevel=Timings1) | |
Constructor. More... | |
~SubFactoryMonitor () | |
Public Member Functions inherited from MueLu::SubMonitor | |
SubMonitor (const BaseClass &object, const std::string &msg, MsgType msgLevel=Runtime1, MsgType timerLevel=Timings1) | |
Constructor. More... | |
SubMonitor (const BaseClass &object, const std::string &msg, const std::string &label, MsgType msgLevel=Runtime1, MsgType timerLevel=Timings1) | |
Constructor. More... | |
~SubMonitor () | |
Public Member Functions inherited from MueLu::BaseClass | |
virtual | ~BaseClass () |
Destructor. More... | |
Public Member Functions inherited from MueLu::VerboseObject | |
VerbLevel | GetVerbLevel () const |
Get the verbosity level. More... | |
void | SetVerbLevel (const VerbLevel verbLevel) |
Set the verbosity level of this object. More... | |
int | GetProcRankVerbose () const |
Get proc rank used for printing. Do not use this information for any other purpose. More... | |
int | SetProcRankVerbose (int procRank) const |
Set proc rank used for printing. More... | |
bool | IsPrint (MsgType type, int thisProcRankOnly=-1) const |
Find out whether we need to print out information for a specific message type. More... | |
Teuchos::FancyOStream & | GetOStream (MsgType type, int thisProcRankOnly=0) const |
Get an output stream for outputting the input message type. More... | |
Teuchos::FancyOStream & | GetBlackHole () const |
VerboseObject () | |
virtual | ~VerboseObject () |
Destructor. More... | |
Public Member Functions inherited from Teuchos::VerboseObject< VerboseObject > | |
VerboseObject (const EVerbosityLevel verbLevel=VERB_DEFAULT, const RCP< FancyOStream > &oStream=Teuchos::null) | |
virtual const VerboseObject & | setVerbLevel (const EVerbosityLevel verbLevel) const |
virtual const VerboseObject & | setOverridingVerbLevel (const EVerbosityLevel verbLevel) const |
virtual EVerbosityLevel | getVerbLevel () const |
TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT RCP< const ParameterList > | getValidVerboseObjectSublist () |
TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT void | setupVerboseObjectSublist (ParameterList *paramList) |
TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT void | readVerboseObjectSublist (ParameterList *paramList, RCP< FancyOStream > *oStream, EVerbosityLevel *verbLevel) |
void | readVerboseObjectSublist (ParameterList *paramList, VerboseObject< ObjectType > *verboseObject) |
Public Member Functions inherited from Teuchos::VerboseObjectBase | |
virtual | ~VerboseObjectBase () |
VerboseObjectBase (const RCP< FancyOStream > &oStream=Teuchos::null) | |
virtual const VerboseObjectBase & | setOStream (const RCP< FancyOStream > &oStream) const |
virtual const VerboseObjectBase & | setOverridingOStream (const RCP< FancyOStream > &oStream) const |
virtual VerboseObjectBase & | setLinePrefix (const std::string &linePrefix) |
virtual RCP< FancyOStream > | getOStream () const |
virtual RCP< FancyOStream > | getOverridingOStream () const |
virtual std::string | getLinePrefix () const |
virtual OSTab | getOSTab (const int tabs=1, const std::string &linePrefix="") const |
Public Member Functions inherited from MueLu::Describable | |
virtual | ~Describable () |
Destructor. More... | |
virtual std::string | ShortClassName () const |
Return the class name of the object, without template parameters and without namespace. More... | |
virtual void | describe (Teuchos::FancyOStream &out_arg, const VerbLevel verbLevel=Default) const |
virtual std::string | description () const |
Return a simple one-line description of this object. More... | |
void | describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const |
Print the object with some verbosity level to an FancyOStream object. More... | |
Public Member Functions inherited from Teuchos::Describable | |
void | describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
LabeledObject () | |
virtual | ~LabeledObject () |
virtual void | setObjectLabel (const std::string &objectLabel) |
virtual std::string | getObjectLabel () const |
DescribableStreamManipulatorState | describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default) |
std::ostream & | operator<< (std::ostream &os, const DescribableStreamManipulatorState &d) |
Private Attributes | |
RCP< TimeMonitor > | levelTimeMonitor_ |
Total time spent on this level in this object and all children. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from MueLu::VerboseObject | |
static void | SetMueLuOStream (const Teuchos::RCP< Teuchos::FancyOStream > &mueluOStream) |
static void | SetMueLuOFileStream (const std::string &filename) |
static Teuchos::RCP < Teuchos::FancyOStream > | GetMueLuOStream () |
static void | SetDefaultVerbLevel (const VerbLevel defaultVerbLevel) |
Set the default (global) verbosity level. More... | |
static VerbLevel | GetDefaultVerbLevel () |
Get the default (global) verbosity level. More... | |
Static Public Member Functions inherited from Teuchos::VerboseObject< VerboseObject > | |
static void | setDefaultVerbLevel (const EVerbosityLevel defaultVerbLevel) |
static EVerbosityLevel | getDefaultVerbLevel () |
Static Public Member Functions inherited from Teuchos::VerboseObjectBase | |
static void | setDefaultOStream (const RCP< FancyOStream > &defaultOStream) |
static RCP< FancyOStream > | getDefaultOStream () |
Static Public Attributes inherited from Teuchos::Describable | |
static const EVerbosityLevel | verbLevel_default |
Protected Member Functions inherited from Teuchos::VerboseObject< VerboseObject > | |
void | initializeVerboseObject (const EVerbosityLevel verbLevel=VERB_DEFAULT, const RCP< FancyOStream > &oStream=Teuchos::null) |
Protected Member Functions inherited from Teuchos::VerboseObjectBase | |
void | initializeVerboseObjectBase (const RCP< FancyOStream > &oStream=Teuchos::null) |
virtual void | informUpdatedVerbosityState () const |
Timer to be used in factories. Similar to SubMonitor but adds a timer level by level.
Times an object and all its children on a level-by-level basis.
This timer is useful for timing just a part of a factory; the keyword sub denotes that this is output from a SubFactoryMonitor. The timer yields output such as
MueLu: SaPFactory: Eigenvalue estimate (sub, total, level=4) 0.01999 (1) 0.02103 (1) 0.02121 (1) 0.02103 (1)
Note that the keyword total denotes timing of the object and its children.
Definition at line 218 of file MueLu_Monitor.hpp.
MueLu::SubFactoryMonitor::SubFactoryMonitor | ( | const BaseClass & | object, |
const std::string & | msg, | ||
int | levelID, | ||
MsgType | msgLevel = Runtime1 , |
||
MsgType | timerLevel = Timings1 |
||
) |
Constructor.
[in] | object | Reference to the class instance that is creating this SubMonitor. |
[in] | msg | String that indicates what the SubMonitor is monitoring, e.g., "Build" |
[in] | levelID | The Level number. |
[in] | msgLevel | Governs whether information should be printed. |
[in] | timerLevel | Governs whether timing information should be gathered. Setting this to NoTimeReport prevents the creation of timers. |
Definition at line 72 of file MueLu_Monitor.cpp.
MueLu::SubFactoryMonitor::SubFactoryMonitor | ( | const BaseClass & | object, |
const std::string & | msg, | ||
const Level & | level, | ||
MsgType | msgLevel = Runtime1 , |
||
MsgType | timerLevel = Timings1 |
||
) |
Constructor.
[in] | object | Reference to the class instance that is creating this SubMonitor. |
[in] | msg | String that indicates what the SubMonitor is monitoring, e.g., "Build" |
[in] | level | The MueLu Level object. |
[in] | msgLevel | Governs whether information should be printed. |
[in] | timerLevel | Governs whether timing information should be gathered. Setting this to NoTimeReport prevents the creation of timers. |
Definition at line 78 of file MueLu_Monitor.cpp.
|
default |
|
private |
Total time spent on this level in this object and all children.
Definition at line 244 of file MueLu_Monitor.hpp.