criterion performance measurements

overview

want to understand this report?

packDecimal0 (naive)

lower bound estimate upper bound
Mean execution time 0.3637625582300774 0.36387110305658504 0.3640269453608147
Standard deviation 4.890957809956712e-4 6.5880944988561e-4 9.165335721041816e-4

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

packDecimal1 (v0.4.0)

lower bound estimate upper bound
Mean execution time 0.21120865178934256 0.21126614166132138 0.21133192611566706
Standard deviation 2.679647674102224e-4 3.1413264305479264e-4 4.052048081477607e-4

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

packDecimal2

lower bound estimate upper bound
Mean execution time 0.17855269266000914 0.17889282298914125 0.17962727857462082
Standard deviation 1.20952503312259e-3 2.440377065712448e-3 4.087578219328875e-3

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

packDecimal3 (v0.4.2)

lower bound estimate upper bound
Mean execution time 0.16358418775430839 0.16367138458124328 0.1637953002535455
Standard deviation 4.0229685667972256e-4 5.259654325843699e-4 7.624555518455493e-4

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

packDecimal (current)

lower bound estimate upper bound
Mean execution time 0.19486374927393119 0.19494051290384445 0.1949990518175714
Standard deviation 2.444895875161918e-4 3.4081564615509824e-4 5.654609167589637e-4

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

understanding this report

In this report, each function benchmarked by criterion is assigned a section of its own. In each section, we display two charts, each with an x axis that represents measured execution time. These charts are active; if you hover your mouse over data points and annotations, you will see more details.

Under the charts is a small table displaying the mean and standard deviation of the measurements. We use a statistical technique called the bootstrap to provide confidence intervals on our estimates of these values. The bootstrap-derived upper and lower bounds on the mean and standard deviation 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.