Class Dune::XT::Common::Timings

class Dune::XT::Common::Timings

simple inline timing class - User can set as many (even nested) named sections whose total (=system+user) time will be computed across all program instances.\n - Provides csv-conform output of process-averaged runtimes.

Method Dune::XT::Common::Timings::get_timing_data

const TimingData &Dune::XT::Common::Timings::get_timing_data(std::string section_name) const

No documentation provided.

Method Dune::XT::Common::Timings::stop

void Dune::XT::Common::Timings::stop()

No documentation provided.

Method Dune::XT::Common::Timings::start

void Dune::XT::Common::Timings::start(const std::string &section_name)

set this to begin a named section

Method Dune::XT::Common::Timings::stop

long Dune::XT::Common::Timings::stop(const std::string &section_name)

stop named section’s counter

Method Dune::XT::Common::Timings::reset

void Dune::XT::Common::Timings::reset(const std::string &section_name)

set elapsed time back to 0 for section_name

Method Dune::XT::Common::Timings::walltime

TimingData::TimeType Dune::XT::Common::Timings::walltime(std::string section_name) const

get runtime of section in milliseconds

Method Dune::XT::Common::Timings::delta

TimingData::DeltaType Dune::XT::Common::Timings::delta(const std::string &section_name) const

get the full delta array

Method Dune::XT::Common::Timings::output_per_rank

void Dune::XT::Common::Timings::output_per_rank(std::string csv_base) const

creates one file local to each MPI-rank (no global averaging) one single rank-0 file with all combined/averaged measures *

Method Dune::XT::Common::Timings::output_simple

void Dune::XT::Common::Timings::output_simple(std::ostream &out = std::cout) const

outputs walltime only w/o MPI-rank averaging

Method Dune::XT::Common::Timings::output_all_measures

void Dune::XT::Common::Timings::output_all_measures(std::ostream &out = std::cout, MPIHelper::MPICommunicator mpi_comm = Dune::MPIHelper::getCommunicator()) const

output all recorded measures

Note

outputs average, min, max over all MPI processes associated to mpi_comm *

Method Dune::XT::Common::Timings::reset

void Dune::XT::Common::Timings::reset()

stops and resets all timers and data

Method Dune::XT::Common::Timings::set_outputdir

void Dune::XT::Common::Timings::set_outputdir(std::string dir)

No documentation provided.

Constructor Dune::XT::Common::Timings::Timings

Dune::XT::Common::Timings::Timings()

No documentation provided.

Destructor Dune::XT::Common::Timings::~Timings

Dune::XT::Common::Timings::~Timings()

No documentation provided.

Field Dune::XT::Common::Timings::commited_deltas_

int Dune::XT::Common::Timings::commited_deltas_

No documentation provided.

Field Dune::XT::Common::Timings::output_dir_

std::string Dune::XT::Common::Timings::output_dir_

runtime tables etc go there

Field Dune::XT::Common::Timings::known_timers_map_

int Dune::XT::Common::Timings::known_timers_map_

No documentation provided.

Field Dune::XT::Common::Timings::csv_sep_

const std::string Dune::XT::Common::Timings::csv_sep_

No documentation provided.

Field Dune::XT::Common::Timings::mutex_

std::mutex Dune::XT::Common::Timings::mutex_

No documentation provided.