Class GaussianProcessTimer

Class Documentation

class GaussianProcessTimer

This is a structure for keeping track of how long the interpolation methods spend on different parts of the interpolation

_eigenTime keeps track of how much time is spent using Eigen’s linear algebra packages

_iterationTime keeps track of how much time is spent iterating over matrix indices (this is also a catch-all for time that does not obviously fit in the other categories)

_searchTime keeps track of how much time is spent on nearest neighbor searches (when applicable)

_varianceTime keeps track of how much time is spent calculating the variance of our interpolated function value (note: time spent using Eigen packages for this purpose is tallied here, not in _eigenTime)

_totalTime keeps track of how much time total is spent on interpolations

_interpolationCount keeps track of how many points have been interpolated

Public Functions

GaussianProcessTimer()
GaussianProcessTimer(GaussianProcessTimer const&)
GaussianProcessTimer(GaussianProcessTimer&&)
GaussianProcessTimer &operator=(GaussianProcessTimer const&)
GaussianProcessTimer &operator=(GaussianProcessTimer&&)
~GaussianProcessTimer()
void reset()

Resets all of the data members of GaussianProcessTimer to zero.

void start()

Starts the timer for an individual call to an interpolation routine

void addToEigen()

Adds time to _eigenTime

void addToVariance()

Adds time to _varianceTime

void addToSearch()

Adds time to _searchTime

void addToIteration()

Adds time to _iterationTime

void addToTotal(int i)

Adds time to _totalTime and adds counts to _interpolationCount

Parameters
  • [in] i: the number of counts to add to _interpolationCount

void display()

Displays the current values of all times and _interpolationCount