Template Numerical Library version\ main:9e7b0f4
Loading...
Searching...
No Matches
TNL::Benchmarks::Benchmark< Logger > Class Template Reference
Collaboration diagram for TNL::Benchmarks::Benchmark< Logger >:

Public Types

using MetadataColumns = typename Logger::MetadataColumns
using MetadataElement = typename Logger::MetadataElement
using SolverMonitorType = Solvers::IterativeSolverMonitor< double >

Public Member Functions

 Benchmark (std::ostream &output, std::size_t loops=10, int verbose=1)
void addErrorMessage (const std::string &message)
double getBaseTime () const
SolverMonitorTypegetMonitor ()
bool isResettingOn () const
void setDatasetSize (double datasetSize=0.0, double baseTime=0.0)
void setLoops (std::size_t loops)
void setMetadataColumns (const MetadataColumns &metadata)
void setMetadataElement (const typename MetadataColumns::value_type &element)
void setMetadataWidths (const std::map< std::string, int > &widths)
void setMinTime (double minTime)
void setOperation (const std::string &operation, double datasetSize=0.0, double baseTime=0.0)
void setOperationsPerLoop (std::size_t operationsPerLoop)
void setup (const Config::ParameterContainer &parameters)
template<typename Device, typename ComputeFunction>
BenchmarkResult time (const std::string &performer, ComputeFunction &compute)
template<typename Device, typename ComputeFunction>
void time (const std::string &performer, ComputeFunction &compute, BenchmarkResult &result)
template<typename Device, typename ResetFunction, typename ComputeFunction>
BenchmarkResult time (ResetFunction reset, const std::string &performer, ComputeFunction &compute)
template<typename Device, typename ResetFunction, typename ComputeFunction>
void time (ResetFunction reset, const std::string &performer, ComputeFunction &compute, BenchmarkResult &result)

Static Public Member Functions

static void configSetup (Config::ConfigDescription &config)

Protected Attributes

double baseTime = 0.0
double datasetSize = 0.0
Logger logger
std::size_t loops = 1
double minTime = 0.0
SolverMonitorType monitor
std::size_t operations_per_loop = 0
bool reset = true

The documentation for this class was generated from the following files: