# criterion performance measurements

## overview

want to understand this report?

## state/10k/mtl

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 8.052800282680221e-6 | 8.055074822592029e-6 | 8.059111005791055e-6 |

Standard deviation | 4.4113564594459345e-9 | 9.814250622066178e-9 | 1.588025865030297e-8 |

Outlying measurements have no (5.916950113378685e-3%) effect on estimated standard deviation.

## state/10k/eff

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 5.147731986595277e-4 | 5.149080147272816e-4 | 5.15117224148511e-4 |

Standard deviation | 3.94284247839459e-7 | 5.6115542791349e-7 | 8.260367680733843e-7 |

Outlying measurements have slight (1.1763038548752835e-2%) effect on estimated standard deviation.

## error/50k/mtl

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 4.2734703057767783e-4 | 4.275532730224737e-4 | 4.2796337948884075e-4 |

Standard deviation | 4.077890957099546e-7 | 9.259971934108735e-7 | 1.524551663332378e-6 |

Outlying measurements have slight (1.1234504132231404e-2%) effect on estimated standard deviation.

## error/50k/eff

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 4.2670602484183205e-4 | 4.268543570465714e-4 | 4.271387935629698e-4 |

Standard deviation | 3.8421431668685437e-7 | 6.618431363666501e-7 | 1.2670500616688849e-6 |

Outlying measurements have slight (1.1234504132231406e-2%) effect on estimated standard deviation.

## st-error/err : st/mtl

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 5.19704867747211e-4 | 5.19895470223931e-4 | 5.201364685914586e-4 |

Standard deviation | 5.618638498169591e-7 | 6.94347760268151e-7 | 8.781775330058834e-7 |

Outlying measurements have slight (1.1763038548752828e-2%) effect on estimated standard deviation.

## st-error/err : st/eff

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 4.874782441065539e-4 | 4.8761797704683746e-4 | 4.8780100018876486e-4 |

Standard deviation | 4.338620140495783e-7 | 5.552434412810797e-7 | 7.677873123451343e-7 |

Outlying measurements have slight (1.1626297577854494e-2%) effect on estimated standard deviation.

## st-error/st : err/mtl

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 4.31552022421545e-4 | 4.316899873929037e-4 | 4.3184668456448555e-4 |

Standard deviation | 3.6276444054365837e-7 | 4.890847036587157e-7 | 7.463389535356484e-7 |

Outlying measurements have slight (1.1362135024441803e-2%) effect on estimated standard deviation.

## st-error/st : err/eff

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 3.858713634412709e-4 | 3.8634348141417077e-4 | 3.8812598617707464e-4 |

Standard deviation | 7.104749667504251e-7 | 2.613626927170299e-6 | 5.816958509235998e-6 |

Outlying measurements have slight (1.0987654320987547e-2%) 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.