Commit 2b7a7ef3 authored by Ubuntu's avatar Ubuntu

benchmark table count 10

parent 3e0e80eb
This diff is collapsed.
This diff is collapsed.
...@@ -160,9 +160,18 @@ func BenchmarkMetric(b *testing.B) { ...@@ -160,9 +160,18 @@ func BenchmarkMetric(b *testing.B) {
}) })
} }
// This metric is per-operation, so divide by b.N and // This metric is per-operation, so divide by b.N and
// report it as a "/op" unit. // report it as a "/op" unit.
b.ReportMetric(float64(compares)/float64(b.N), "compares/op") //b.ReportMetric(float64(compares)/float64(b.N), "compares/op")
// This metric is per-operation, so divide by b.N and
// report it as a "/op" unit.
//b.ReportMetric(float64(compares)/float64(b.N), "compares/op")
// This metric is per-time, so divide by b.Elapsed and
// report it as a "/ns" unit.
//b.ReportMetric(float64(compares)/float64(b.Elapsed().Nanoseconds()), "compares/ns")
} }
func ExampleB_ReportMetric() { func ExampleB_ReportMetric() {
// This reports a custom benchmark metric relevant to a // This reports a custom benchmark metric relevant to a
......
...@@ -21,34 +21,57 @@ ...@@ -21,34 +21,57 @@
<tbody> <tbody>
<tr><th><th colspan='2' class='metric'>time/op<th>delta <tr><th><th colspan='2' class='metric'>time/op<th>delta
<tr class='worse'><td>Repeated/input_size_200-8<td>228µs ± 5%<td>236µs ± 5%<td class='delta'>+3.46%<td class='note'> <tr class='worse'><td>Repeated/input_size_100-8<td>184µs ± 3%<td>190µs ± 3%<td class='delta'>+2.89%<td class='note'>
<tr class='worse'><td>Repeated/input_size_500-8<td>376µs ± 1%<td>400µs ± 3%<td class='delta'>+6.22%<td class='note'> <tr class='worse'><td>Repeated/input_size_200-8<td>234µs ± 4%<td>240µs ± 3%<td class='delta'>+2.70%<td class='note'>
<tr class='worse'><td>Repeated/input_size_1000-8<td>612µs ± 2%<td>634µs ± 1%<td class='delta'>+3.63%<td class='note'> <tr class='worse'><td>Repeated/input_size_500-8<td>386µs ± 4%<td>403µs ± 3%<td class='delta'>+4.27%<td class='note'>
<tr class='worse'><td>Repeated/input_size_2000-8<td>1.06ms ± 1%<td>1.13ms ± 1%<td class='delta'>+6.35%<td class='note'> <tr class='worse'><td>Repeated/input_size_1000-8<td>626µs ± 2%<td>657µs ± 2%<td class='delta'>+5.07%<td class='note'>
<tr class='worse'><td>Repeated/input_size_5000-8<td>2.41ms ± 1%<td>2.64ms ± 3%<td class='delta'>+9.46%<td class='note'> <tr class='worse'><td>Repeated/input_size_2000-8<td>1.09ms ± 2%<td>1.16ms ± 1%<td class='delta'>+5.82%<td class='note'>
<tr class='unchanged'><td>[Geo mean]<td>669µs <td>708µs <td class='delta'>+5.80%<td class='note'> <tr class='worse'><td>Repeated/input_size_5000-8<td>2.48ms ± 1%<td>2.68ms ± 2%<td class='delta'>+8.14%<td class='note'>
<tr class='worse'><td>Repeated/input_size_10000-8<td>4.75ms ± 1%<td>5.26ms ± 2%<td class='delta'>+10.69%<td class='note'>
<tr class='worse'><td>Repeated/input_size_20000-8<td>9.14ms ± 2%<td>10.05ms ± 1%<td class='delta'>+9.90%<td class='note'>
<tr class='unchanged'><td>[Geo mean]<td>1.03ms <td>1.09ms <td class='delta'>+6.15%<td class='note'>
<tr><td>&nbsp;
</tbody>
<tbody>
<tr><th><th colspan='2' class='metric'>speed<th>delta
<tr class='worse'><td>Repeated/input_size_100-8<td>47.7MB/s ± 3%<td>46.4MB/s ± 3%<td class='delta'>−2.80%<td class='note'>
<tr class='worse'><td>Repeated/input_size_200-8<td>75.3MB/s ± 4%<td>73.3MB/s ± 2%<td class='delta'>−2.67%<td class='note'>
<tr class='worse'><td>Repeated/input_size_500-8<td>114MB/s ± 4%<td>109MB/s ± 3%<td class='delta'>−4.11%<td class='note'>
<tr class='worse'><td>Repeated/input_size_1000-8<td>141MB/s ± 2%<td>134MB/s ± 2%<td class='delta'>−4.83%<td class='note'>
<tr class='worse'><td>Repeated/input_size_2000-8<td>161MB/s ± 2%<td>152MB/s ± 1%<td class='delta'>−5.51%<td class='note'>
<tr class='worse'><td>Repeated/input_size_5000-8<td>177MB/s ± 1%<td>164MB/s ± 2%<td class='delta'>−7.52%<td class='note'>
<tr class='worse'><td>Repeated/input_size_10000-8<td>185MB/s ± 1%<td>167MB/s ± 2%<td class='delta'>−9.65%<td class='note'>
<tr class='worse'><td>Repeated/input_size_20000-8<td>192MB/s ± 2%<td>175MB/s ± 1%<td class='delta'>−9.01%<td class='note'>
<tr class='unchanged'><td>[Geo mean]<td>125MB/s <td>117MB/s <td class='delta'>−5.79%<td class='note'>
<tr><td>&nbsp; <tr><td>&nbsp;
</tbody> </tbody>
<tbody> <tbody>
<tr><th><th colspan='2' class='metric'>alloc/op<th>delta <tr><th><th colspan='2' class='metric'>alloc/op<th>delta
<tr class='worse'><td>Repeated/input_size_200-8<td>207kB ± 0%<td>234kB ± 0%<td class='delta'>+13.28%<td class='note'> <tr class='worse'><td>Repeated/input_size_100-8<td>174kB ± 0%<td>188kB ± 0%<td class='delta'>+7.88%<td class='note'>
<tr class='worse'><td>Repeated/input_size_200-8<td>207kB ± 0%<td>234kB ± 0%<td class='delta'>+13.24%<td class='note'>
<tr class='worse'><td>Repeated/input_size_500-8<td>294kB ± 0%<td>368kB ± 0%<td class='delta'>+25.05%<td class='note'> <tr class='worse'><td>Repeated/input_size_500-8<td>294kB ± 0%<td>368kB ± 0%<td class='delta'>+25.05%<td class='note'>
<tr class='worse'><td>Repeated/input_size_1000-8<td>428kB ± 0%<td>567kB ± 0%<td class='delta'>+32.56%<td class='note'> <tr class='worse'><td>Repeated/input_size_1000-8<td>428kB ± 0%<td>567kB ± 0%<td class='delta'>+32.56%<td class='note'>
<tr class='worse'><td>Repeated/input_size_2000-8<td>696kB ± 0%<td>966kB ± 0%<td class='delta'>+38.89%<td class='note'> <tr class='worse'><td>Repeated/input_size_2000-8<td>696kB ± 0%<td>966kB ± 0%<td class='delta'>+38.89%<td class='note'>
<tr class='worse'><td>Repeated/input_size_5000-8<td>1.51MB ± 0%<td>2.20MB ± 0%<td class='delta'>+44.91%<td class='note'> <tr class='worse'><td>Repeated/input_size_5000-8<td>1.51MB ± 0%<td>2.20MB ± 0%<td class='delta'>+44.91%<td class='note'>
<tr class='unchanged'><td>[Geo mean]<td>487kB <td>635kB <td class='delta'>+30.46%<td class='note'> <tr class='worse'><td>Repeated/input_size_10000-8<td>2.87MB ± 0%<td>4.22MB ± 0%<td class='delta'>+47.14%<td class='note'>
<tr class='worse'><td>Repeated/input_size_20000-8<td>5.58MB ± 0%<td>8.29MB ± 0%<td class='delta'>+48.43%<td class='note'>
<tr class='unchanged'><td>[Geo mean]<td>725kB <td>953kB <td class='delta'>+31.43%<td class='note'>
<tr><td>&nbsp; <tr><td>&nbsp;
</tbody> </tbody>
<tbody> <tbody>
<tr><th><th colspan='2' class='metric'>allocs/op<th>delta <tr><th><th colspan='2' class='metric'>allocs/op<th>delta
<tr class='worse'><td>Repeated/input_size_100-8<td>826 ± 0%<td>830 ± 0%<td class='delta'>+0.48%<td class='note'>
<tr class='worse'><td>Repeated/input_size_200-8<td>1.03k ± 0%<td>1.03k ± 0%<td class='delta'>+0.19%<td class='note'> <tr class='worse'><td>Repeated/input_size_200-8<td>1.03k ± 0%<td>1.03k ± 0%<td class='delta'>+0.19%<td class='note'>
<tr class='better'><td>Repeated/input_size_500-8<td>1.65k ± 0%<td>1.65k ± 0%<td class='delta'>−0.10%<td class='note'> <tr class='better'><td>Repeated/input_size_500-8<td>1.65k ± 0%<td>1.65k ± 0%<td class='delta'>−0.08%<td class='note'>
<tr class='better'><td>Repeated/input_size_1000-8<td>2.65k ± 0%<td>2.65k ± 0%<td class='delta'>−0.02%<td class='note'> <tr class='better'><td>Repeated/input_size_1000-8<td>2.65k ± 0%<td>2.65k ± 0%<td class='delta'>−0.01%<td class='note'>
<tr class='worse'><td>Repeated/input_size_2000-8<td>4.67k ± 0%<td>4.67k ± 0%<td class='delta'>+0.03%<td class='note'> <tr class='worse'><td>Repeated/input_size_2000-8<td>4.67k ± 0%<td>4.67k ± 0%<td class='delta'>+0.03%<td class='note'>
<tr class='worse'><td>Repeated/input_size_5000-8<td>10.7k ± 0%<td>10.7k ± 0%<td class='delta'>+0.02%<td class='note'> <tr class='worse'><td>Repeated/input_size_5000-8<td>10.7k ± 0%<td>10.7k ± 0%<td class='delta'>+0.03%<td class='note'>
<tr class='unchanged'><td>[Geo mean]<td>2.96k <td>2.96k <td class='delta'>+0.03%<td class='note'> <tr class='worse'><td>Repeated/input_size_10000-8<td>20.8k ± 0%<td>20.8k ± 0%<td class='delta'>+0.03%<td class='note'>
<tr class='worse'><td>Repeated/input_size_20000-8<td>40.8k ± 0%<td>40.8k ± 0%<td class='delta'>+0.02%<td class='note'>
<tr class='unchanged'><td>[Geo mean]<td>4.46k <td>4.47k <td class='delta'>+0.09%<td class='note'>
<tr><td>&nbsp; <tr><td>&nbsp;
</tbody> </tbody>
......
...@@ -20,11 +20,15 @@ import ( ...@@ -20,11 +20,15 @@ import (
var tableTx = []struct { var tableTx = []struct {
input int input int
}{ }{
{input: 100},
{input: 200}, {input: 200},
{input: 500}, {input: 500},
{input: 1000}, {input: 1000},
{input: 2000}, {input: 2000},
{input: 5000}, {input: 5000},
{input: 10000},
{input: 20000},
// {input: 50000},
} }
func RepeatedEthTx(txl int, b *testing.B) { func RepeatedEthTx(txl int, b *testing.B) {
...@@ -88,10 +92,11 @@ func RepeatedEthTx(txl int, b *testing.B) { ...@@ -88,10 +92,11 @@ func RepeatedEthTx(txl int, b *testing.B) {
txs := make([]*base.TransactionEth, 0, txl) txs := make([]*base.TransactionEth, 0, txl)
for i := 0; i < txl; i++ { for i := 0; i < txl; i++ {
b.SetBytes(88)
txs = append(txs, &base.TransactionEth{Tx: &base.EthTx{Inner: &inner}}) txs = append(txs, &base.TransactionEth{Tx: &base.EthTx{Inner: &inner}})
} }
b.SetBytes(88 * int64(txl))
res, err := c.SendRepeatedEthTx(ctx, &base.RepeatedEthTx{Txs: txs}) res, err := c.SendRepeatedEthTx(ctx, &base.RepeatedEthTx{Txs: txs})
if err != nil { if err != nil {
...@@ -171,10 +176,11 @@ func RepeatedTxEthAsAny(txl int, b *testing.B) { ...@@ -171,10 +176,11 @@ func RepeatedTxEthAsAny(txl int, b *testing.B) {
txs := make([]*base.TransactionEth, 0, txl) txs := make([]*base.TransactionEth, 0, txl)
for i := 0; i < txl; i++ { for i := 0; i < txl; i++ {
b.SetBytes(88)
txs = append(txs, &base.TransactionEth{Tx: &base.EthTx{Inner: &inner}}) txs = append(txs, &base.TransactionEth{Tx: &base.EthTx{Inner: &inner}})
} }
b.SetBytes(88 * int64(txl))
ethTxAsAny, err := anypb.New(&base.RepeatedEthTx{Txs: txs}) ethTxAsAny, err := anypb.New(&base.RepeatedEthTx{Txs: txs})
if err != nil { if err != nil {
b.Fatal(err) b.Fatal(err)
...@@ -204,15 +210,22 @@ func RepeatedTxEthAsAny(txl int, b *testing.B) { ...@@ -204,15 +210,22 @@ func RepeatedTxEthAsAny(txl int, b *testing.B) {
// Small p-values indicate that the two distributions are significantly different. // Small p-values indicate that the two distributions are significantly different.
// If the test indicates that there was no significant change between the two benchmarks (defined as p > 0.05), // If the test indicates that there was no significant change between the two benchmarks (defined as p > 0.05),
// benchstat displays a single ~ instead of the percent change. // benchstat displays a single ~ instead of the percent change.
/*
benchstat -geomean -delta-test utest -html RepeatedEthTx.txt RepeatedTxEthAsAny.txt > utest.html
benchstat -geomean -delta-test ttest -html RepeatedEthTx.txt RepeatedTxEthAsAny.txt > ttest.html
benchstat -geomean -delta-test none -html RepeatedEthTx.txt RepeatedTxEthAsAny.txt > none.html
*/
func BenchmarkRepeated(b *testing.B) { func BenchmarkRepeated(b *testing.B) {
for _, v := range tableTx { for _, v := range tableTx {
b.Run(fmt.Sprintf("input_size_%d", v.input), func(b *testing.B) { b.Run(fmt.Sprintf("input_size_%d", v.input), func(b *testing.B) {
//go test -v -run BenchmarkAnyTxEth -bench BenchmarkRepeated -benchmem -count 10 | tee RepeatedEthTx.txt //go test -v -run BenchmarkAnyTxEth -bench BenchmarkRepeated -benchmem -count 10 | tee RepeatedEthTx.txt
//RepeatedEthTx(v.input, b) //RepeatedEthTx(v.input, b)
//go test -v -run BenchmarkAnyTxEth -bench BenchmarkRepeated -benchmem -count 10 | tee RepeatedTxEthAsAny.txt //go test -v -run BenchmarkAnyTxEth -bench BenchmarkRepeated -benchmem -count 10 | tee RepeatedTxEthAsAny.txt
//benchstat -geomean -delta-test utest -html RepeatedEthTx.txt RepeatedTxEthAsAny.txt
//benchstat -geomean -delta-test ttest -html RepeatedEthTx.txt RepeatedTxEthAsAny.txt
//benchstat -geomean -delta-test none -html RepeatedEthTx.txt RepeatedTxEthAsAny.txt
RepeatedTxEthAsAny(v.input, b) RepeatedTxEthAsAny(v.input, b)
}) })
......
...@@ -21,34 +21,57 @@ ...@@ -21,34 +21,57 @@
<tbody> <tbody>
<tr><th><th colspan='2' class='metric'>time/op<th>delta <tr><th><th colspan='2' class='metric'>time/op<th>delta
<tr class='unchanged'><td>Repeated/input_size_200-8<td>228µs ± 5%<td>236µs ± 5%<td class='nodelta'>~<td class='note'>(p=0.108 n=5+5) <tr class='worse'><td>Repeated/input_size_100-8<td>184µs ± 3%<td>190µs ± 3%<td class='delta'>+2.89%<td class='note'>(p=0.001 n=10+9)
<tr class='worse'><td>Repeated/input_size_500-8<td>376µs ± 1%<td>400µs ± 3%<td class='delta'>+6.22%<td class='note'>(p=0.004 n=5+5) <tr class='worse'><td>Repeated/input_size_200-8<td>234µs ± 4%<td>240µs ± 3%<td class='delta'>+2.70%<td class='note'>(p=0.009 n=10+9)
<tr class='worse'><td>Repeated/input_size_1000-8<td>612µs ± 2%<td>634µs ± 1%<td class='delta'>+3.63%<td class='note'>(p=0.001 n=5+5) <tr class='worse'><td>Repeated/input_size_500-8<td>386µs ± 4%<td>403µs ± 3%<td class='delta'>+4.27%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_2000-8<td>1.06ms ± 1%<td>1.13ms ± 1%<td class='delta'>+6.35%<td class='note'>(p=0.000 n=5+5) <tr class='worse'><td>Repeated/input_size_1000-8<td>626µs ± 2%<td>657µs ± 2%<td class='delta'>+5.07%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_5000-8<td>2.41ms ± 1%<td>2.64ms ± 3%<td class='delta'>+9.46%<td class='note'>(p=0.000 n=5+5) <tr class='worse'><td>Repeated/input_size_2000-8<td>1.09ms ± 2%<td>1.16ms ± 1%<td class='delta'>+5.82%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>669µs <td>708µs <td class='delta'>+5.80%<td class='note'> <tr class='worse'><td>Repeated/input_size_5000-8<td>2.48ms ± 1%<td>2.68ms ± 2%<td class='delta'>+8.14%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_10000-8<td>4.75ms ± 1%<td>5.26ms ± 2%<td class='delta'>+10.69%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_20000-8<td>9.14ms ± 2%<td>10.05ms ± 1%<td class='delta'>+9.90%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>1.03ms <td>1.09ms <td class='delta'>+6.15%<td class='note'>
<tr><td>&nbsp;
</tbody>
<tbody>
<tr><th><th colspan='2' class='metric'>speed<th>delta
<tr class='worse'><td>Repeated/input_size_100-8<td>47.7MB/s ± 3%<td>46.4MB/s ± 3%<td class='delta'>−2.80%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_200-8<td>75.3MB/s ± 4%<td>73.3MB/s ± 2%<td class='delta'>−2.67%<td class='note'>(p=0.010 n=10+9)
<tr class='worse'><td>Repeated/input_size_500-8<td>114MB/s ± 4%<td>109MB/s ± 3%<td class='delta'>−4.11%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_1000-8<td>141MB/s ± 2%<td>134MB/s ± 2%<td class='delta'>−4.83%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_2000-8<td>161MB/s ± 2%<td>152MB/s ± 1%<td class='delta'>−5.51%<td class='note'>(p=0.000 n=10+10)
<tr class='worse'><td>Repeated/input_size_5000-8<td>177MB/s ± 1%<td>164MB/s ± 2%<td class='delta'>−7.52%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_10000-8<td>185MB/s ± 1%<td>167MB/s ± 2%<td class='delta'>−9.65%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_20000-8<td>192MB/s ± 2%<td>175MB/s ± 1%<td class='delta'>−9.01%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>125MB/s <td>117MB/s <td class='delta'>−5.79%<td class='note'>
<tr><td>&nbsp; <tr><td>&nbsp;
</tbody> </tbody>
<tbody> <tbody>
<tr><th><th colspan='2' class='metric'>alloc/op<th>delta <tr><th><th colspan='2' class='metric'>alloc/op<th>delta
<tr class='worse'><td>Repeated/input_size_200-8<td>207kB ± 0%<td>234kB ± 0%<td class='delta'>+13.28%<td class='note'>(p=0.000 n=4+5) <tr class='worse'><td>Repeated/input_size_100-8<td>174kB ± 0%<td>188kB ± 0%<td class='delta'>+7.88%<td class='note'>(p=0.000 n=8+8)
<tr class='worse'><td>Repeated/input_size_500-8<td>294kB ± 0%<td>368kB ± 0%<td class='delta'>+25.05%<td class='note'>(p=0.000 n=5+5) <tr class='worse'><td>Repeated/input_size_200-8<td>207kB ± 0%<td>234kB ± 0%<td class='delta'>+13.24%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_1000-8<td>428kB ± 0%<td>567kB ± 0%<td class='delta'>+32.56%<td class='note'>(p=0.000 n=5+5) <tr class='worse'><td>Repeated/input_size_500-8<td>294kB ± 0%<td>368kB ± 0%<td class='delta'>+25.05%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_2000-8<td>696kB ± 0%<td>966kB ± 0%<td class='delta'>+38.89%<td class='note'>(p=0.000 n=5+5) <tr class='worse'><td>Repeated/input_size_1000-8<td>428kB ± 0%<td>567kB ± 0%<td class='delta'>+32.56%<td class='note'>(p=0.000 n=10+10)
<tr class='worse'><td>Repeated/input_size_5000-8<td>1.51MB ± 0%<td>2.20MB ± 0%<td class='delta'>+44.91%<td class='note'>(p=0.000 n=5+5) <tr class='worse'><td>Repeated/input_size_2000-8<td>696kB ± 0%<td>966kB ± 0%<td class='delta'>+38.89%<td class='note'>(p=0.000 n=9+10)
<tr class='unchanged'><td>[Geo mean]<td>487kB <td>635kB <td class='delta'>+30.46%<td class='note'> <tr class='worse'><td>Repeated/input_size_5000-8<td>1.51MB ± 0%<td>2.20MB ± 0%<td class='delta'>+44.91%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_10000-8<td>2.87MB ± 0%<td>4.22MB ± 0%<td class='delta'>+47.14%<td class='note'>(p=0.000 n=10+10)
<tr class='worse'><td>Repeated/input_size_20000-8<td>5.58MB ± 0%<td>8.29MB ± 0%<td class='delta'>+48.43%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>725kB <td>953kB <td class='delta'>+31.43%<td class='note'>
<tr><td>&nbsp; <tr><td>&nbsp;
</tbody> </tbody>
<tbody> <tbody>
<tr><th><th colspan='2' class='metric'>allocs/op<th>delta <tr><th><th colspan='2' class='metric'>allocs/op<th>delta
<tr class='unchanged'><td>Repeated/input_size_100-8<td>826 ± 0%<td>830 ± 0%<td class='nodelta'>~<td class='note'>(zero variance)
<tr class='unchanged'><td>Repeated/input_size_200-8<td>1.03k ± 0%<td>1.03k ± 0%<td class='nodelta'>~<td class='note'>(zero variance) <tr class='unchanged'><td>Repeated/input_size_200-8<td>1.03k ± 0%<td>1.03k ± 0%<td class='nodelta'>~<td class='note'>(zero variance)
<tr class='better'><td>Repeated/input_size_500-8<td>1.65k ± 0%<td>1.65k ± 0%<td class='delta'>−0.10%<td class='note'>(p=0.003 n=5+4) <tr class='better'><td>Repeated/input_size_500-8<td>1.65k ± 0%<td>1.65k ± 0%<td class='delta'>−0.08%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>Repeated/input_size_1000-8<td>2.65k ± 0%<td>2.65k ± 0%<td class='nodelta'>~<td class='note'>(p=0.070 n=5+5) <tr class='unchanged'><td>Repeated/input_size_1000-8<td>2.65k ± 0%<td>2.65k ± 0%<td class='nodelta'>~<td class='note'>(p=0.196 n=10+10)
<tr class='worse'><td>Repeated/input_size_2000-8<td>4.67k ± 0%<td>4.67k ± 0%<td class='delta'>+0.03%<td class='note'>(p=0.003 n=5+5) <tr class='worse'><td>Repeated/input_size_2000-8<td>4.67k ± 0%<td>4.67k ± 0%<td class='delta'>+0.03%<td class='note'>(p=0.000 n=7+10)
<tr class='worse'><td>Repeated/input_size_5000-8<td>10.7k ± 0%<td>10.7k ± 0%<td class='delta'>+0.02%<td class='note'>(p=0.033 n=5+5) <tr class='worse'><td>Repeated/input_size_5000-8<td>10.7k ± 0%<td>10.7k ± 0%<td class='delta'>+0.03%<td class='note'>(p=0.000 n=10+9)
<tr class='unchanged'><td>[Geo mean]<td>2.96k <td>2.96k <td class='delta'>+0.03%<td class='note'> <tr class='worse'><td>Repeated/input_size_10000-8<td>20.8k ± 0%<td>20.8k ± 0%<td class='delta'>+0.03%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_20000-8<td>40.8k ± 0%<td>40.8k ± 0%<td class='delta'>+0.02%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>4.46k <td>4.47k <td class='delta'>+0.09%<td class='note'>
<tr><td>&nbsp; <tr><td>&nbsp;
</tbody> </tbody>
......
...@@ -21,34 +21,57 @@ ...@@ -21,34 +21,57 @@
<tbody> <tbody>
<tr><th><th colspan='2' class='metric'>time/op<th>delta <tr><th><th colspan='2' class='metric'>time/op<th>delta
<tr class='unchanged'><td>Repeated/input_size_200-8<td>228µs ± 5%<td>236µs ± 5%<td class='nodelta'>~<td class='note'>(p=0.095 n=5+5) <tr class='worse'><td>Repeated/input_size_100-8<td>184µs ± 3%<td>190µs ± 3%<td class='delta'>+2.89%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_500-8<td>376µs ± 1%<td>400µs ± 3%<td class='delta'>+6.22%<td class='note'>(p=0.008 n=5+5) <tr class='worse'><td>Repeated/input_size_200-8<td>234µs ± 4%<td>240µs ± 3%<td class='delta'>+2.70%<td class='note'>(p=0.022 n=10+9)
<tr class='worse'><td>Repeated/input_size_1000-8<td>612µs ± 2%<td>634µs ± 1%<td class='delta'>+3.63%<td class='note'>(p=0.008 n=5+5) <tr class='worse'><td>Repeated/input_size_500-8<td>386µs ± 4%<td>403µs ± 3%<td class='delta'>+4.27%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_2000-8<td>1.06ms ± 1%<td>1.13ms ± 1%<td class='delta'>+6.35%<td class='note'>(p=0.008 n=5+5) <tr class='worse'><td>Repeated/input_size_1000-8<td>626µs ± 2%<td>657µs ± 2%<td class='delta'>+5.07%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_5000-8<td>2.41ms ± 1%<td>2.64ms ± 3%<td class='delta'>+9.46%<td class='note'>(p=0.008 n=5+5) <tr class='worse'><td>Repeated/input_size_2000-8<td>1.09ms ± 2%<td>1.16ms ± 1%<td class='delta'>+5.82%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>669µs <td>708µs <td class='delta'>+5.80%<td class='note'> <tr class='worse'><td>Repeated/input_size_5000-8<td>2.48ms ± 1%<td>2.68ms ± 2%<td class='delta'>+8.14%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_10000-8<td>4.75ms ± 1%<td>5.26ms ± 2%<td class='delta'>+10.69%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_20000-8<td>9.14ms ± 2%<td>10.05ms ± 1%<td class='delta'>+9.90%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>1.03ms <td>1.09ms <td class='delta'>+6.15%<td class='note'>
<tr><td>&nbsp;
</tbody>
<tbody>
<tr><th><th colspan='2' class='metric'>speed<th>delta
<tr class='worse'><td>Repeated/input_size_100-8<td>47.7MB/s ± 3%<td>46.4MB/s ± 3%<td class='delta'>−2.80%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_200-8<td>75.3MB/s ± 4%<td>73.3MB/s ± 2%<td class='delta'>−2.67%<td class='note'>(p=0.022 n=10+9)
<tr class='worse'><td>Repeated/input_size_500-8<td>114MB/s ± 4%<td>109MB/s ± 3%<td class='delta'>−4.11%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_1000-8<td>141MB/s ± 2%<td>134MB/s ± 2%<td class='delta'>−4.83%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_2000-8<td>161MB/s ± 2%<td>152MB/s ± 1%<td class='delta'>−5.51%<td class='note'>(p=0.000 n=10+10)
<tr class='worse'><td>Repeated/input_size_5000-8<td>177MB/s ± 1%<td>164MB/s ± 2%<td class='delta'>−7.52%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_10000-8<td>185MB/s ± 1%<td>167MB/s ± 2%<td class='delta'>−9.65%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_20000-8<td>192MB/s ± 2%<td>175MB/s ± 1%<td class='delta'>−9.01%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>125MB/s <td>117MB/s <td class='delta'>−5.79%<td class='note'>
<tr><td>&nbsp; <tr><td>&nbsp;
</tbody> </tbody>
<tbody> <tbody>
<tr><th><th colspan='2' class='metric'>alloc/op<th>delta <tr><th><th colspan='2' class='metric'>alloc/op<th>delta
<tr class='worse'><td>Repeated/input_size_200-8<td>207kB ± 0%<td>234kB ± 0%<td class='delta'>+13.28%<td class='note'>(p=0.016 n=4+5) <tr class='worse'><td>Repeated/input_size_100-8<td>174kB ± 0%<td>188kB ± 0%<td class='delta'>+7.88%<td class='note'>(p=0.000 n=8+8)
<tr class='worse'><td>Repeated/input_size_500-8<td>294kB ± 0%<td>368kB ± 0%<td class='delta'>+25.05%<td class='note'>(p=0.008 n=5+5) <tr class='worse'><td>Repeated/input_size_200-8<td>207kB ± 0%<td>234kB ± 0%<td class='delta'>+13.24%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_1000-8<td>428kB ± 0%<td>567kB ± 0%<td class='delta'>+32.56%<td class='note'>(p=0.008 n=5+5) <tr class='worse'><td>Repeated/input_size_500-8<td>294kB ± 0%<td>368kB ± 0%<td class='delta'>+25.05%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_2000-8<td>696kB ± 0%<td>966kB ± 0%<td class='delta'>+38.89%<td class='note'>(p=0.008 n=5+5) <tr class='worse'><td>Repeated/input_size_1000-8<td>428kB ± 0%<td>567kB ± 0%<td class='delta'>+32.56%<td class='note'>(p=0.000 n=10+10)
<tr class='worse'><td>Repeated/input_size_5000-8<td>1.51MB ± 0%<td>2.20MB ± 0%<td class='delta'>+44.91%<td class='note'>(p=0.008 n=5+5) <tr class='worse'><td>Repeated/input_size_2000-8<td>696kB ± 0%<td>966kB ± 0%<td class='delta'>+38.89%<td class='note'>(p=0.000 n=9+10)
<tr class='unchanged'><td>[Geo mean]<td>487kB <td>635kB <td class='delta'>+30.46%<td class='note'> <tr class='worse'><td>Repeated/input_size_5000-8<td>1.51MB ± 0%<td>2.20MB ± 0%<td class='delta'>+44.91%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_10000-8<td>2.87MB ± 0%<td>4.22MB ± 0%<td class='delta'>+47.14%<td class='note'>(p=0.000 n=10+10)
<tr class='worse'><td>Repeated/input_size_20000-8<td>5.58MB ± 0%<td>8.29MB ± 0%<td class='delta'>+48.43%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>725kB <td>953kB <td class='delta'>+31.43%<td class='note'>
<tr><td>&nbsp; <tr><td>&nbsp;
</tbody> </tbody>
<tbody> <tbody>
<tr><th><th colspan='2' class='metric'>allocs/op<th>delta <tr><th><th colspan='2' class='metric'>allocs/op<th>delta
<tr class='worse'><td>Repeated/input_size_200-8<td>1.03k ± 0%<td>1.03k ± 0%<td class='delta'>+0.19%<td class='note'>(p=0.016 n=4+5) <tr class='worse'><td>Repeated/input_size_100-8<td>826 ± 0%<td>830 ± 0%<td class='delta'>+0.48%<td class='note'>(p=0.000 n=8+10)
<tr class='better'><td>Repeated/input_size_500-8<td>1.65k ± 0%<td>1.65k ± 0%<td class='delta'>−0.10%<td class='note'>(p=0.000 n=5+4) <tr class='worse'><td>Repeated/input_size_200-8<td>1.03k ± 0%<td>1.03k ± 0%<td class='delta'>+0.19%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>Repeated/input_size_1000-8<td>2.65k ± 0%<td>2.65k ± 0%<td class='nodelta'>~<td class='note'>(p=0.167 n=5+5) <tr class='better'><td>Repeated/input_size_500-8<td>1.65k ± 0%<td>1.65k ± 0%<td class='delta'>−0.08%<td class='note'>(p=0.000 n=10+10)
<tr class='worse'><td>Repeated/input_size_2000-8<td>4.67k ± 0%<td>4.67k ± 0%<td class='delta'>+0.03%<td class='note'>(p=0.008 n=5+5) <tr class='unchanged'><td>Repeated/input_size_1000-8<td>2.65k ± 0%<td>2.65k ± 0%<td class='nodelta'>~<td class='note'>(p=0.370 n=10+10)
<tr class='unchanged'><td>Repeated/input_size_5000-8<td>10.7k ± 0%<td>10.7k ± 0%<td class='nodelta'>~<td class='note'>(p=0.071 n=5+5) <tr class='worse'><td>Repeated/input_size_2000-8<td>4.67k ± 0%<td>4.67k ± 0%<td class='delta'>+0.03%<td class='note'>(p=0.000 n=7+10)
<tr class='unchanged'><td>[Geo mean]<td>2.96k <td>2.96k <td class='delta'>+0.03%<td class='note'> <tr class='worse'><td>Repeated/input_size_5000-8<td>10.7k ± 0%<td>10.7k ± 0%<td class='delta'>+0.03%<td class='note'>(p=0.000 n=10+9)
<tr class='worse'><td>Repeated/input_size_10000-8<td>20.8k ± 0%<td>20.8k ± 0%<td class='delta'>+0.03%<td class='note'>(p=0.000 n=9+10)
<tr class='worse'><td>Repeated/input_size_20000-8<td>40.8k ± 0%<td>40.8k ± 0%<td class='delta'>+0.02%<td class='note'>(p=0.000 n=10+10)
<tr class='unchanged'><td>[Geo mean]<td>4.46k <td>4.47k <td class='delta'>+0.09%<td class='note'>
<tr><td>&nbsp; <tr><td>&nbsp;
</tbody> </tbody>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment