Ion
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ion::analytics::Benchmark Class Reference

The Benchmark class provides types and utilities to make it easier to create performance benchmarks. More...

#include "benchmark.h"

Classes

struct  AccumulatedVariable
 This struct represents accumulated values for a variable. More...
 
struct  Constant
 This struct represents a number that is constant over all samples. More...
 
struct  Descriptor
 This struct stores information about a measurement computed by benchmarking. More...
 
struct  Sample
 This struct represents a single timestamped value of a variable. More...
 
struct  SampledVariable
 This struct represents a variable: a number that may vary over samples, such as a count or timing. More...
 
class  VariableAccumulator
 This class aids in accumulation of a benchmarked AccumulatedVariable. More...
 
class  VariableSampler
 This class aids in creation of a benchmarked SampledVariable. More...
 

Public Member Functions

void AddConstant (const Constant &constant)
 Each of these adds a measurement of a specific type to the benchmark results. More...
 
void AddSampledVariable (const SampledVariable &variable)
 
void AddAccumulatedVariable (const AccumulatedVariable &variable)
 
const std::vector< Constant > & GetConstants () const
 Each of these returns the results for a given type of measurement. More...
 
const std::vector
< SampledVariable > & 
GetSampledVariables () const
 
const std::vector
< AccumulatedVariable > & 
GetAccumulatedVariables () const
 

Static Public Member Functions

static const AccumulatedVariable AccumulateSampledVariable (const SampledVariable &sampled_variable)
 Converts a SampledVariable to an AccumulatedVariable by accumulating all of the samples. More...
 

Detailed Description

The Benchmark class provides types and utilities to make it easier to create performance benchmarks.

It facilitates tracking constant values (such as number of frames) and accumulation of per-sample variables (such as triangles per frames or frames per second).

Definition at line 34 of file benchmark.h.

Member Function Documentation

void ion::analytics::Benchmark::AddAccumulatedVariable ( const AccumulatedVariable variable)
inline

Definition at line 143 of file benchmark.h.

Referenced by ion::analytics::GpuPerformanceTester::GetResults().

void ion::analytics::Benchmark::AddConstant ( const Constant constant)
inline

Each of these adds a measurement of a specific type to the benchmark results.

Definition at line 139 of file benchmark.h.

Referenced by ion::analytics::GpuPerformanceTester::GetResults().

void ion::analytics::Benchmark::AddSampledVariable ( const SampledVariable variable)
inline

Definition at line 140 of file benchmark.h.

const std::vector<AccumulatedVariable>& ion::analytics::Benchmark::GetAccumulatedVariables ( ) const
inline
const std::vector<Constant>& ion::analytics::Benchmark::GetConstants ( ) const
inline

Each of these returns the results for a given type of measurement.

Definition at line 148 of file benchmark.h.

Referenced by ion::analytics::MergeBenchmarks(), ion::analytics::OutputBenchmarkAsCsv(), ion::analytics::OutputBenchmarkAsJson(), and ion::analytics::OutputBenchmarkPretty().

const std::vector<SampledVariable>& ion::analytics::Benchmark::GetSampledVariables ( ) const
inline

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