# criterion performance measurements

## overview

want to understand this report?

## vector creation

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.2829307210592067e-8 | 1.40168754773811e-8 | 1.6816269723606657e-8 |

Standard deviation | 3.3259504462056247e-9 | 5.724672852963402e-9 | 9.987917499049093e-9 |

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

## vector indexing

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.1771055962305533e-8 | 1.2172294600227386e-8 | 1.2864870065193953e-8 |

Standard deviation | 9.659012550182245e-10 | 1.7218424057494957e-9 | 2.689234204281764e-9 |

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

## vector head/last

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.2564052188143328e-8 | 2.187815167626189e-8 | 4.26016717713156e-8 |

Standard deviation | 2.387077039551236e-9 | 4.488965839225357e-8 | 8.196457256756488e-8 |

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

## vector last

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.181689463040031e-8 | 1.2445604735258938e-8 | 1.4163649534557526e-8 |

Standard deviation | 8.970730572824964e-10 | 3.8086500017983226e-9 | 7.1715192272941844e-9 |

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

## vector slicing

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.2081736742133104e-8 | 1.2612964686120884e-8 | 1.3601436047993547e-8 |

Standard deviation | 1.2107732813664592e-9 | 2.4599972107607017e-9 | 3.5969579523799055e-9 |

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

## vector splitAt

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.1080386670719892e-8 | 1.286835314183321e-8 | 1.9126101624249195e-8 |

Standard deviation | 2.367758378212227e-9 | 1.0215737755743231e-8 | 2.106070828995112e-8 |

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

## vector prepending

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.1934608999160255e-8 | 1.2253804438573932e-8 | 1.2669280837725884e-8 |

Standard deviation | 8.427830734996405e-10 | 1.2704031667417678e-9 | 1.86571428707144e-9 |

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

## vector appending

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.247241369591705e-8 | 1.2974088412657653e-8 | 1.4182549350448742e-8 |

Standard deviation | 1.5438185681351298e-9 | 2.531945687610513e-9 | 4.543347088887041e-9 |

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

## vector concatenation

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.1969351465533927e-8 | 1.2695146002389307e-8 | 1.4472226445135686e-8 |

Standard deviation | 2.1180696698208334e-9 | 3.797647829663137e-9 | 5.986917772756432e-9 |

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

## vector updating

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.2346008281435658e-8 | 1.3059753632797495e-8 | 1.4734072701907812e-8 |

Standard deviation | 1.426750591667994e-9 | 3.477626143899775e-9 | 5.812837688078743e-9 |

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

## vector reverse

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.227759112743792e-8 | 1.3319629963426089e-8 | 1.6139424425411746e-8 |

Standard deviation | 2.1186844727823484e-9 | 5.703634706810918e-9 | 1.118826237316458e-8 |

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

## vector mapping

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.3445796333594202e-8 | 1.4363420179801772e-8 | 1.5666278759713636e-8 |

Standard deviation | 3.009761850561086e-9 | 3.974079452263726e-9 | 6.162314364580518e-9 |

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

## vector zipping

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.2305085133617944e-8 | 1.2957907882444292e-8 | 1.5345246420857622e-8 |

Standard deviation | 1.7123519481974684e-9 | 3.756449596048651e-9 | 7.10640418994447e-9 |

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

## vector searching (elem)

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.1678066226530407e-8 | 1.202626083254947e-8 | 1.2461399104964834e-8 |

Standard deviation | 9.802883979555667e-10 | 1.341439377183179e-9 | 1.7536135817798525e-9 |

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

## vector to list conversion

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

OLS regression | xxx | xxx | xxx |

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

Mean execution time | 1.2006889285514865e-8 | 1.2497961456010996e-8 | 1.3070576269494556e-8 |

Standard deviation | 1.2547456663861639e-9 | 1.6887983493038598e-9 | 2.115723242334905e-9 |

Outlying measurements have severe (0.9542079062206543%) 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.