# criterion performance measurements

## overview

want to understand this report?

## eigenvalues

lower bound | estimate | upper bound | |
---|---|---|---|

OLS regression | xxx | xxx | xxx |

R² goodness-of-fit | xxx | xxx | xxx |

Mean execution time | 1.7385457472413e-8 | 1.835031013982965e-8 | 2.025594657565993e-8 |

Standard deviation | 3.1282790812486034e-9 | 4.693710776331409e-9 | 7.461582394405134e-9 |

Outlying measurements have severe (0.9889248635851954%) effect on estimated standard deviation.

## singularValues

lower bound | estimate | upper bound | |
---|---|---|---|

OLS regression | xxx | xxx | xxx |

R² goodness-of-fit | xxx | xxx | xxx |

Mean execution time | 1.6826225845589296e-8 | 1.7946005660116075e-8 | 2.0023645512318482e-8 |

Standard deviation | 3.8065732744977515e-9 | 5.086762617501991e-9 | 6.7528119439801565e-9 |

Outlying measurements have severe (0.9891478561960904%) effect on estimated standard deviation.

## svd

lower bound | estimate | upper bound | |
---|---|---|---|

OLS regression | xxx | xxx | xxx |

R² goodness-of-fit | xxx | xxx | xxx |

Mean execution time | 1.6221274055690446e-8 | 1.7234160259299247e-8 | 1.8475294982447158e-8 |

Standard deviation | 2.4881510946468646e-9 | 3.4964843827801714e-9 | 5.242763712903595e-9 |

Outlying measurements have severe (0.9818072866034199%) effect on estimated standard deviation.

## thin svd

lower bound | estimate | upper bound | |
---|---|---|---|

OLS regression | xxx | xxx | xxx |

R² goodness-of-fit | xxx | xxx | xxx |

Mean execution time | 1.5200992008592096e-8 | 1.6036688852170936e-8 | 1.762968570110854e-8 |

Standard deviation | 3.0315150245405474e-9 | 3.82028582129978e-9 | 5.2817180591673615e-9 |

Outlying measurements have severe (0.9854833619936364%) effect on estimated standard deviation.

## nullspace

lower bound | estimate | upper bound | |
---|---|---|---|

OLS regression | xxx | xxx | xxx |

R² goodness-of-fit | xxx | xxx | xxx |

Mean execution time | 2.5508530956636188e-8 | 2.723408409043705e-8 | 2.9744327114652017e-8 |

Standard deviation | 4.680099577947827e-9 | 6.313600629360875e-9 | 9.050556218313498e-9 |

Outlying measurements have severe (0.9850256799098543%) effect on estimated standard deviation.

## orthogonal

lower bound | estimate | upper bound | |
---|---|---|---|

OLS regression | xxx | xxx | xxx |

R² goodness-of-fit | xxx | xxx | xxx |

Mean execution time | 2.0414364374562542e-8 | 2.475013778281937e-8 | 3.954756017309537e-8 |

Standard deviation | 5.50738164362259e-9 | 2.2818323488591064e-8 | 4.632165338530646e-8 |

Outlying measurements have severe (0.9965008367265807%) effect on estimated standard deviation.

## determinant

lower bound | estimate | upper bound | |
---|---|---|---|

OLS regression | xxx | xxx | xxx |

R² goodness-of-fit | xxx | xxx | xxx |

Mean execution time | 2.0255712720735736e-8 | 2.285106190872731e-8 | 2.9551073305864862e-8 |

Standard deviation | 8.195782543629916e-9 | 1.2221105180713979e-8 | 1.9597216160046445e-8 |

Outlying measurements have severe (0.9963771382744843%) effect on estimated standard deviation.

## understanding this report

In this report, each function benchmarked by criterion is assigned a section of its own. The charts in each section are active; if you hover your mouse over data points and annotations, you will see more details.

- The chart on the left is a kernel density estimate (also known as a KDE) of time measurements. This graphs the probability of any given time measurement occurring. A spike indicates that a measurement of a particular time occurred; its height indicates how often that measurement was repeated.
- The chart on the right is the raw data from which the kernel
density estimate is built. The
*x*axis indicates the number of loop iterations, while the*y*axis shows measured execution time for the given number of loop iterations. The line behind the values is the linear regression prediction of execution time for a given number of iterations. Ideally, all measurements will be on (or very near) this line.

Under the charts is a small table. The first two rows are the results of a linear regression run on the measurements displayed in the right-hand chart.

*OLS regression*indicates the time estimated for a single loop iteration using an ordinary least-squares regression model. This number is more accurate than the*mean*estimate below it, as it more effectively eliminates measurement overhead and other constant factors.*R² goodness-of-fit*is a measure of how accurately the linear regression model fits the observed measurements. If the measurements are not too noisy, R² should lie between 0.99 and 1, indicating an excellent fit. If the number is below 0.99, something is confounding the accuracy of the linear model.*Mean execution time*and*standard deviation*are statistics calculated from execution time divided by number of iterations.

We use a statistical technique called the bootstrap to provide confidence intervals on our estimates. The bootstrap-derived upper and lower bounds on estimates let you see how accurate we believe those estimates to be. (Hover the mouse over the table headers to see the confidence levels.)

A noisy benchmarking environment can cause some or many measurements to fall far from the mean. These outlying measurements can have a significant inflationary effect on the estimate of the standard deviation. We calculate and display an estimate of the extent to which the standard deviation has been inflated by outliers.