2026-03-06T11:03:45Z | rustc 1.90.0 (1159e78c4 2025-09-14) | Darwin 24.6.0
tree_bench (sequential baseline)(96)
insert (single)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 1,000 |
659.4 µs1.52 Melem/s |
734.4 µs1.36 Melem/s |
705.9 µs1.42 Melem/s |
701.6 µs1.43 Melem/s |
| 10,000 |
8.635 ms1.16 Melem/s |
9.609 ms1.04 Melem/s |
9.204 ms1.09 Melem/s |
9.170 ms1.09 Melem/s |
| 100,000 |
109.960 ms909.42 Kelem/s |
128.927 ms775.63 Kelem/s |
116.366 ms859.36 Kelem/s |
116.243 ms860.27 Kelem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 1,000 |
553.9 µs1.81 Melem/s |
597.6 µs1.67 Melem/s |
580.6 µs1.72 Melem/s |
580.2 µs1.72 Melem/s |
| 10,000 |
7.580 ms1.32 Melem/s |
7.786 ms1.28 Melem/s |
7.700 ms1.30 Melem/s |
7.693 ms1.30 Melem/s |
| 100,000 |
95.214 ms1.05 Melem/s |
97.040 ms1.03 Melem/s |
95.925 ms1.04 Melem/s |
95.929 ms1.04 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 1,000 |
588.3 µs1.70 Melem/s |
611.6 µs1.64 Melem/s |
598.3 µs1.67 Melem/s |
598.2 µs1.67 Melem/s |
| 10,000 |
7.670 ms1.30 Melem/s |
7.879 ms1.27 Melem/s |
7.784 ms1.28 Melem/s |
7.773 ms1.29 Melem/s |
| 100,000 |
96.644 ms1.03 Melem/s |
108.351 ms922.93 Kelem/s |
97.388 ms1.03 Melem/s |
97.510 ms1.03 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 1,000 |
644.4 µs1.55 Melem/s |
687.0 µs1.46 Melem/s |
671.3 µs1.49 Melem/s |
670.9 µs1.49 Melem/s |
| 10,000 |
8.811 ms1.13 Melem/s |
9.088 ms1.10 Melem/s |
8.972 ms1.11 Melem/s |
8.961 ms1.12 Melem/s |
| 100,000 |
111.837 ms894.16 Kelem/s |
119.017 ms840.22 Kelem/s |
112.988 ms885.05 Kelem/s |
113.545 ms880.71 Kelem/s |
insert_many (batch)(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
129.3 µs7.73 Melem/s |
136.3 µs7.34 Melem/s |
132.9 µs7.52 Melem/s |
132.7 µs7.53 Melem/s |
| 10,000 |
1.312 ms7.62 Melem/s |
1.373 ms7.28 Melem/s |
1.341 ms7.45 Melem/s |
1.340 ms7.46 Melem/s |
| 100,000 |
13.273 ms7.53 Melem/s |
13.690 ms7.30 Melem/s |
13.505 ms7.40 Melem/s |
13.498 ms7.41 Melem/s |
| 1,000,000 |
137.768 ms7.26 Melem/s |
142.577 ms7.01 Melem/s |
139.230 ms7.18 Melem/s |
139.288 ms7.18 Melem/s |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
60.1 µs16.63 Melem/s |
63.7 µs15.69 Melem/s |
61.8 µs16.19 Melem/s |
61.8 µs16.18 Melem/s |
| 10,000 |
613.3 µs16.31 Melem/s |
641.0 µs15.60 Melem/s |
623.4 µs16.04 Melem/s |
623.2 µs16.05 Melem/s |
| 100,000 |
6.156 ms16.24 Melem/s |
6.323 ms15.81 Melem/s |
6.242 ms16.02 Melem/s |
6.240 ms16.03 Melem/s |
| 1,000,000 |
63.510 ms15.75 Melem/s |
65.877 ms15.18 Melem/s |
64.555 ms15.49 Melem/s |
64.528 ms15.50 Melem/s |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
40.0 µs25.02 Melem/s |
42.6 µs23.45 Melem/s |
41.8 µs23.91 Melem/s |
41.7 µs23.96 Melem/s |
| 10,000 |
410.7 µs24.35 Melem/s |
429.2 µs23.30 Melem/s |
419.0 µs23.87 Melem/s |
419.0 µs23.87 Melem/s |
| 100,000 |
4.108 ms24.34 Melem/s |
4.230 ms23.64 Melem/s |
4.175 ms23.95 Melem/s |
4.173 ms23.96 Melem/s |
| 1,000,000 |
42.413 ms23.58 Melem/s |
43.386 ms23.05 Melem/s |
42.875 ms23.32 Melem/s |
42.865 ms23.33 Melem/s |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
31.4 µs31.87 Melem/s |
34.4 µs29.09 Melem/s |
32.6 µs30.65 Melem/s |
32.7 µs30.60 Melem/s |
| 10,000 |
315.4 µs31.70 Melem/s |
347.6 µs28.77 Melem/s |
325.2 µs30.75 Melem/s |
326.4 µs30.64 Melem/s |
| 100,000 |
3.207 ms31.19 Melem/s |
3.289 ms30.40 Melem/s |
3.255 ms30.72 Melem/s |
3.253 ms30.74 Melem/s |
| 1,000,000 |
33.750 ms29.63 Melem/s |
36.328 ms27.53 Melem/s |
34.398 ms29.07 Melem/s |
34.482 ms29.00 Melem/s |
insert_many (chunked, 100/batch)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 10,000 |
1.345 ms7.43 Melem/s |
1.426 ms7.01 Melem/s |
1.402 ms7.13 Melem/s |
1.401 ms7.14 Melem/s |
| 100,000 |
14.117 ms7.08 Melem/s |
14.528 ms6.88 Melem/s |
14.327 ms6.98 Melem/s |
14.324 ms6.98 Melem/s |
| 1,000,000 |
147.093 ms6.80 Melem/s |
150.961 ms6.62 Melem/s |
148.918 ms6.72 Melem/s |
148.975 ms6.71 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 10,000 |
662.1 µs15.10 Melem/s |
734.0 µs13.62 Melem/s |
684.6 µs14.61 Melem/s |
685.1 µs14.60 Melem/s |
| 100,000 |
6.962 ms14.36 Melem/s |
8.313 ms12.03 Melem/s |
7.067 ms14.15 Melem/s |
7.076 ms14.13 Melem/s |
| 1,000,000 |
73.423 ms13.62 Melem/s |
75.840 ms13.19 Melem/s |
74.399 ms13.44 Melem/s |
74.358 ms13.45 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 10,000 |
480.6 µs20.81 Melem/s |
495.0 µs20.20 Melem/s |
488.2 µs20.48 Melem/s |
487.9 µs20.49 Melem/s |
| 100,000 |
4.973 ms20.11 Melem/s |
5.127 ms19.50 Melem/s |
5.055 ms19.78 Melem/s |
5.053 ms19.79 Melem/s |
| 1,000,000 |
53.033 ms18.86 Melem/s |
54.915 ms18.21 Melem/s |
53.969 ms18.53 Melem/s |
53.941 ms18.54 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 10,000 |
410.3 µs24.37 Melem/s |
450.9 µs22.18 Melem/s |
417.8 µs23.94 Melem/s |
421.0 µs23.75 Melem/s |
| 100,000 |
4.307 ms23.22 Melem/s |
4.686 ms21.34 Melem/s |
4.416 ms22.64 Melem/s |
4.441 ms22.52 Melem/s |
| 1,000,000 |
47.706 ms20.96 Melem/s |
51.004 ms19.61 Melem/s |
48.626 ms20.56 Melem/s |
48.815 ms20.49 Melem/s |
insert_many (chunked, 1000/batch)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 10,000 |
1.315 ms7.61 Melem/s |
1.387 ms7.21 Melem/s |
1.353 ms7.39 Melem/s |
1.352 ms7.40 Melem/s |
| 100,000 |
13.517 ms7.40 Melem/s |
13.819 ms7.24 Melem/s |
13.654 ms7.32 Melem/s |
13.648 ms7.33 Melem/s |
| 1,000,000 |
137.390 ms7.28 Melem/s |
140.038 ms7.14 Melem/s |
138.881 ms7.20 Melem/s |
138.801 ms7.20 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 10,000 |
600.4 µs16.66 Melem/s |
643.3 µs15.54 Melem/s |
627.6 µs15.93 Melem/s |
627.4 µs15.94 Melem/s |
| 100,000 |
6.273 ms15.94 Melem/s |
6.549 ms15.27 Melem/s |
6.344 ms15.76 Melem/s |
6.350 ms15.75 Melem/s |
| 1,000,000 |
64.221 ms15.57 Melem/s |
66.070 ms15.14 Melem/s |
65.119 ms15.36 Melem/s |
65.106 ms15.36 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 10,000 |
408.4 µs24.49 Melem/s |
425.9 µs23.48 Melem/s |
420.2 µs23.80 Melem/s |
419.7 µs23.83 Melem/s |
| 100,000 |
4.135 ms24.19 Melem/s |
4.343 ms23.03 Melem/s |
4.229 ms23.65 Melem/s |
4.225 ms23.67 Melem/s |
| 1,000,000 |
43.074 ms23.22 Melem/s |
43.945 ms22.76 Melem/s |
43.514 ms22.98 Melem/s |
43.520 ms22.98 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 10,000 |
327.2 µs30.56 Melem/s |
361.2 µs27.69 Melem/s |
335.6 µs29.80 Melem/s |
336.8 µs29.69 Melem/s |
| 100,000 |
3.325 ms30.07 Melem/s |
3.565 ms28.05 Melem/s |
3.395 ms29.45 Melem/s |
3.410 ms29.33 Melem/s |
| 1,000,000 |
35.120 ms28.47 Melem/s |
37.732 ms26.50 Melem/s |
35.894 ms27.86 Melem/s |
36.063 ms27.73 Melem/s |
insert_many (incremental, half pre-filled)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 10,000 |
660.8 µs7.57 Melem/s |
713.0 µs7.01 Melem/s |
678.1 µs7.37 Melem/s |
677.8 µs7.38 Melem/s |
| 100,000 |
6.716 ms7.44 Melem/s |
6.883 ms7.26 Melem/s |
6.807 ms7.35 Melem/s |
6.800 ms7.35 Melem/s |
| 1,000,000 |
69.590 ms7.18 Melem/s |
72.008 ms6.94 Melem/s |
70.201 ms7.12 Melem/s |
70.212 ms7.12 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 10,000 |
301.8 µs16.57 Melem/s |
321.7 µs15.54 Melem/s |
313.0 µs15.98 Melem/s |
313.0 µs15.97 Melem/s |
| 100,000 |
3.080 ms16.24 Melem/s |
3.185 ms15.70 Melem/s |
3.130 ms15.98 Melem/s |
3.130 ms15.97 Melem/s |
| 1,000,000 |
31.825 ms15.71 Melem/s |
32.980 ms15.16 Melem/s |
32.433 ms15.42 Melem/s |
32.401 ms15.43 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 10,000 |
200.8 µs24.90 Melem/s |
208.7 µs23.96 Melem/s |
206.2 µs24.25 Melem/s |
206.0 µs24.28 Melem/s |
| 100,000 |
2.023 ms24.72 Melem/s |
2.092 ms23.91 Melem/s |
2.057 ms24.30 Melem/s |
2.055 ms24.33 Melem/s |
| 1,000,000 |
21.277 ms23.50 Melem/s |
22.377 ms22.34 Melem/s |
21.663 ms23.08 Melem/s |
21.668 ms23.08 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 10,000 |
161.4 µs30.98 Melem/s |
176.3 µs28.36 Melem/s |
165.3 µs30.25 Melem/s |
166.1 µs30.10 Melem/s |
| 100,000 |
1.617 ms30.93 Melem/s |
1.749 ms28.59 Melem/s |
1.645 ms30.39 Melem/s |
1.651 ms30.29 Melem/s |
| 1,000,000 |
17.070 ms29.29 Melem/s |
18.564 ms26.93 Melem/s |
17.412 ms28.72 Melem/s |
17.459 ms28.64 Melem/s |
generate_proof(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
137.2 ns |
153.0 ns |
146.6 ns |
147.0 ns |
| 10,000 |
168.7 ns |
182.9 ns |
176.5 ns |
176.3 ns |
| 100,000 |
191.2 ns |
203.3 ns |
199.4 ns |
199.2 ns |
| 1,000,000 |
209.1 ns |
223.7 ns |
214.8 ns |
215.3 ns |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
196.4 ns |
212.6 ns |
202.7 ns |
202.1 ns |
| 10,000 |
216.4 ns |
234.1 ns |
223.1 ns |
222.5 ns |
| 100,000 |
235.8 ns |
262.1 ns |
243.5 ns |
242.7 ns |
| 1,000,000 |
248.3 ns |
265.4 ns |
256.3 ns |
256.0 ns |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
338.1 ns |
416.2 ns |
350.2 ns |
354.7 ns |
| 10,000 |
353.1 ns |
404.4 ns |
365.5 ns |
369.3 ns |
| 100,000 |
369.0 ns |
426.5 ns |
382.2 ns |
385.2 ns |
| 1,000,000 |
380.9 ns |
464.2 ns |
395.8 ns |
400.3 ns |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
625.2 ns |
744.0 ns |
671.3 ns |
674.8 ns |
| 10,000 |
661.5 ns |
786.9 ns |
696.9 ns |
700.6 ns |
| 100,000 |
677.8 ns |
906.2 ns |
758.7 ns |
763.6 ns |
| 1,000,000 |
694.9 ns |
959.3 ns |
769.1 ns |
785.3 ns |
verify_proof(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
1.2 µs |
1.3 µs |
1.3 µs |
1.3 µs |
| 10,000 |
1.7 µs |
2.0 µs |
1.8 µs |
1.8 µs |
| 100,000 |
2.1 µs |
2.2 µs |
2.1 µs |
2.1 µs |
| 1,000,000 |
2.5 µs |
2.6 µs |
2.5 µs |
2.5 µs |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
871.8 ns |
981.5 ns |
883.2 ns |
883.9 ns |
| 10,000 |
1.2 µs |
1.2 µs |
1.2 µs |
1.2 µs |
| 100,000 |
1.5 µs |
1.6 µs |
1.5 µs |
1.5 µs |
| 1,000,000 |
1.7 µs |
1.8 µs |
1.8 µs |
1.8 µs |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
903.9 ns |
964.6 ns |
941.2 ns |
940.5 ns |
| 10,000 |
1.2 µs |
1.2 µs |
1.2 µs |
1.2 µs |
| 100,000 |
1.5 µs |
1.6 µs |
1.5 µs |
1.5 µs |
| 1,000,000 |
1.7 µs |
1.9 µs |
1.8 µs |
1.8 µs |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
1.1 µs |
1.2 µs |
1.1 µs |
1.1 µs |
| 10,000 |
1.5 µs |
1.6 µs |
1.5 µs |
1.5 µs |
| 100,000 |
1.9 µs |
2.1 µs |
2.0 µs |
2.0 µs |
| 1,000,000 |
2.3 µs |
2.5 µs |
2.4 µs |
2.4 µs |
tree_bench_parallel (rayon)(52)
insert_many (batch)(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
142.2 µs7.03 Melem/s |
150.2 µs6.66 Melem/s |
145.7 µs6.86 Melem/s |
145.7 µs6.86 Melem/s |
| 10,000 |
502.1 µs19.92 Melem/s |
557.6 µs17.93 Melem/s |
525.8 µs19.02 Melem/s |
526.1 µs19.01 Melem/s |
| 100,000 |
2.627 ms38.07 Melem/s |
2.726 ms36.69 Melem/s |
2.672 ms37.43 Melem/s |
2.676 ms37.37 Melem/s |
| 1,000,000 |
22.945 ms43.58 Melem/s |
26.527 ms37.70 Melem/s |
23.363 ms42.80 Melem/s |
23.417 ms42.70 Melem/s |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
66.4 µs15.07 Melem/s |
68.5 µs14.60 Melem/s |
66.9 µs14.95 Melem/s |
67.0 µs14.93 Melem/s |
| 10,000 |
291.3 µs34.33 Melem/s |
346.7 µs28.85 Melem/s |
296.0 µs33.78 Melem/s |
296.8 µs33.70 Melem/s |
| 100,000 |
1.184 ms84.46 Melem/s |
1.263 ms79.20 Melem/s |
1.233 ms81.09 Melem/s |
1.234 ms81.06 Melem/s |
| 1,000,000 |
11.066 ms90.37 Melem/s |
11.829 ms84.54 Melem/s |
11.239 ms88.98 Melem/s |
11.261 ms88.80 Melem/s |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
44.2 µs22.61 Melem/s |
46.2 µs21.66 Melem/s |
44.5 µs22.48 Melem/s |
44.5 µs22.46 Melem/s |
| 10,000 |
155.9 µs64.15 Melem/s |
185.3 µs53.96 Melem/s |
170.9 µs58.51 Melem/s |
171.2 µs58.40 Melem/s |
| 100,000 |
803.1 µs124.51 Melem/s |
856.4 µs116.77 Melem/s |
821.3 µs121.75 Melem/s |
821.3 µs121.76 Melem/s |
| 1,000,000 |
7.344 ms136.16 Melem/s |
8.565 ms116.76 Melem/s |
7.467 ms133.92 Melem/s |
7.483 ms133.65 Melem/s |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
35.0 µs28.59 Melem/s |
36.1 µs27.68 Melem/s |
35.3 µs28.33 Melem/s |
35.3 µs28.32 Melem/s |
| 10,000 |
341.5 µs29.28 Melem/s |
347.4 µs28.78 Melem/s |
343.0 µs29.15 Melem/s |
343.1 µs29.14 Melem/s |
| 100,000 |
729.1 µs137.16 Melem/s |
823.0 µs121.51 Melem/s |
751.9 µs133.00 Melem/s |
753.0 µs132.81 Melem/s |
| 1,000,000 |
6.074 ms164.63 Melem/s |
6.654 ms150.28 Melem/s |
6.167 ms162.14 Melem/s |
6.178 ms161.86 Melem/s |
insert_many (chunked, 100/batch)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 10,000 |
1.453 ms6.88 Melem/s |
1.480 ms6.76 Melem/s |
1.459 ms6.85 Melem/s |
1.460 ms6.85 Melem/s |
| 100,000 |
14.710 ms6.80 Melem/s |
14.852 ms6.73 Melem/s |
14.739 ms6.78 Melem/s |
14.742 ms6.78 Melem/s |
| 1,000,000 |
152.622 ms6.55 Melem/s |
155.348 ms6.44 Melem/s |
153.453 ms6.52 Melem/s |
153.458 ms6.52 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 10,000 |
708.9 µs14.11 Melem/s |
731.2 µs13.68 Melem/s |
715.7 µs13.97 Melem/s |
716.1 µs13.97 Melem/s |
| 100,000 |
7.193 ms13.90 Melem/s |
7.278 ms13.74 Melem/s |
7.235 ms13.82 Melem/s |
7.232 ms13.83 Melem/s |
| 1,000,000 |
75.588 ms13.23 Melem/s |
76.791 ms13.02 Melem/s |
76.220 ms13.12 Melem/s |
76.210 ms13.12 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 10,000 |
508.0 µs19.69 Melem/s |
532.0 µs18.80 Melem/s |
510.7 µs19.58 Melem/s |
511.1 µs19.57 Melem/s |
| 100,000 |
5.179 ms19.31 Melem/s |
5.242 ms19.08 Melem/s |
5.198 ms19.24 Melem/s |
5.200 ms19.23 Melem/s |
| 1,000,000 |
55.033 ms18.17 Melem/s |
56.602 ms17.67 Melem/s |
55.566 ms18.00 Melem/s |
55.592 ms17.99 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 10,000 |
436.1 µs22.93 Melem/s |
448.0 µs22.32 Melem/s |
437.9 µs22.84 Melem/s |
438.2 µs22.82 Melem/s |
| 100,000 |
4.504 ms22.20 Melem/s |
4.572 ms21.87 Melem/s |
4.517 ms22.14 Melem/s |
4.520 ms22.13 Melem/s |
| 1,000,000 |
48.666 ms20.55 Melem/s |
51.511 ms19.41 Melem/s |
49.265 ms20.30 Melem/s |
49.278 ms20.29 Melem/s |
insert_many (chunked, 1000/batch)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 10,000 |
1.366 ms7.32 Melem/s |
1.531 ms6.53 Melem/s |
1.378 ms7.26 Melem/s |
1.382 ms7.24 Melem/s |
| 100,000 |
13.852 ms7.22 Melem/s |
14.013 ms7.14 Melem/s |
13.918 ms7.18 Melem/s |
13.919 ms7.18 Melem/s |
| 1,000,000 |
142.108 ms7.04 Melem/s |
147.871 ms6.76 Melem/s |
142.740 ms7.01 Melem/s |
142.788 ms7.00 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 10,000 |
647.8 µs15.44 Melem/s |
677.4 µs14.76 Melem/s |
654.8 µs15.27 Melem/s |
655.6 µs15.25 Melem/s |
| 100,000 |
6.429 ms15.55 Melem/s |
6.498 ms15.39 Melem/s |
6.464 ms15.47 Melem/s |
6.459 ms15.48 Melem/s |
| 1,000,000 |
65.996 ms15.15 Melem/s |
67.410 ms14.83 Melem/s |
66.459 ms15.05 Melem/s |
66.496 ms15.04 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 10,000 |
439.3 µs22.76 Melem/s |
445.4 µs22.45 Melem/s |
442.2 µs22.61 Melem/s |
442.3 µs22.61 Melem/s |
| 100,000 |
4.328 ms23.11 Melem/s |
4.621 ms21.64 Melem/s |
4.360 ms22.94 Melem/s |
4.408 ms22.69 Melem/s |
| 1,000,000 |
44.491 ms22.48 Melem/s |
45.936 ms21.77 Melem/s |
44.884 ms22.28 Melem/s |
44.885 ms22.28 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 10,000 |
350.5 µs28.53 Melem/s |
360.4 µs27.75 Melem/s |
352.2 µs28.39 Melem/s |
352.5 µs28.37 Melem/s |
| 100,000 |
3.461 ms28.89 Melem/s |
3.525 ms28.37 Melem/s |
3.478 ms28.75 Melem/s |
3.481 ms28.72 Melem/s |
| 1,000,000 |
36.147 ms27.67 Melem/s |
36.655 ms27.28 Melem/s |
36.307 ms27.54 Melem/s |
36.311 ms27.54 Melem/s |
insert_many (incremental, half pre-filled)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 10,000 |
342.6 µs14.60 Melem/s |
377.0 µs13.26 Melem/s |
362.5 µs13.79 Melem/s |
361.9 µs13.81 Melem/s |
| 100,000 |
1.512 ms33.08 Melem/s |
1.639 ms30.51 Melem/s |
1.552 ms32.21 Melem/s |
1.556 ms32.13 Melem/s |
| 1,000,000 |
12.185 ms41.03 Melem/s |
13.230 ms37.79 Melem/s |
12.444 ms40.18 Melem/s |
12.458 ms40.13 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 10,000 |
159.2 µs31.40 Melem/s |
178.8 µs27.97 Melem/s |
168.8 µs29.63 Melem/s |
168.9 µs29.60 Melem/s |
| 100,000 |
740.3 µs67.54 Melem/s |
845.0 µs59.17 Melem/s |
766.8 µs65.20 Melem/s |
767.9 µs65.11 Melem/s |
| 1,000,000 |
5.560 ms89.93 Melem/s |
5.967 ms83.80 Melem/s |
5.708 ms87.59 Melem/s |
5.727 ms87.31 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 10,000 |
218.3 µs22.91 Melem/s |
228.6 µs21.87 Melem/s |
221.3 µs22.59 Melem/s |
221.5 µs22.57 Melem/s |
| 100,000 |
566.2 µs88.31 Melem/s |
655.3 µs76.30 Melem/s |
600.8 µs83.23 Melem/s |
601.9 µs83.08 Melem/s |
| 1,000,000 |
4.051 ms123.42 Melem/s |
5.302 ms94.31 Melem/s |
4.137 ms120.85 Melem/s |
4.154 ms120.36 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 10,000 |
172.4 µs29.00 Melem/s |
184.5 µs27.10 Melem/s |
177.0 µs28.25 Melem/s |
177.1 µs28.24 Melem/s |
| 100,000 |
388.0 µs128.85 Melem/s |
444.3 µs112.54 Melem/s |
410.3 µs121.86 Melem/s |
411.4 µs121.54 Melem/s |
| 1,000,000 |
3.164 ms158.05 Melem/s |
4.952 ms100.97 Melem/s |
3.235 ms154.58 Melem/s |
3.265 ms153.14 Melem/s |
tree_bench_concurrent(96)
insert (single)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 1,000 |
685.0 µs1.46 Melem/s |
792.5 µs1.26 Melem/s |
712.5 µs1.40 Melem/s |
725.0 µs1.38 Melem/s |
| 10,000 |
8.893 ms1.12 Melem/s |
10.041 ms995.92 Kelem/s |
9.205 ms1.09 Melem/s |
9.498 ms1.05 Melem/s |
| 100,000 |
112.268 ms890.72 Kelem/s |
127.783 ms782.58 Kelem/s |
116.294 ms859.89 Kelem/s |
118.698 ms842.48 Kelem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 1,000 |
568.4 µs1.76 Melem/s |
601.2 µs1.66 Melem/s |
590.0 µs1.69 Melem/s |
590.1 µs1.69 Melem/s |
| 10,000 |
7.698 ms1.30 Melem/s |
8.021 ms1.25 Melem/s |
7.804 ms1.28 Melem/s |
7.810 ms1.28 Melem/s |
| 100,000 |
96.164 ms1.04 Melem/s |
98.823 ms1.01 Melem/s |
97.129 ms1.03 Melem/s |
97.226 ms1.03 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 1,000 |
596.3 µs1.68 Melem/s |
620.9 µs1.61 Melem/s |
607.8 µs1.65 Melem/s |
608.1 µs1.64 Melem/s |
| 10,000 |
7.763 ms1.29 Melem/s |
7.968 ms1.26 Melem/s |
7.859 ms1.27 Melem/s |
7.855 ms1.27 Melem/s |
| 100,000 |
97.133 ms1.03 Melem/s |
99.094 ms1.01 Melem/s |
98.119 ms1.02 Melem/s |
98.112 ms1.02 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 1,000 |
662.2 µs1.51 Melem/s |
696.9 µs1.43 Melem/s |
682.9 µs1.46 Melem/s |
682.0 µs1.47 Melem/s |
| 10,000 |
8.975 ms1.11 Melem/s |
9.203 ms1.09 Melem/s |
9.094 ms1.10 Melem/s |
9.086 ms1.10 Melem/s |
| 100,000 |
112.201 ms891.26 Kelem/s |
114.700 ms871.84 Kelem/s |
113.575 ms880.48 Kelem/s |
113.608 ms880.22 Kelem/s |
insert_many (batch)(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
132.7 µs7.54 Melem/s |
143.3 µs6.98 Melem/s |
137.2 µs7.29 Melem/s |
137.7 µs7.26 Melem/s |
| 10,000 |
1.367 ms7.31 Melem/s |
1.450 ms6.90 Melem/s |
1.386 ms7.21 Melem/s |
1.392 ms7.19 Melem/s |
| 100,000 |
13.846 ms7.22 Melem/s |
14.267 ms7.01 Melem/s |
14.084 ms7.10 Melem/s |
14.081 ms7.10 Melem/s |
| 1,000,000 |
141.817 ms7.05 Melem/s |
149.225 ms6.70 Melem/s |
143.671 ms6.96 Melem/s |
144.173 ms6.94 Melem/s |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
61.4 µs16.28 Melem/s |
65.9 µs15.19 Melem/s |
62.8 µs15.93 Melem/s |
62.9 µs15.91 Melem/s |
| 10,000 |
622.7 µs16.06 Melem/s |
665.6 µs15.02 Melem/s |
632.7 µs15.80 Melem/s |
632.1 µs15.82 Melem/s |
| 100,000 |
6.156 ms16.24 Melem/s |
6.537 ms15.30 Melem/s |
6.323 ms15.82 Melem/s |
6.327 ms15.80 Melem/s |
| 1,000,000 |
64.975 ms15.39 Melem/s |
67.272 ms14.86 Melem/s |
65.960 ms15.16 Melem/s |
66.017 ms15.15 Melem/s |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
40.5 µs24.72 Melem/s |
42.0 µs23.83 Melem/s |
41.3 µs24.21 Melem/s |
41.3 µs24.21 Melem/s |
| 10,000 |
407.8 µs24.52 Melem/s |
459.1 µs21.78 Melem/s |
415.2 µs24.09 Melem/s |
416.3 µs24.02 Melem/s |
| 100,000 |
4.089 ms24.46 Melem/s |
4.200 ms23.81 Melem/s |
4.156 ms24.06 Melem/s |
4.152 ms24.09 Melem/s |
| 1,000,000 |
42.380 ms23.60 Melem/s |
43.361 ms23.06 Melem/s |
42.770 ms23.38 Melem/s |
42.764 ms23.38 Melem/s |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
31.7 µs31.57 Melem/s |
33.6 µs29.76 Melem/s |
32.5 µs30.76 Melem/s |
32.5 µs30.77 Melem/s |
| 10,000 |
316.1 µs31.64 Melem/s |
372.2 µs26.87 Melem/s |
324.4 µs30.82 Melem/s |
324.6 µs30.81 Melem/s |
| 100,000 |
3.197 ms31.28 Melem/s |
3.406 ms29.36 Melem/s |
3.241 ms30.85 Melem/s |
3.238 ms30.89 Melem/s |
| 1,000,000 |
33.197 ms30.12 Melem/s |
34.028 ms29.39 Melem/s |
33.536 ms29.82 Melem/s |
33.543 ms29.81 Melem/s |
insert_many (incremental, half pre-filled)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 10,000 |
657.5 µs7.60 Melem/s |
708.9 µs7.05 Melem/s |
688.1 µs7.27 Melem/s |
687.7 µs7.27 Melem/s |
| 100,000 |
6.788 ms7.37 Melem/s |
6.990 ms7.15 Melem/s |
6.908 ms7.24 Melem/s |
6.896 ms7.25 Melem/s |
| 1,000,000 |
71.053 ms7.04 Melem/s |
75.136 ms6.65 Melem/s |
72.121 ms6.93 Melem/s |
72.333 ms6.91 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 10,000 |
305.4 µs16.37 Melem/s |
325.8 µs15.35 Melem/s |
316.3 µs15.81 Melem/s |
316.5 µs15.80 Melem/s |
| 100,000 |
3.116 ms16.05 Melem/s |
3.269 ms15.29 Melem/s |
3.168 ms15.78 Melem/s |
3.174 ms15.75 Melem/s |
| 1,000,000 |
31.922 ms15.66 Melem/s |
34.284 ms14.58 Melem/s |
33.220 ms15.05 Melem/s |
33.198 ms15.06 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 10,000 |
202.2 µs24.73 Melem/s |
210.8 µs23.72 Melem/s |
207.7 µs24.07 Melem/s |
207.6 µs24.09 Melem/s |
| 100,000 |
2.036 ms24.56 Melem/s |
2.098 ms23.84 Melem/s |
2.071 ms24.15 Melem/s |
2.069 ms24.16 Melem/s |
| 1,000,000 |
21.130 ms23.66 Melem/s |
22.295 ms22.43 Melem/s |
21.523 ms23.23 Melem/s |
21.517 ms23.24 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 10,000 |
157.0 µs31.85 Melem/s |
167.0 µs29.93 Melem/s |
162.9 µs30.70 Melem/s |
162.7 µs30.73 Melem/s |
| 100,000 |
1.597 ms31.31 Melem/s |
1.651 ms30.28 Melem/s |
1.626 ms30.75 Melem/s |
1.625 ms30.77 Melem/s |
| 1,000,000 |
16.876 ms29.63 Melem/s |
17.514 ms28.55 Melem/s |
17.200 ms29.07 Melem/s |
17.200 ms29.07 Melem/s |
generate_proof(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
149.6 ns |
160.6 ns |
152.3 ns |
153.0 ns |
| 10,000 |
172.4 ns |
186.8 ns |
177.8 ns |
177.8 ns |
| 100,000 |
193.1 ns |
215.8 ns |
201.2 ns |
200.4 ns |
| 1,000,000 |
213.5 ns |
240.7 ns |
223.8 ns |
224.6 ns |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
197.6 ns |
210.9 ns |
204.1 ns |
203.3 ns |
| 10,000 |
216.7 ns |
239.5 ns |
224.1 ns |
223.8 ns |
| 100,000 |
235.8 ns |
261.1 ns |
246.1 ns |
244.7 ns |
| 1,000,000 |
250.9 ns |
272.2 ns |
258.3 ns |
257.6 ns |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
334.3 ns |
391.8 ns |
352.6 ns |
356.5 ns |
| 10,000 |
338.8 ns |
453.0 ns |
364.1 ns |
368.4 ns |
| 100,000 |
370.7 ns |
416.9 ns |
381.0 ns |
383.7 ns |
| 1,000,000 |
386.8 ns |
465.7 ns |
394.6 ns |
400.3 ns |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
630.5 ns |
755.6 ns |
683.1 ns |
684.9 ns |
| 10,000 |
657.0 ns |
874.8 ns |
694.1 ns |
704.7 ns |
| 100,000 |
689.5 ns |
808.3 ns |
736.5 ns |
742.7 ns |
| 1,000,000 |
677.8 ns |
789.9 ns |
722.6 ns |
728.1 ns |
verify_proof(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
1.3 µs |
1.4 µs |
1.3 µs |
1.3 µs |
| 10,000 |
1.8 µs |
1.9 µs |
1.8 µs |
1.8 µs |
| 100,000 |
2.1 µs |
2.3 µs |
2.2 µs |
2.2 µs |
| 1,000,000 |
2.5 µs |
2.7 µs |
2.6 µs |
2.6 µs |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
858.8 ns |
927.8 ns |
890.7 ns |
891.7 ns |
| 10,000 |
1.2 µs |
1.2 µs |
1.2 µs |
1.2 µs |
| 100,000 |
1.5 µs |
1.6 µs |
1.5 µs |
1.5 µs |
| 1,000,000 |
1.7 µs |
1.9 µs |
1.8 µs |
1.8 µs |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
921.1 ns |
969.3 ns |
944.1 ns |
943.3 ns |
| 10,000 |
1.2 µs |
1.2 µs |
1.2 µs |
1.2 µs |
| 100,000 |
1.5 µs |
1.6 µs |
1.5 µs |
1.5 µs |
| 1,000,000 |
1.8 µs |
1.8 µs |
1.8 µs |
1.8 µs |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
1.1 µs |
1.1 µs |
1.1 µs |
1.1 µs |
| 10,000 |
1.5 µs |
1.6 µs |
1.6 µs |
1.6 µs |
| 100,000 |
2.0 µs |
2.1 µs |
2.0 µs |
2.0 µs |
| 1,000,000 |
2.3 µs |
2.4 µs |
2.4 µs |
2.4 µs |
snapshot(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
4.6 µs |
5.0 µs |
4.7 µs |
4.7 µs |
| 10,000 |
5.6 µs |
6.2 µs |
5.8 µs |
5.8 µs |
| 100,000 |
7.2 µs |
7.8 µs |
7.3 µs |
7.4 µs |
| 1,000,000 |
9.4 µs |
10.2 µs |
9.9 µs |
9.9 µs |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
4.0 µs |
4.7 µs |
4.1 µs |
4.1 µs |
| 10,000 |
4.6 µs |
5.1 µs |
4.9 µs |
4.9 µs |
| 100,000 |
5.4 µs |
5.9 µs |
5.6 µs |
5.6 µs |
| 1,000,000 |
6.7 µs |
7.3 µs |
7.0 µs |
7.0 µs |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
3.8 µs |
4.0 µs |
3.9 µs |
3.9 µs |
| 10,000 |
4.3 µs |
4.6 µs |
4.4 µs |
4.4 µs |
| 100,000 |
4.4 µs |
4.8 µs |
4.7 µs |
4.7 µs |
| 1,000,000 |
5.8 µs |
6.3 µs |
6.0 µs |
6.0 µs |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
3.7 µs |
4.0 µs |
3.9 µs |
3.9 µs |
| 10,000 |
4.4 µs |
4.7 µs |
4.5 µs |
4.5 µs |
| 100,000 |
4.4 µs |
4.6 µs |
4.5 µs |
4.5 µs |
| 1,000,000 |
5.5 µs |
5.9 µs |
5.7 µs |
5.7 µs |
concurrent contention (4 readers + 1 writer)(8)
n=2(2)
| count | fastest | slowest | median | mean |
| 10,000 |
1.375 ms7.27 Melem/s |
1.448 ms6.91 Melem/s |
1.395 ms7.17 Melem/s |
1.399 ms7.15 Melem/s |
| 100,000 |
13.853 ms7.22 Melem/s |
14.408 ms6.94 Melem/s |
13.993 ms7.15 Melem/s |
14.025 ms7.13 Melem/s |
n=4(2)
| count | fastest | slowest | median | mean |
| 10,000 |
668.4 µs14.96 Melem/s |
709.2 µs14.10 Melem/s |
676.3 µs14.79 Melem/s |
679.5 µs14.72 Melem/s |
| 100,000 |
6.174 ms16.20 Melem/s |
6.644 ms15.05 Melem/s |
6.272 ms15.94 Melem/s |
6.278 ms15.93 Melem/s |
n=8(2)
| count | fastest | slowest | median | mean |
| 10,000 |
464.9 µs21.51 Melem/s |
508.2 µs19.68 Melem/s |
470.1 µs21.27 Melem/s |
470.9 µs21.24 Melem/s |
| 100,000 |
4.020 ms24.87 Melem/s |
4.197 ms23.83 Melem/s |
4.081 ms24.50 Melem/s |
4.081 ms24.50 Melem/s |
n=16(2)
| count | fastest | slowest | median | mean |
| 10,000 |
393.3 µs25.43 Melem/s |
412.6 µs24.24 Melem/s |
398.5 µs25.10 Melem/s |
398.6 µs25.08 Melem/s |
| 100,000 |
3.249 ms30.78 Melem/s |
3.490 ms28.65 Melem/s |
3.346 ms29.89 Melem/s |
3.363 ms29.74 Melem/s |
tree_bench_all (concurrent + parallel)(36)
insert_many (batch)(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
137.3 µs7.28 Melem/s |
145.0 µs6.89 Melem/s |
138.0 µs7.25 Melem/s |
138.3 µs7.23 Melem/s |
| 10,000 |
576.6 µs17.34 Melem/s |
626.8 µs15.95 Melem/s |
589.3 µs16.97 Melem/s |
592.2 µs16.89 Melem/s |
| 100,000 |
2.613 ms38.28 Melem/s |
2.790 ms35.85 Melem/s |
2.669 ms37.46 Melem/s |
2.669 ms37.46 Melem/s |
| 1,000,000 |
23.273 ms42.97 Melem/s |
24.686 ms40.51 Melem/s |
23.906 ms41.83 Melem/s |
23.897 ms41.85 Melem/s |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
63.0 µs15.87 Melem/s |
64.3 µs15.56 Melem/s |
63.3 µs15.80 Melem/s |
63.3 µs15.80 Melem/s |
| 10,000 |
349.0 µs28.66 Melem/s |
372.0 µs26.88 Melem/s |
361.3 µs27.67 Melem/s |
361.6 µs27.65 Melem/s |
| 100,000 |
1.216 ms82.24 Melem/s |
1.322 ms75.64 Melem/s |
1.238 ms80.78 Melem/s |
1.240 ms80.67 Melem/s |
| 1,000,000 |
11.175 ms89.48 Melem/s |
11.955 ms83.65 Melem/s |
11.481 ms87.10 Melem/s |
11.483 ms87.08 Melem/s |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
42.0 µs23.83 Melem/s |
43.1 µs23.18 Melem/s |
42.2 µs23.71 Melem/s |
42.2 µs23.69 Melem/s |
| 10,000 |
209.7 µs47.69 Melem/s |
238.9 µs41.86 Melem/s |
221.1 µs45.23 Melem/s |
221.1 µs45.22 Melem/s |
| 100,000 |
825.9 µs121.08 Melem/s |
864.2 µs115.71 Melem/s |
845.8 µs118.24 Melem/s |
846.4 µs118.15 Melem/s |
| 1,000,000 |
7.369 ms135.71 Melem/s |
8.013 ms124.79 Melem/s |
7.484 ms133.63 Melem/s |
7.501 ms133.31 Melem/s |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
33.3 µs30.02 Melem/s |
35.2 µs28.44 Melem/s |
33.5 µs29.88 Melem/s |
33.6 µs29.80 Melem/s |
| 10,000 |
333.2 µs30.01 Melem/s |
341.2 µs29.31 Melem/s |
334.6 µs29.89 Melem/s |
334.8 µs29.87 Melem/s |
| 100,000 |
761.1 µs131.39 Melem/s |
826.9 µs120.94 Melem/s |
774.1 µs129.19 Melem/s |
775.3 µs128.97 Melem/s |
| 1,000,000 |
6.159 ms162.35 Melem/s |
6.546 ms152.77 Melem/s |
6.235 ms160.39 Melem/s |
6.243 ms160.17 Melem/s |
insert_many (incremental, half pre-filled)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 10,000 |
423.5 µs11.81 Melem/s |
452.4 µs11.05 Melem/s |
434.7 µs11.50 Melem/s |
435.3 µs11.49 Melem/s |
| 100,000 |
1.551 ms32.23 Melem/s |
1.630 ms30.67 Melem/s |
1.585 ms31.54 Melem/s |
1.584 ms31.57 Melem/s |
| 1,000,000 |
12.189 ms41.02 Melem/s |
13.335 ms37.49 Melem/s |
12.445 ms40.18 Melem/s |
12.471 ms40.09 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 10,000 |
220.1 µs22.72 Melem/s |
279.4 µs17.89 Melem/s |
243.4 µs20.54 Melem/s |
244.0 µs20.49 Melem/s |
| 100,000 |
787.8 µs63.47 Melem/s |
870.0 µs57.47 Melem/s |
825.7 µs60.55 Melem/s |
825.5 µs60.57 Melem/s |
| 1,000,000 |
5.612 ms89.09 Melem/s |
6.129 ms81.58 Melem/s |
5.874 ms85.12 Melem/s |
5.870 ms85.17 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 10,000 |
211.9 µs23.60 Melem/s |
218.9 µs22.84 Melem/s |
212.6 µs23.52 Melem/s |
212.7 µs23.50 Melem/s |
| 100,000 |
636.6 µs78.54 Melem/s |
725.6 µs68.91 Melem/s |
659.6 µs75.80 Melem/s |
659.6 µs75.80 Melem/s |
| 1,000,000 |
4.058 ms123.21 Melem/s |
4.254 ms117.52 Melem/s |
4.127 ms121.14 Melem/s |
4.133 ms120.97 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 10,000 |
167.3 µs29.88 Melem/s |
174.2 µs28.71 Melem/s |
168.1 µs29.75 Melem/s |
168.2 µs29.72 Melem/s |
| 100,000 |
439.2 µs113.85 Melem/s |
498.8 µs100.23 Melem/s |
470.4 µs106.28 Melem/s |
470.2 µs106.33 Melem/s |
| 1,000,000 |
3.136 ms159.42 Melem/s |
4.366 ms114.53 Melem/s |
3.222 ms155.19 Melem/s |
3.232 ms154.71 Melem/s |
concurrent contention (4 readers + 1 writer)(8)
n=2(2)
| count | fastest | slowest | median | mean |
| 10,000 |
652.3 µs15.33 Melem/s |
727.9 µs13.74 Melem/s |
680.9 µs14.69 Melem/s |
680.5 µs14.70 Melem/s |
| 100,000 |
2.891 ms34.59 Melem/s |
3.010 ms33.22 Melem/s |
2.947 ms33.93 Melem/s |
2.946 ms33.95 Melem/s |
n=4(2)
| count | fastest | slowest | median | mean |
| 10,000 |
436.1 µs22.93 Melem/s |
480.3 µs20.82 Melem/s |
445.0 µs22.47 Melem/s |
446.7 µs22.39 Melem/s |
| 100,000 |
1.380 ms72.46 Melem/s |
1.483 ms67.44 Melem/s |
1.413 ms70.79 Melem/s |
1.414 ms70.71 Melem/s |
n=8(2)
| count | fastest | slowest | median | mean |
| 10,000 |
328.1 µs30.48 Melem/s |
372.4 µs26.85 Melem/s |
339.8 µs29.43 Melem/s |
340.3 µs29.38 Melem/s |
| 100,000 |
943.8 µs105.95 Melem/s |
1.060 ms94.31 Melem/s |
1.003 ms99.73 Melem/s |
1.003 ms99.75 Melem/s |
n=16(2)
| count | fastest | slowest | median | mean |
| 10,000 |
400.6 µs24.96 Melem/s |
430.9 µs23.21 Melem/s |
407.0 µs24.57 Melem/s |
407.3 µs24.55 Melem/s |
| 100,000 |
901.3 µs110.96 Melem/s |
956.1 µs104.59 Melem/s |
918.4 µs108.89 Melem/s |
919.8 µs108.72 Melem/s |
tree_bench_storage (WAL + checkpoint)(100)
insert (single)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 1,000 |
10.026 ms99.74 Kelem/s |
11.424 ms87.53 Kelem/s |
10.557 ms94.73 Kelem/s |
10.617 ms94.18 Kelem/s |
| 10,000 |
95.686 ms104.51 Kelem/s |
97.586 ms102.47 Kelem/s |
96.334 ms103.81 Kelem/s |
96.440 ms103.69 Kelem/s |
| 100,000 |
1.153 s86.73 Kelem/s |
1.187 s84.27 Kelem/s |
1.169 s85.55 Kelem/s |
1.169 s85.55 Kelem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 1,000 |
9.599 ms104.18 Kelem/s |
10.509 ms95.16 Kelem/s |
10.105 ms98.97 Kelem/s |
10.106 ms98.95 Kelem/s |
| 10,000 |
89.140 ms112.18 Kelem/s |
93.920 ms106.47 Kelem/s |
90.525 ms110.47 Kelem/s |
90.870 ms110.05 Kelem/s |
| 100,000 |
999.060 ms100.09 Kelem/s |
1.089 s91.85 Kelem/s |
1.020 s98.07 Kelem/s |
1.024 s97.68 Kelem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 1,000 |
9.797 ms102.07 Kelem/s |
10.863 ms92.05 Kelem/s |
10.408 ms96.08 Kelem/s |
10.408 ms96.08 Kelem/s |
| 10,000 |
86.731 ms115.30 Kelem/s |
91.849 ms108.87 Kelem/s |
88.959 ms112.41 Kelem/s |
88.976 ms112.39 Kelem/s |
| 100,000 |
948.706 ms105.41 Kelem/s |
1.036 s96.54 Kelem/s |
978.824 ms102.16 Kelem/s |
976.962 ms102.36 Kelem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 1,000 |
10.456 ms95.64 Kelem/s |
11.252 ms88.87 Kelem/s |
10.745 ms93.07 Kelem/s |
10.780 ms92.76 Kelem/s |
| 10,000 |
87.499 ms114.29 Kelem/s |
93.399 ms107.07 Kelem/s |
90.518 ms110.48 Kelem/s |
90.383 ms110.64 Kelem/s |
| 100,000 |
945.764 ms105.73 Kelem/s |
1.030 s97.12 Kelem/s |
973.225 ms102.75 Kelem/s |
971.265 ms102.96 Kelem/s |
insert_many (batch)(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 1,000 |
384.7 µs2.60 Melem/s |
1.135 ms880.79 Kelem/s |
909.9 µs1.10 Melem/s |
893.8 µs1.12 Melem/s |
| 10,000 |
1.537 ms6.51 Melem/s |
3.357 ms2.98 Melem/s |
2.718 ms3.68 Melem/s |
2.740 ms3.65 Melem/s |
| 100,000 |
4.005 ms24.97 Melem/s |
5.087 ms19.66 Melem/s |
4.613 ms21.68 Melem/s |
4.607 ms21.71 Melem/s |
| 1,000,000 |
24.532 ms40.76 Melem/s |
26.788 ms37.33 Melem/s |
25.087 ms39.86 Melem/s |
25.139 ms39.78 Melem/s |
n=4(4)
| count | fastest | slowest | median | mean |
| 1,000 |
200.1 µs5.00 Melem/s |
490.0 µs2.04 Melem/s |
453.7 µs2.20 Melem/s |
440.4 µs2.27 Melem/s |
| 10,000 |
1.153 ms8.67 Melem/s |
2.666 ms3.75 Melem/s |
1.996 ms5.01 Melem/s |
1.958 ms5.11 Melem/s |
| 100,000 |
2.840 ms35.21 Melem/s |
5.672 ms17.63 Melem/s |
3.872 ms25.83 Melem/s |
3.908 ms25.59 Melem/s |
| 1,000,000 |
13.481 ms74.18 Melem/s |
14.714 ms67.96 Melem/s |
13.998 ms71.44 Melem/s |
14.044 ms71.21 Melem/s |
n=8(4)
| count | fastest | slowest | median | mean |
| 1,000 |
145.0 µs6.90 Melem/s |
342.9 µs2.92 Melem/s |
315.2 µs3.17 Melem/s |
306.6 µs3.26 Melem/s |
| 10,000 |
592.2 µs16.89 Melem/s |
1.536 ms6.51 Melem/s |
1.189 ms8.41 Melem/s |
1.189 ms8.41 Melem/s |
| 100,000 |
2.246 ms44.53 Melem/s |
4.656 ms21.48 Melem/s |
3.135 ms31.90 Melem/s |
3.263 ms30.65 Melem/s |
| 1,000,000 |
9.402 ms106.36 Melem/s |
10.495 ms95.28 Melem/s |
9.880 ms101.21 Melem/s |
9.908 ms100.93 Melem/s |
n=16(4)
| count | fastest | slowest | median | mean |
| 1,000 |
161.1 µs6.21 Melem/s |
294.9 µs3.39 Melem/s |
258.8 µs3.86 Melem/s |
255.5 µs3.91 Melem/s |
| 10,000 |
939.1 µs10.65 Melem/s |
2.635 ms3.80 Melem/s |
1.869 ms5.35 Melem/s |
1.856 ms5.39 Melem/s |
| 100,000 |
2.414 ms41.43 Melem/s |
4.307 ms23.22 Melem/s |
3.533 ms28.30 Melem/s |
3.598 ms27.79 Melem/s |
| 1,000,000 |
8.045 ms124.30 Melem/s |
9.208 ms108.60 Melem/s |
8.655 ms115.53 Melem/s |
8.638 ms115.76 Melem/s |
flush (WAL fsync)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 1,000 |
4.542 ms220.17 Kelem/s |
5.927 ms168.72 Kelem/s |
5.560 ms179.84 Kelem/s |
5.389 ms185.56 Kelem/s |
| 10,000 |
4.592 ms2.18 Melem/s |
5.487 ms1.82 Melem/s |
4.974 ms2.01 Melem/s |
4.991 ms2.00 Melem/s |
| 100,000 |
5.106 ms19.59 Melem/s |
6.947 ms14.39 Melem/s |
5.494 ms18.20 Melem/s |
5.501 ms18.18 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 1,000 |
4.804 ms208.14 Kelem/s |
6.447 ms155.10 Kelem/s |
5.384 ms185.72 Kelem/s |
5.384 ms185.74 Kelem/s |
| 10,000 |
4.552 ms2.20 Melem/s |
6.129 ms1.63 Melem/s |
5.333 ms1.88 Melem/s |
5.307 ms1.88 Melem/s |
| 100,000 |
5.428 ms18.42 Melem/s |
8.254 ms12.12 Melem/s |
5.951 ms16.80 Melem/s |
6.012 ms16.63 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 1,000 |
5.074 ms197.10 Kelem/s |
5.799 ms172.44 Kelem/s |
5.423 ms184.38 Kelem/s |
5.423 ms184.40 Kelem/s |
| 10,000 |
4.936 ms2.03 Melem/s |
5.814 ms1.72 Melem/s |
5.346 ms1.87 Melem/s |
5.343 ms1.87 Melem/s |
| 100,000 |
5.321 ms18.79 Melem/s |
8.272 ms12.09 Melem/s |
6.340 ms15.77 Melem/s |
6.343 ms15.77 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 1,000 |
4.531 ms220.69 Kelem/s |
7.335 ms136.34 Kelem/s |
5.527 ms180.94 Kelem/s |
5.524 ms181.02 Kelem/s |
| 10,000 |
4.836 ms2.07 Melem/s |
18.499 ms540.57 Kelem/s |
5.507 ms1.82 Melem/s |
5.729 ms1.75 Melem/s |
| 100,000 |
5.528 ms18.09 Melem/s |
8.183 ms12.22 Melem/s |
6.479 ms15.43 Melem/s |
6.493 ms15.40 Melem/s |
open + recover (WAL replay)(12)
n=2(3)
| count | fastest | slowest | median | mean |
| 1,000 |
184.7 µs5.41 Melem/s |
195.5 µs5.12 Melem/s |
188.9 µs5.29 Melem/s |
189.1 µs5.29 Melem/s |
| 10,000 |
625.3 µs15.99 Melem/s |
691.8 µs14.46 Melem/s |
677.2 µs14.77 Melem/s |
675.3 µs14.81 Melem/s |
| 100,000 |
3.100 ms32.26 Melem/s |
3.256 ms30.71 Melem/s |
3.176 ms31.48 Melem/s |
3.180 ms31.44 Melem/s |
n=4(3)
| count | fastest | slowest | median | mean |
| 1,000 |
110.3 µs9.06 Melem/s |
120.7 µs8.29 Melem/s |
113.3 µs8.82 Melem/s |
114.1 µs8.77 Melem/s |
| 10,000 |
429.9 µs23.26 Melem/s |
473.5 µs21.12 Melem/s |
441.1 µs22.67 Melem/s |
441.3 µs22.66 Melem/s |
| 100,000 |
1.612 ms62.04 Melem/s |
1.748 ms57.22 Melem/s |
1.651 ms60.56 Melem/s |
1.654 ms60.45 Melem/s |
n=8(3)
| count | fastest | slowest | median | mean |
| 1,000 |
88.4 µs11.32 Melem/s |
99.3 µs10.07 Melem/s |
92.2 µs10.84 Melem/s |
92.3 µs10.84 Melem/s |
| 10,000 |
320.6 µs31.19 Melem/s |
339.1 µs29.49 Melem/s |
330.8 µs30.23 Melem/s |
331.1 µs30.20 Melem/s |
| 100,000 |
1.188 ms84.18 Melem/s |
1.314 ms76.12 Melem/s |
1.214 ms82.38 Melem/s |
1.217 ms82.14 Melem/s |
n=16(3)
| count | fastest | slowest | median | mean |
| 1,000 |
81.0 µs12.34 Melem/s |
91.1 µs10.98 Melem/s |
83.7 µs11.95 Melem/s |
84.5 µs11.84 Melem/s |
| 10,000 |
388.6 µs25.73 Melem/s |
417.2 µs23.97 Melem/s |
396.7 µs25.21 Melem/s |
397.2 µs25.17 Melem/s |
| 100,000 |
1.083 ms92.38 Melem/s |
1.400 ms71.42 Melem/s |
1.115 ms89.71 Melem/s |
1.119 ms89.33 Melem/s |
mixed workload (insert + proof + verify)(16)
n=2(4)
| count | fastest | slowest | median | mean |
| 100 |
4.431 ms22.57 Kelem/s |
5.356 ms18.67 Kelem/s |
4.704 ms21.26 Kelem/s |
4.719 ms21.19 Kelem/s |
| 1,000 |
5.458 ms183.22 Kelem/s |
6.108 ms163.72 Kelem/s |
5.617 ms178.02 Kelem/s |
5.656 ms176.81 Kelem/s |
| 10,000 |
6.467 ms1.55 Melem/s |
9.270 ms1.08 Melem/s |
7.657 ms1.31 Melem/s |
7.576 ms1.32 Melem/s |
| 100,000 |
10.409 ms9.61 Melem/s |
13.644 ms7.33 Melem/s |
12.630 ms7.92 Melem/s |
12.447 ms8.03 Melem/s |
n=4(4)
| count | fastest | slowest | median | mean |
| 100 |
4.428 ms22.58 Kelem/s |
5.741 ms17.42 Kelem/s |
4.672 ms21.40 Kelem/s |
4.717 ms21.20 Kelem/s |
| 1,000 |
4.719 ms211.93 Kelem/s |
6.351 ms157.45 Kelem/s |
5.779 ms173.05 Kelem/s |
5.732 ms174.47 Kelem/s |
| 10,000 |
6.152 ms1.63 Melem/s |
7.728 ms1.29 Melem/s |
7.104 ms1.41 Melem/s |
7.089 ms1.41 Melem/s |
| 100,000 |
9.561 ms10.46 Melem/s |
14.279 ms7.00 Melem/s |
12.386 ms8.07 Melem/s |
12.087 ms8.27 Melem/s |
n=8(4)
| count | fastest | slowest | median | mean |
| 100 |
4.588 ms21.80 Kelem/s |
5.490 ms18.21 Kelem/s |
4.825 ms20.72 Kelem/s |
4.872 ms20.53 Kelem/s |
| 1,000 |
4.567 ms218.97 Kelem/s |
6.229 ms160.53 Kelem/s |
5.779 ms173.05 Kelem/s |
5.748 ms173.96 Kelem/s |
| 10,000 |
5.884 ms1.70 Melem/s |
7.297 ms1.37 Melem/s |
6.632 ms1.51 Melem/s |
6.674 ms1.50 Melem/s |
| 100,000 |
8.854 ms11.29 Melem/s |
13.479 ms7.42 Melem/s |
12.635 ms7.91 Melem/s |
12.460 ms8.03 Melem/s |
n=16(4)
| count | fastest | slowest | median | mean |
| 100 |
4.513 ms22.16 Kelem/s |
5.677 ms17.61 Kelem/s |
4.830 ms20.70 Kelem/s |
4.889 ms20.45 Kelem/s |
| 1,000 |
4.556 ms219.49 Kelem/s |
6.206 ms161.13 Kelem/s |
5.469 ms182.85 Kelem/s |
5.438 ms183.88 Kelem/s |
| 10,000 |
5.806 ms1.72 Melem/s |
7.921 ms1.26 Melem/s |
6.917 ms1.45 Melem/s |
6.944 ms1.44 Melem/s |
| 100,000 |
9.448 ms10.58 Melem/s |
14.098 ms7.09 Melem/s |
12.066 ms8.29 Melem/s |
11.954 ms8.37 Melem/s |
sustained checkpoint(32)
n=2(8)
| count | fastest | slowest | median | mean |
| 100,000 (every 5) |
17.672 ms5.66 Melem/s |
22.740 ms4.40 Melem/s |
19.896 ms5.03 Melem/s |
20.065 ms4.98 Melem/s |
| 100,000 (every 25) |
7.307 ms13.68 Melem/s |
8.264 ms12.10 Melem/s |
7.705 ms12.98 Melem/s |
7.730 ms12.94 Melem/s |
| 100,000 (every 100) |
7.411 ms13.49 Melem/s |
8.274 ms12.09 Melem/s |
7.782 ms12.85 Melem/s |
7.773 ms12.86 Melem/s |
| 100,000 (every 500) |
7.275 ms13.75 Melem/s |
8.121 ms12.31 Melem/s |
7.718 ms12.96 Melem/s |
7.714 ms12.96 Melem/s |
| 1,000,000 (every 5) |
70.495 ms14.19 Melem/s |
75.578 ms13.23 Melem/s |
72.903 ms13.72 Melem/s |
72.897 ms13.72 Melem/s |
| 1,000,000 (every 25) |
73.746 ms13.56 Melem/s |
84.719 ms11.80 Melem/s |
76.577 ms13.06 Melem/s |
76.667 ms13.04 Melem/s |
| 1,000,000 (every 100) |
68.426 ms14.61 Melem/s |
77.635 ms12.88 Melem/s |
71.935 ms13.90 Melem/s |
72.016 ms13.89 Melem/s |
| 1,000,000 (every 500) |
64.298 ms15.55 Melem/s |
70.095 ms14.27 Melem/s |
67.348 ms14.85 Melem/s |
67.322 ms14.85 Melem/s |
n=4(8)
| count | fastest | slowest | median | mean |
| 100,000 (every 5) |
14.763 ms6.77 Melem/s |
18.841 ms5.31 Melem/s |
17.465 ms5.73 Melem/s |
17.256 ms5.80 Melem/s |
| 100,000 (every 25) |
4.571 ms21.88 Melem/s |
6.016 ms16.62 Melem/s |
5.430 ms18.42 Melem/s |
5.451 ms18.35 Melem/s |
| 100,000 (every 100) |
5.192 ms19.26 Melem/s |
6.014 ms16.63 Melem/s |
5.487 ms18.22 Melem/s |
5.508 ms18.16 Melem/s |
| 100,000 (every 500) |
5.184 ms19.29 Melem/s |
5.825 ms17.17 Melem/s |
5.458 ms18.32 Melem/s |
5.453 ms18.34 Melem/s |
| 1,000,000 (every 5) |
47.400 ms21.10 Melem/s |
55.232 ms18.11 Melem/s |
49.118 ms20.36 Melem/s |
49.343 ms20.27 Melem/s |
| 1,000,000 (every 25) |
49.284 ms20.29 Melem/s |
54.640 ms18.30 Melem/s |
52.127 ms19.18 Melem/s |
52.243 ms19.14 Melem/s |
| 1,000,000 (every 100) |
44.065 ms22.69 Melem/s |
49.877 ms20.05 Melem/s |
46.004 ms21.74 Melem/s |
46.053 ms21.71 Melem/s |
| 1,000,000 (every 500) |
41.082 ms24.34 Melem/s |
43.528 ms22.97 Melem/s |
42.134 ms23.73 Melem/s |
42.117 ms23.74 Melem/s |
n=8(8)
| count | fastest | slowest | median | mean |
| 100,000 (every 5) |
10.787 ms9.27 Melem/s |
16.868 ms5.93 Melem/s |
13.686 ms7.31 Melem/s |
13.815 ms7.24 Melem/s |
| 100,000 (every 25) |
4.077 ms24.53 Melem/s |
5.288 ms18.91 Melem/s |
4.526 ms22.09 Melem/s |
4.550 ms21.98 Melem/s |
| 100,000 (every 100) |
4.065 ms24.60 Melem/s |
4.842 ms20.65 Melem/s |
4.382 ms22.82 Melem/s |
4.392 ms22.77 Melem/s |
| 100,000 (every 500) |
3.935 ms25.41 Melem/s |
4.891 ms20.45 Melem/s |
4.340 ms23.04 Melem/s |
4.355 ms22.96 Melem/s |
| 1,000,000 (every 5) |
35.214 ms28.40 Melem/s |
38.647 ms25.88 Melem/s |
36.960 ms27.06 Melem/s |
36.977 ms27.04 Melem/s |
| 1,000,000 (every 25) |
37.774 ms26.47 Melem/s |
41.992 ms23.81 Melem/s |
39.655 ms25.22 Melem/s |
39.724 ms25.17 Melem/s |
| 1,000,000 (every 100) |
29.147 ms34.31 Melem/s |
32.533 ms30.74 Melem/s |
31.178 ms32.07 Melem/s |
31.174 ms32.08 Melem/s |
| 1,000,000 (every 500) |
28.062 ms35.64 Melem/s |
30.836 ms32.43 Melem/s |
29.325 ms34.10 Melem/s |
29.367 ms34.05 Melem/s |
n=16(8)
| count | fastest | slowest | median | mean |
| 100,000 (every 5) |
13.824 ms7.23 Melem/s |
19.239 ms5.20 Melem/s |
16.740 ms5.97 Melem/s |
16.898 ms5.92 Melem/s |
| 100,000 (every 25) |
5.368 ms18.63 Melem/s |
6.124 ms16.33 Melem/s |
5.706 ms17.53 Melem/s |
5.681 ms17.60 Melem/s |
| 100,000 (every 100) |
5.327 ms18.77 Melem/s |
6.431 ms15.55 Melem/s |
5.723 ms17.47 Melem/s |
5.747 ms17.40 Melem/s |
| 100,000 (every 500) |
5.283 ms18.93 Melem/s |
6.023 ms16.60 Melem/s |
5.711 ms17.51 Melem/s |
5.679 ms17.61 Melem/s |
| 1,000,000 (every 5) |
44.856 ms22.29 Melem/s |
78.509 ms12.74 Melem/s |
46.356 ms21.57 Melem/s |
47.884 ms20.88 Melem/s |
| 1,000,000 (every 25) |
46.984 ms21.28 Melem/s |
53.895 ms18.55 Melem/s |
49.662 ms20.14 Melem/s |
49.865 ms20.05 Melem/s |
| 1,000,000 (every 100) |
39.587 ms25.26 Melem/s |
47.221 ms21.18 Melem/s |
43.829 ms22.82 Melem/s |
44.060 ms22.70 Melem/s |
| 1,000,000 (every 500) |
37.118 ms26.94 Melem/s |
41.077 ms24.34 Melem/s |
38.774 ms25.79 Melem/s |
38.818 ms25.76 Melem/s |