Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Increase parallelism for write benchmarks #182

Merged
merged 1 commit into from
Oct 1, 2024

Conversation

marco6
Copy link
Collaborator

@marco6 marco6 commented Sep 30, 2024

This PR increases the number of concurrent writers in the write loads.

This is useful to showcase how processing will change once #180 is ready.

@marco6 marco6 requested a review from a team as a code owner September 30, 2024 13:29
Copy link

Benchmark Result

goos: linux
goarch: amd64
pkg: github.com/canonical/k8s-dqlite/test
cpu: AMD EPYC 7763 64-Core Processor                
                                        │    Before    │                 After                  │
                                        │    sec/op    │    sec/op      vs base                 │
Compaction/sqlite-4                       37.89µ ± 12%    41.01µ ± 12%        ~ (p=0.535 n=7)
Compaction/dqlite-4                       40.42µ ±  4%    42.33µ ± 16%   +4.72% (p=0.011 n=7)
Create/sqlite/1-workers-4                 1.177m ±  6%    1.232m ±  6%        ~ (p=0.128 n=7)
Create/sqlite/2-workers-4                 1.227m ± 10%
Create/sqlite/4-workers-4                 1.260m ±  8%    1.276m ±  8%        ~ (p=0.620 n=7)
Create/sqlite/8-workers-4                 1.383m ±  9%
Create/sqlite/16-workers-4                1.799m ± 24%    1.530m ± 24%        ~ (p=0.535 n=7)
Create/dqlite/1-workers-4                 1.003m ±  9%    1.012m ± 11%        ~ (p=0.456 n=7)
Create/dqlite/2-workers-4                 888.5µ ±  1%
Create/dqlite/4-workers-4                 887.2µ ±  2%    917.2µ ± 10%   +3.38% (p=0.007 n=7)
Create/dqlite/8-workers-4                 927.2µ ±  6%
Create/dqlite/16-workers-4                921.4µ ±  6%    934.3µ ±  8%        ~ (p=0.620 n=7)
Delete/sqlite/1-workers-4                 1.225m ±  8%    1.192m ±  4%        ~ (p=0.383 n=7)
Delete/sqlite/2-workers-4                 1.275m ±  8%
Delete/sqlite/4-workers-4                 1.511m ± 14%    1.300m ± 13%  -13.98% (p=0.011 n=7)
Delete/sqlite/8-workers-4                 1.595m ± 21%
Delete/sqlite/16-workers-4                1.631m ± 28%    1.607m ± 24%        ~ (p=0.805 n=7)
Delete/dqlite/1-workers-4                 1.003m ±  4%    1.018m ±  9%        ~ (p=0.165 n=7)
Delete/dqlite/2-workers-4                 879.5µ ±  2%
Delete/dqlite/4-workers-4                 887.8µ ±  4%    899.6µ ±  3%        ~ (p=0.259 n=7)
Delete/dqlite/8-workers-4                 891.7µ ±  8%
Delete/dqlite/16-workers-4                886.6µ ±  6%    918.7µ ±  6%   +3.63% (p=0.001 n=7)
Get/sqlite-4                              270.9µ ±  1%    269.3µ ±  0%   -0.59% (p=0.001 n=7)
Get/dqlite-4                              360.6µ ±  1%    361.2µ ±  1%        ~ (p=1.000 n=7)
List/sqlite-tiny/all-4                    4.415µ ±  5%    4.466µ ±  1%        ~ (p=0.053 n=7)
List/sqlite-tiny/pagination-4             8.755µ ±  2%    8.849µ ±  2%        ~ (p=0.259 n=7)
List/sqlite-fits-in-page/all-4            7.214µ ±  4%    7.138µ ±  4%        ~ (p=1.000 n=7)
List/sqlite-fits-in-page/pagination-4     22.17µ ±  3%    21.89µ ±  6%        ~ (p=0.620 n=7)
List/sqlite-overflows-page/all-4          17.05µ ±  6%    17.08µ ±  4%        ~ (p=0.535 n=7)
List/sqlite-overflows-page/pagination-4   45.57µ ±  2%    44.79µ ±  9%        ~ (p=0.128 n=7)
List/dqlite-tiny/all-4                    2.747µ ± 10%    2.769µ ±  4%        ~ (p=0.805 n=7)
List/dqlite-tiny/pagination-4             5.847µ ±  1%    5.829µ ±  1%        ~ (p=0.456 n=7)
List/dqlite-fits-in-page/all-4            5.906µ ±  2%    5.826µ ±  2%        ~ (p=0.105 n=7)
List/dqlite-fits-in-page/pagination-4     15.92µ ±  3%    15.69µ ±  4%        ~ (p=0.456 n=7)
List/dqlite-overflows-page/all-4          17.52µ ±  2%    17.68µ ±  5%        ~ (p=0.053 n=7)
List/dqlite-overflows-page/pagination-4   40.38µ ±  4%    39.71µ ± 11%        ~ (p=0.805 n=7)
Update/sqlite/1-workers-4                 1.167m ±  8%    1.219m ± 15%        ~ (p=0.383 n=7)
Update/sqlite/2-workers-4                 1.185m ±  4%
Update/sqlite/4-workers-4                 1.358m ±  9%    1.410m ± 10%        ~ (p=0.209 n=7)
Update/sqlite/8-workers-4                 1.344m ± 11%
Update/sqlite/16-workers-4                1.578m ± 55%    1.792m ± 37%        ~ (p=0.383 n=7)
Update/dqlite/1-workers-4                 995.0µ ±  6%   1061.1µ ±  3%   +6.64% (p=0.004 n=7)
Update/dqlite/2-workers-4                 883.4µ ±  5%
Update/dqlite/4-workers-4                 920.9µ ± 10%    952.8µ ± 11%        ~ (p=0.053 n=7)
Update/dqlite/8-workers-4                 911.7µ ±  9%
Update/dqlite/16-workers-4                970.2µ ±  8%    925.3µ ±  5%        ~ (p=0.128 n=7)
Create/sqlite/64-workers-4                                14.54m ± 31%
Create/sqlite/128-workers-4                               18.44m ± 26%
Create/dqlite/64-workers-4                                955.3µ ± 13%
Create/dqlite/128-workers-4                               945.1µ ± 10%
Delete/sqlite/64-workers-4                                14.45m ± 84%
Delete/sqlite/128-workers-4                               18.59m ± 54%
Delete/dqlite/64-workers-4                                895.5µ ±  5%
Delete/dqlite/128-workers-4                               895.0µ ±  3%
Update/sqlite/64-workers-4                                 1.373 ± 79%
Update/sqlite/128-workers-4                                2.565 ± 51%
Update/dqlite/64-workers-4                                922.1µ ± 12%
Update/dqlite/128-workers-4                               1.002m ±  9%
geomean                                   277.7µ          477.8µ         +0.46%               ¹
¹ benchmark set differs from baseline; geomeans may not be comparable

                                        │        Before        │                     After                      │
                                        │ page-cache-misses/op │ page-cache-misses/op  vs base                  │
Compaction/sqlite-4                               0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Compaction/dqlite-4                               0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/sqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/sqlite/2-workers-4                         0.000 ± 0%
Create/sqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/sqlite/8-workers-4                         0.000 ± 0%
Create/sqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/dqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/dqlite/2-workers-4                         0.000 ± 0%
Create/dqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/dqlite/8-workers-4                         0.000 ± 0%
Create/dqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/sqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/sqlite/2-workers-4                         0.000 ± 0%
Delete/sqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/sqlite/8-workers-4                         0.000 ± 0%
Delete/sqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/dqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/dqlite/2-workers-4                         0.000 ± 0%
Delete/dqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/dqlite/8-workers-4                         0.000 ± 0%
Delete/dqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Get/sqlite-4                                      0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Get/dqlite-4                                      0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-tiny/all-4                            0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-tiny/pagination-4                     0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-fits-in-page/all-4                    0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-fits-in-page/pagination-4             0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-overflows-page/all-4                  0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-overflows-page/pagination-4           0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-tiny/all-4                            0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-tiny/pagination-4                     0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-fits-in-page/all-4                    0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-fits-in-page/pagination-4             0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-overflows-page/all-4                  0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-overflows-page/pagination-4           0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/sqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/sqlite/2-workers-4                         0.000 ± 0%
Update/sqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/sqlite/8-workers-4                         0.000 ± 0%
Update/sqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/dqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/dqlite/2-workers-4                         0.000 ± 0%
Update/dqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/dqlite/8-workers-4                         0.000 ± 0%
Update/dqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/sqlite/64-workers-4                                                 0.000 ± 0%
Create/sqlite/128-workers-4                                                0.000 ± 0%
Create/dqlite/64-workers-4                                                 0.000 ± 0%
Create/dqlite/128-workers-4                                                0.000 ± 0%
Delete/sqlite/64-workers-4                                                 0.000 ± 0%
Delete/sqlite/128-workers-4                                                0.000 ± 0%
Delete/dqlite/64-workers-4                                                 0.000 ± 0%
Delete/dqlite/128-workers-4                                                0.000 ± 0%
Update/sqlite/64-workers-4                                                 0.000 ± 0%
Update/sqlite/128-workers-4                                                0.000 ± 0%
Update/dqlite/64-workers-4                                                 0.000 ± 0%
Update/dqlite/128-workers-4                                                0.000 ± 0%
geomean                                                      ²                         +0.00%               ³ ²
¹ all samples are equal
² summaries must be >0 to compute geomean
³ benchmark set differs from baseline; geomeans may not be comparable

                                        │        Before        │                     After                      │
                                        │ page-cache-spills/op │ page-cache-spills/op  vs base                  │
Compaction/sqlite-4                               0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Compaction/dqlite-4                               0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/sqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/sqlite/2-workers-4                         0.000 ± 0%
Create/sqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/sqlite/8-workers-4                         0.000 ± 0%
Create/sqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/dqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/dqlite/2-workers-4                         0.000 ± 0%
Create/dqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/dqlite/8-workers-4                         0.000 ± 0%
Create/dqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/sqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/sqlite/2-workers-4                         0.000 ± 0%
Delete/sqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/sqlite/8-workers-4                         0.000 ± 0%
Delete/sqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/dqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/dqlite/2-workers-4                         0.000 ± 0%
Delete/dqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Delete/dqlite/8-workers-4                         0.000 ± 0%
Delete/dqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Get/sqlite-4                                      0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Get/dqlite-4                                      0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-tiny/all-4                            0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-tiny/pagination-4                     0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-fits-in-page/all-4                    0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-fits-in-page/pagination-4             0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-overflows-page/all-4                  0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/sqlite-overflows-page/pagination-4           0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-tiny/all-4                            0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-tiny/pagination-4                     0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-fits-in-page/all-4                    0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-fits-in-page/pagination-4             0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-overflows-page/all-4                  0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
List/dqlite-overflows-page/pagination-4           0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/sqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/sqlite/2-workers-4                         0.000 ± 0%
Update/sqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/sqlite/8-workers-4                         0.000 ± 0%
Update/sqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/dqlite/1-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/dqlite/2-workers-4                         0.000 ± 0%
Update/dqlite/4-workers-4                         0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Update/dqlite/8-workers-4                         0.000 ± 0%
Update/dqlite/16-workers-4                        0.000 ± 0%               0.000 ± 0%       ~ (p=1.000 n=7) ¹
Create/sqlite/64-workers-4                                                 0.000 ± 0%
Create/sqlite/128-workers-4                                                0.000 ± 0%
Create/dqlite/64-workers-4                                                 0.000 ± 0%
Create/dqlite/128-workers-4                                                0.000 ± 0%
Delete/sqlite/64-workers-4                                                 0.000 ± 0%
Delete/sqlite/128-workers-4                                                0.000 ± 0%
Delete/dqlite/64-workers-4                                                 0.000 ± 0%
Delete/dqlite/128-workers-4                                                0.000 ± 0%
Update/sqlite/64-workers-4                                                 0.000 ± 0%
Update/sqlite/128-workers-4                                                0.000 ± 0%
Update/dqlite/64-workers-4                                                 0.000 ± 0%
Update/dqlite/128-workers-4                                                0.000 ± 0%
geomean                                                      ²                         +0.00%               ³ ²
¹ all samples are equal
² summaries must be >0 to compute geomean
³ benchmark set differs from baseline; geomeans may not be comparable

                                        │    Before     │                 After                 │
                                        │ page-reads/op │ page-reads/op  vs base                │
Compaction/sqlite-4                         12.13 ±  2%     12.21 ±  1%       ~ (p=0.205 n=7)
Compaction/dqlite-4                         12.19 ±  1%     12.22 ±  1%       ~ (p=0.879 n=7)
Create/sqlite/1-workers-4                   14.11 ±  1%     14.20 ±  1%       ~ (p=0.136 n=7)
Create/sqlite/2-workers-4                   13.85 ±  3%
Create/sqlite/4-workers-4                   13.73 ±  2%     13.61 ±  2%       ~ (p=0.163 n=7)
Create/sqlite/8-workers-4                   13.34 ±  2%
Create/sqlite/16-workers-4                  12.47 ± 16%     12.70 ±  4%       ~ (p=0.318 n=7)
Create/dqlite/1-workers-4                   13.18 ±  1%     13.09 ±  2%       ~ (p=0.474 n=7)
Create/dqlite/2-workers-4                   10.98 ±  1%
Create/dqlite/4-workers-4                   10.96 ±  0%     10.90 ±  2%       ~ (p=0.364 n=7)
Create/dqlite/8-workers-4                   10.95 ±  1%
Create/dqlite/16-workers-4                  10.93 ±  1%     10.97 ±  1%       ~ (p=0.080 n=7)
Delete/sqlite/1-workers-4                   16.58 ± 14%     16.90 ±  2%       ~ (p=0.128 n=7)
Delete/sqlite/2-workers-4                   16.21 ±  4%
Delete/sqlite/4-workers-4                   16.18 ± 10%     16.44 ± 11%       ~ (p=0.594 n=7)
Delete/sqlite/8-workers-4                   15.65 ±  5%
Delete/sqlite/16-workers-4                  14.07 ± 10%     14.87 ±  6%       ~ (p=0.259 n=7)
Delete/dqlite/1-workers-4                   15.37 ±  1%     15.41 ±  1%       ~ (p=0.934 n=7)
Delete/dqlite/2-workers-4                   13.38 ±  1%
Delete/dqlite/4-workers-4                   13.44 ±  1%     13.33 ±  1%  -0.82% (p=0.006 n=7)
Delete/dqlite/8-workers-4                   13.32 ±  1%
Delete/dqlite/16-workers-4                  13.39 ±  2%     13.29 ±  2%       ~ (p=0.692 n=7)
Get/sqlite-4                                14.96 ±  0%     14.96 ±  0%       ~ (p=0.883 n=7)
Get/dqlite-4                                11.96 ±  0%     11.97 ±  0%       ~ (p=0.753 n=7)
List/sqlite-tiny/all-4                     192.1m ±  0%    192.2m ±  0%       ~ (p=0.225 n=7)
List/sqlite-tiny/pagination-4               1.132 ±  0%     1.132 ±  0%       ~ (p=1.000 n=7)
List/sqlite-fits-in-page/all-4             164.7m ±  0%    164.7m ±  0%       ~ (p=0.692 n=7)
List/sqlite-fits-in-page/pagination-4      965.5m ±  3%    965.7m ±  3%       ~ (p=0.681 n=7)
List/sqlite-overflows-page/all-4           253.3m ± 24%    251.5m ± 23%       ~ (p=0.456 n=7)
List/sqlite-overflows-page/pagination-4     2.080 ±  0%     2.080 ±  2%       ~ (p=0.392 n=7)
List/dqlite-tiny/all-4                     190.8m ±  1%    190.9m ±  0%       ~ (p=1.000 n=7)
List/dqlite-tiny/pagination-4               1.126 ±  0%     1.126 ±  3%       ~ (p=0.731 n=7)
List/dqlite-fits-in-page/all-4             163.1m ± 59%    163.2m ± 59%       ~ (p=0.108 n=7)
List/dqlite-fits-in-page/pagination-4      954.4m ±  0%    954.2m ±  3%       ~ (p=0.854 n=7)
List/dqlite-overflows-page/all-4           182.7m ±  0%    182.8m ±  0%       ~ (p=0.204 n=7)
List/dqlite-overflows-page/pagination-4     1.070 ±  3%     1.070 ±  3%       ~ (p=0.277 n=7)
Update/sqlite/1-workers-4                   16.27 ±  1%     16.27 ±  1%       ~ (p=0.642 n=7)
Update/sqlite/2-workers-4                   16.14 ± 16%
Update/sqlite/4-workers-4                   16.03 ±  2%     15.67 ±  3%       ~ (p=0.076 n=7)
Update/sqlite/8-workers-4                   15.62 ±  2%
Update/sqlite/16-workers-4                  14.97 ±  4%     14.62 ±  6%       ~ (p=0.165 n=7)
Update/dqlite/1-workers-4                   15.17 ±  1%     15.26 ±  1%       ~ (p=0.266 n=7)
Update/dqlite/2-workers-4                   12.92 ±  0%
Update/dqlite/4-workers-4                   12.84 ±  1%     12.89 ±  1%       ~ (p=0.124 n=7)
Update/dqlite/8-workers-4                   12.77 ±  0%
Update/dqlite/16-workers-4                  12.92 ±  1%     12.95 ±  1%       ~ (p=0.402 n=7)
Create/sqlite/64-workers-4                                  5.190 ± 32%
Create/sqlite/128-workers-4                                 5.130 ± 11%
Create/dqlite/64-workers-4                                  10.98 ±  1%
Create/dqlite/128-workers-4                                 11.05 ±  2%
Delete/sqlite/64-workers-4                                  7.868 ±  5%
Delete/sqlite/128-workers-4                                 6.610 ±  9%
Delete/dqlite/64-workers-4                                  13.40 ±  1%
Delete/dqlite/128-workers-4                                 13.31 ±  1%
Update/sqlite/64-workers-4                                  311.0 ± 89%
Update/sqlite/128-workers-4                                 581.0 ± 12%
Update/dqlite/64-workers-4                                  13.25 ±  3%
Update/dqlite/128-workers-4                                 13.38 ±  5%
geomean                                     5.683           6.091        +0.16%               ¹
¹ benchmark set differs from baseline; geomeans may not be comparable

                                        │     Before     │                  After                   │
                                        │ page-writes/op │ page-writes/op  vs base                  │
Compaction/sqlite-4                        207.3m ± 0%       207.5m ±  0%       ~ (p=0.076 n=7)
Compaction/dqlite-4                        187.6m ± 1%       187.8m ±  0%       ~ (p=0.685 n=7)
Create/sqlite/1-workers-4                   5.129 ± 1%        5.164 ±  1%       ~ (p=0.104 n=7)
Create/sqlite/2-workers-4                   5.126 ± 2%
Create/sqlite/4-workers-4                   5.121 ± 1%        5.122 ±  0%       ~ (p=0.471 n=7)
Create/sqlite/8-workers-4                   5.096 ± 0%
Create/sqlite/16-workers-4                  5.080 ± 1%        5.092 ±  1%  +0.24% (p=0.038 n=7)
Create/dqlite/1-workers-4                   4.250 ± 1%        4.217 ±  2%       ~ (p=0.196 n=7)
Create/dqlite/2-workers-4                   4.301 ± 0%
Create/dqlite/4-workers-4                   4.313 ± 0%        4.301 ±  1%       ~ (p=0.154 n=7)
Create/dqlite/8-workers-4                   4.293 ± 0%
Create/dqlite/16-workers-4                  4.283 ± 0%        4.283 ±  0%       ~ (p=0.730 n=7)
Delete/sqlite/1-workers-4                   5.289 ± 1%        5.301 ±  0%       ~ (p=0.516 n=7)
Delete/sqlite/2-workers-4                   5.281 ± 1%
Delete/sqlite/4-workers-4                   5.285 ± 1%        5.293 ±  1%       ~ (p=0.245 n=7)
Delete/sqlite/8-workers-4                   5.271 ± 1%
Delete/sqlite/16-workers-4                  5.285 ± 2%        5.256 ±  1%       ~ (p=0.780 n=7)
Delete/dqlite/1-workers-4                   4.383 ± 1%        4.367 ±  1%       ~ (p=0.573 n=7)
Delete/dqlite/2-workers-4                   4.368 ± 1%
Delete/dqlite/4-workers-4                   4.375 ± 1%        4.372 ±  0%       ~ (p=0.335 n=7)
Delete/dqlite/8-workers-4                   4.387 ± 0%
Delete/dqlite/16-workers-4                  4.372 ± 0%        4.370 ±  0%       ~ (p=0.696 n=7)
Get/sqlite-4                                0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
Get/dqlite-4                                0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/sqlite-tiny/all-4                      0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/sqlite-tiny/pagination-4               0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/sqlite-fits-in-page/all-4              0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/sqlite-fits-in-page/pagination-4       0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/sqlite-overflows-page/all-4            0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/sqlite-overflows-page/pagination-4     0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/dqlite-tiny/all-4                      0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/dqlite-tiny/pagination-4               0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/dqlite-fits-in-page/all-4              0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/dqlite-fits-in-page/pagination-4       0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/dqlite-overflows-page/all-4            0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
List/dqlite-overflows-page/pagination-4     0.000 ± 0%        0.000 ±  0%       ~ (p=1.000 n=7) ¹
Update/sqlite/1-workers-4                   5.181 ± 0%        5.180 ±  0%       ~ (p=0.362 n=7)
Update/sqlite/2-workers-4                   5.194 ± 1%
Update/sqlite/4-workers-4                   5.231 ± 2%        5.193 ±  2%  -0.73% (p=0.041 n=7)
Update/sqlite/8-workers-4                   5.236 ± 1%
Update/sqlite/16-workers-4                  5.226 ± 1%        5.159 ±  2%       ~ (p=0.097 n=7)
Update/dqlite/1-workers-4                   4.219 ± 1%        4.220 ±  1%       ~ (p=0.584 n=7)
Update/dqlite/2-workers-4                   4.254 ± 1%
Update/dqlite/4-workers-4                   4.219 ± 1%        4.210 ±  1%       ~ (p=0.618 n=7)
Update/dqlite/8-workers-4                   4.224 ± 1%
Update/dqlite/16-workers-4                  4.241 ± 1%        4.240 ±  1%       ~ (p=0.646 n=7)
Create/sqlite/64-workers-4                                    5.000 ±  0%
Create/sqlite/128-workers-4                                   5.000 ±  0%
Create/dqlite/64-workers-4                                    4.284 ±  1%
Create/dqlite/128-workers-4                                   4.286 ±  2%
Delete/sqlite/64-workers-4                                    5.070 ±  1%
Delete/sqlite/128-workers-4                                   5.070 ±  0%
Delete/dqlite/64-workers-4                                    4.355 ±  1%
Delete/dqlite/128-workers-4                                   4.353 ±  0%
Update/sqlite/64-workers-4                                    320.0 ± 89%
Update/sqlite/128-workers-4                                   642.0 ±  0%
Update/dqlite/64-workers-4                                    4.327 ±  3%
Update/dqlite/128-workers-4                                   4.530 ±  6%
geomean                                                ²                   -0.08%               ³ ²
¹ all samples are equal
² summaries must be >0 to compute geomean
³ benchmark set differs from baseline; geomeans may not be comparable

                                        │     Before      │                 After                  │
                                        │ sec-reading/op  │ sec-reading/op  vs base                │
Compaction/sqlite-4                        116.2µ ±    9%    122.1µ ±   8%       ~ (p=0.620 n=7)
Compaction/dqlite-4                        21.20µ ±   24%    23.20µ ±  76%       ~ (p=0.089 n=7)
Create/sqlite/1-workers-4                  33.80µ ±  355%    55.60µ ± 197%       ~ (p=0.318 n=7)
Create/sqlite/2-workers-4                  132.3µ ±  372%
Create/sqlite/4-workers-4                  38.10µ ±   76%    40.00µ ± 262%       ~ (p=0.535 n=7)
Create/sqlite/8-workers-4                  41.20µ ±   36%
Create/sqlite/16-workers-4                 343.0µ ±  629%    157.8µ ± 280%       ~ (p=0.805 n=7)
Create/dqlite/1-workers-4                  9.200µ ±  115%   13.600µ ±  35%       ~ (p=0.383 n=7)
Create/dqlite/2-workers-4                  11.10µ ±   29%
Create/dqlite/4-workers-4                  10.50µ ±   79%    12.30µ ±  68%       ~ (p=0.259 n=7)
Create/dqlite/8-workers-4                  12.30µ ±   42%
Create/dqlite/16-workers-4                 12.30µ ±   33%    11.70µ ±  43%       ~ (p=0.833 n=7)
Delete/sqlite/1-workers-4                  267.7µ ±  327%    223.1µ ±  72%       ~ (p=0.128 n=7)
Delete/sqlite/2-workers-4                  288.8µ ±   69%
Delete/sqlite/4-workers-4                  203.8µ ±  437%    208.9µ ± 441%       ~ (p=0.902 n=7)
Delete/sqlite/8-workers-4                  402.6µ ±   90%
Delete/sqlite/16-workers-4                 489.6µ ±  194%    288.2µ ± 379%       ~ (p=0.902 n=7)
Delete/dqlite/1-workers-4                  16.10µ ±   31%    17.40µ ±  18%       ~ (p=0.456 n=7)
Delete/dqlite/2-workers-4                  14.80µ ±   34%
Delete/dqlite/4-workers-4                  15.70µ ±   38%    15.60µ ±  19%       ~ (p=0.805 n=7)
Delete/dqlite/8-workers-4                  16.70µ ±   16%
Delete/dqlite/16-workers-4                 16.50µ ±   29%    12.50µ ±  41%       ~ (p=0.155 n=7)
Get/sqlite-4                               82.10µ ±    7%    78.30µ ±   6%  -4.63% (p=0.048 n=7)
Get/dqlite-4                               30.10µ ±   20%    31.10µ ±  14%       ~ (p=0.929 n=7)
List/sqlite-tiny/all-4                     14.20µ ±    2%    14.10µ ±   2%       ~ (p=0.266 n=7)
List/sqlite-tiny/pagination-4              18.80µ ±    5%    19.30µ ±   4%       ~ (p=0.230 n=7)
List/sqlite-fits-in-page/all-4             17.20µ ±   12%    15.60µ ±  15%       ~ (p=0.068 n=7)
List/sqlite-fits-in-page/pagination-4      60.00µ ±    5%    60.50µ ±   8%       ~ (p=0.732 n=7)
List/sqlite-overflows-page/all-4           55.70µ ±   13%    54.00µ ±  13%       ~ (p=0.643 n=7)
List/sqlite-overflows-page/pagination-4    167.4µ ±    3%    167.2µ ±   3%       ~ (p=0.902 n=7)
List/dqlite-tiny/all-4                     3.700µ ±   30%    3.800µ ±  26%       ~ (p=0.797 n=7)
List/dqlite-tiny/pagination-4              9.300µ ±    4%    8.900µ ±  16%       ~ (p=0.295 n=7)
List/dqlite-fits-in-page/all-4            10.000µ ±   14%    9.800µ ±  14%  -2.00% (p=0.046 n=7)
List/dqlite-fits-in-page/pagination-4      24.10µ ±    5%    26.20µ ±  13%       ~ (p=0.198 n=7)
List/dqlite-overflows-page/all-4           30.60µ ±    3%    30.70µ ±   6%       ~ (p=0.243 n=7)
List/dqlite-overflows-page/pagination-4    68.50µ ±   12%    61.20µ ±  30%       ~ (p=0.805 n=7)
Update/sqlite/1-workers-4                  30.70µ ±  341%    33.30µ ±  20%       ~ (p=0.831 n=7)
Update/sqlite/2-workers-4                  56.60µ ± 1766%
Update/sqlite/4-workers-4                  38.20µ ±  296%    40.90µ ± 434%       ~ (p=0.456 n=7)
Update/sqlite/8-workers-4                  42.80µ ±  401%
Update/sqlite/16-workers-4                 39.10µ ±  638%    42.10µ ± 333%       ~ (p=0.902 n=7)
Update/dqlite/1-workers-4                 10.600µ ±   34%    9.800µ ±  77%       ~ (p=0.902 n=7)
Update/dqlite/2-workers-4                  11.90µ ±   36%
Update/dqlite/4-workers-4                  12.80µ ±   20%    13.20µ ±  33%       ~ (p=0.684 n=7)
Update/dqlite/8-workers-4                  13.40µ ±   41%
Update/dqlite/16-workers-4                10.400µ ±   34%    9.900µ ±  62%       ~ (p=0.365 n=7)
Create/sqlite/64-workers-4                                   1.660m ± 486%
Create/sqlite/128-workers-4                                  1.120m ± 839%
Create/dqlite/64-workers-4                                   12.50µ ±  26%
Create/dqlite/128-workers-4                                  13.00µ ±  42%
Delete/sqlite/64-workers-4                                   990.0µ ± 147%
Delete/sqlite/128-workers-4                                  1.580m ± 306%
Delete/dqlite/64-workers-4                                   15.90µ ±  32%
Delete/dqlite/128-workers-4                                  14.30µ ±  33%
Update/sqlite/64-workers-4                                   56.33m ± 109%
Update/sqlite/128-workers-4                                  550.0m ± 111%
Update/dqlite/64-workers-4                                   13.30µ ±  32%
Update/dqlite/128-workers-4                                  11.50µ ±  27%
geomean                                    33.13µ            56.19µ         -1.57%               ¹
¹ benchmark set differs from baseline; geomeans may not be comparable

                                        │     Before     │                   After                   │
                                        │ sec-writing/op │ sec-writing/op  vs base                   │
Compaction/sqlite-4                       9.800µ ±  7%      9.800µ ±   3%        ~ (p=0.874 n=7)
Compaction/dqlite-4                       7.100µ ±  7%      7.100µ ±  14%        ~ (p=0.431 n=7)
Create/sqlite/1-workers-4                 926.4µ ±  6%      964.1µ ±   8%        ~ (p=0.318 n=7)
Create/sqlite/2-workers-4                 1.840m ± 13%
Create/sqlite/4-workers-4                 3.230m ± 19%      3.236m ±  27%        ~ (p=0.318 n=7)
Create/sqlite/8-workers-4                 7.649m ± 18%
Create/sqlite/16-workers-4                14.47m ± 18%      12.37m ±  23%        ~ (p=0.155 n=7)
Create/dqlite/1-workers-4                 43.80µ ± 39%      52.20µ ±  30%        ~ (p=0.073 n=7)
Create/dqlite/2-workers-4                 53.70µ ± 20%
Create/dqlite/4-workers-4                 49.00µ ± 18%      50.10µ ±  19%        ~ (p=0.833 n=7)
Create/dqlite/8-workers-4                 48.80µ ± 20%
Create/dqlite/16-workers-4                54.50µ ± 21%      55.50µ ±  17%        ~ (p=1.000 n=7)
Delete/sqlite/1-workers-4                 971.3µ ± 13%      910.6µ ±   7%   -6.25% (p=0.026 n=7)
Delete/sqlite/2-workers-4                 1.777m ± 26%
Delete/sqlite/4-workers-4                 4.277m ± 18%      3.032m ±  24%  -29.11% (p=0.001 n=7)
Delete/sqlite/8-workers-4                 7.657m ± 27%
Delete/sqlite/16-workers-4                13.42m ± 37%      13.35m ±  19%        ~ (p=0.620 n=7)
Delete/dqlite/1-workers-4                 47.50µ ± 25%      44.50µ ±  24%        ~ (p=0.273 n=7)
Delete/dqlite/2-workers-4                 53.10µ ± 18%
Delete/dqlite/4-workers-4                 51.10µ ± 24%      52.60µ ±  10%        ~ (p=0.685 n=7)
Delete/dqlite/8-workers-4                 52.50µ ± 30%
Delete/dqlite/16-workers-4                52.10µ ± 19%      59.90µ ±  21%  +14.97% (p=0.036 n=7)
Get/sqlite-4                               0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
Get/dqlite-4                               0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/sqlite-tiny/all-4                     0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/sqlite-tiny/pagination-4              0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/sqlite-fits-in-page/all-4             0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/sqlite-fits-in-page/pagination-4      0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/sqlite-overflows-page/all-4           0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/sqlite-overflows-page/pagination-4    0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/dqlite-tiny/all-4                     0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/dqlite-tiny/pagination-4              0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/dqlite-fits-in-page/all-4             0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/dqlite-fits-in-page/pagination-4      0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/dqlite-overflows-page/all-4           0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
List/dqlite-overflows-page/pagination-4    0.000 ±  0%       0.000 ±   0%        ~ (p=1.000 n=7) ¹
Update/sqlite/1-workers-4                 897.5µ ± 11%      941.7µ ±  19%        ~ (p=0.620 n=7)
Update/sqlite/2-workers-4                 1.685m ± 14%
Update/sqlite/4-workers-4                 3.522m ± 22%      3.529m ±  19%        ~ (p=0.710 n=7)
Update/sqlite/8-workers-4                 6.684m ± 37%
Update/sqlite/16-workers-4                14.25m ± 49%      15.54m ±  29%        ~ (p=0.535 n=7)
Update/dqlite/1-workers-4                 44.90µ ± 15%      42.40µ ±  30%        ~ (p=0.247 n=7)
Update/dqlite/2-workers-4                 57.40µ ± 25%
Update/dqlite/4-workers-4                 48.60µ ± 20%      47.60µ ±  20%        ~ (p=0.685 n=7)
Update/dqlite/8-workers-4                 49.90µ ± 15%
Update/dqlite/16-workers-4                46.90µ ± 25%      50.40µ ±  13%        ~ (p=0.805 n=7)
Create/sqlite/64-workers-4                                  160.4m ±  58%
Create/sqlite/128-workers-4                                 240.9m ± 132%
Create/dqlite/64-workers-4                                  49.50µ ±  25%
Create/dqlite/128-workers-4                                 47.80µ ±  19%
Delete/sqlite/64-workers-4                                  186.3m ± 104%
Delete/sqlite/128-workers-4                                 279.8m ± 105%
Delete/dqlite/64-workers-4                                  53.30µ ±  32%
Delete/dqlite/128-workers-4                                 53.50µ ±  27%
Update/sqlite/64-workers-4                                   14.61 ±  71%
Update/sqlite/128-workers-4                                  64.62 ±  97%
Update/dqlite/64-workers-4                                  48.90µ ±  29%
Update/dqlite/128-workers-4                                 56.00µ ±  20%
geomean                                                ²                    -0.23%               ³ ²
¹ all samples are equal
² summaries must be >0 to compute geomean
³ benchmark set differs from baseline; geomeans may not be comparable

                                        │    Before     │                 After                  │
                                        │     B/op      │      B/op       vs base                │
Compaction/sqlite-4                         685.0 ± 78%     819.0 ±  47%       ~ (p=0.620 n=7)
Compaction/dqlite-4                       3.411Ki ± 29%   3.849Ki ± 105%       ~ (p=0.209 n=7)
Create/sqlite/1-workers-4                 20.79Ki ±  0%   20.78Ki ±   0%       ~ (p=0.097 n=7)
Create/sqlite/2-workers-4                 20.79Ki ±  2%
Create/sqlite/4-workers-4                 20.80Ki ±  0%   20.81Ki ±   1%       ~ (p=1.000 n=7)
Create/sqlite/8-workers-4                 20.83Ki ±  0%
Create/sqlite/16-workers-4                20.56Ki ± 13%   20.45Ki ±   4%       ~ (p=0.710 n=7)
Create/dqlite/1-workers-4                 19.49Ki ±  0%   19.50Ki ±   0%       ~ (p=0.401 n=7)
Create/dqlite/2-workers-4                 19.47Ki ±  0%
Create/dqlite/4-workers-4                 19.46Ki ±  0%   19.47Ki ±   0%  +0.04% (p=0.013 n=7)
Create/dqlite/8-workers-4                 19.47Ki ±  0%
Create/dqlite/16-workers-4                19.48Ki ±  0%   19.48Ki ±   0%       ~ (p=0.123 n=7)
Delete/sqlite/1-workers-4                 22.84Ki ± 17%   23.17Ki ±   2%       ~ (p=0.097 n=7)
Delete/sqlite/2-workers-4                 22.76Ki ±  3%
Delete/sqlite/4-workers-4                 23.17Ki ±  9%   22.99Ki ±  10%       ~ (p=0.805 n=7)
Delete/sqlite/8-workers-4                 22.82Ki ±  5%
Delete/sqlite/16-workers-4                22.41Ki ± 16%   23.20Ki ±   7%       ~ (p=0.456 n=7)
Delete/dqlite/1-workers-4                 21.75Ki ±  0%   21.76Ki ±   0%       ~ (p=0.435 n=7)
Delete/dqlite/2-workers-4                 21.72Ki ±  0%
Delete/dqlite/4-workers-4                 21.73Ki ±  0%   21.73Ki ±   0%       ~ (p=0.120 n=7)
Delete/dqlite/8-workers-4                 21.72Ki ±  0%
Delete/dqlite/16-workers-4                21.73Ki ±  7%   21.74Ki ±   3%       ~ (p=0.383 n=7)
Get/sqlite-4                              25.08Ki ±  0%   25.07Ki ±   0%       ~ (p=0.153 n=7)
Get/dqlite-4                              22.88Ki ±  0%   22.88Ki ±   0%       ~ (p=0.365 n=7)
List/sqlite-tiny/all-4                    1.241Ki ±  2%   1.252Ki ±   1%       ~ (p=0.091 n=7)
List/sqlite-tiny/pagination-4             1.757Ki ±  3%   1.780Ki ±   3%       ~ (p=0.170 n=7)
List/sqlite-fits-in-page/all-4            5.054Ki ±  3%   5.062Ki ±   3%       ~ (p=0.902 n=7)
List/sqlite-fits-in-page/pagination-4     10.22Ki ±  1%   10.23Ki ±   1%       ~ (p=0.618 n=7)
List/sqlite-overflows-page/all-4          25.87Ki ±  5%   25.86Ki ±   5%       ~ (p=0.456 n=7)
List/sqlite-overflows-page/pagination-4   46.10Ki ±  0%   46.08Ki ±   0%       ~ (p=0.972 n=7)
List/dqlite-tiny/all-4                      854.0 ±  8%     854.0 ±   4%       ~ (p=0.734 n=7)
List/dqlite-tiny/pagination-4               841.0 ±  2%     848.0 ±   2%       ~ (p=0.177 n=7)
List/dqlite-fits-in-page/all-4            4.271Ki ±  1%   4.307Ki ±   1%  +0.82% (p=0.029 n=7)
List/dqlite-fits-in-page/pagination-4     4.343Ki ±  3%   4.308Ki ±   6%       ~ (p=1.000 n=7)
List/dqlite-overflows-page/all-4          21.07Ki ±  1%   21.22Ki ±   1%  +0.74% (p=0.035 n=7)
List/dqlite-overflows-page/pagination-4   22.55Ki ±  9%   22.12Ki ±   7%       ~ (p=0.259 n=7)
Update/sqlite/1-workers-4                 22.56Ki ±  1%   22.60Ki ±   0%  +0.14% (p=0.007 n=7)
Update/sqlite/2-workers-4                 22.59Ki ± 13%
Update/sqlite/4-workers-4                 22.65Ki ±  2%   22.64Ki ±   0%       ~ (p=0.902 n=7)
Update/sqlite/8-workers-4                 22.70Ki ±  1%
Update/sqlite/16-workers-4                22.93Ki ±  3%   22.67Ki ±   2%       ~ (p=0.535 n=7)
Update/dqlite/1-workers-4                 21.19Ki ±  0%   21.20Ki ±   0%       ~ (p=0.927 n=7)
Update/dqlite/2-workers-4                 21.19Ki ±  0%
Update/dqlite/4-workers-4                 21.21Ki ±  0%   21.21Ki ±   0%       ~ (p=0.383 n=7)
Update/dqlite/8-workers-4                 21.24Ki ±  0%
Update/dqlite/16-workers-4                21.38Ki ±  1%   21.24Ki ±   1%       ~ (p=0.477 n=7)
Create/sqlite/64-workers-4                                21.33Ki ±  10%
Create/sqlite/128-workers-4                               22.99Ki ±   5%
Create/dqlite/64-workers-4                                19.50Ki ±   4%
Create/dqlite/128-workers-4                               19.51Ki ±   0%
Delete/sqlite/64-workers-4                                25.05Ki ±   8%
Delete/sqlite/128-workers-4                               25.49Ki ±   6%
Delete/dqlite/64-workers-4                                21.74Ki ±   0%
Delete/dqlite/128-workers-4                               21.76Ki ±   0%
Update/sqlite/64-workers-4                                1.506Mi ±  89%
Update/sqlite/128-workers-4                               2.727Mi ±   5%
Update/dqlite/64-workers-4                                21.63Ki ±   3%
Update/dqlite/128-workers-4                               22.56Ki ±   5%
geomean                                   13.47Ki         16.66Ki         +1.01%               ¹
¹ benchmark set differs from baseline; geomeans may not be comparable

                                        │   Before    │                 After                 │
                                        │  allocs/op  │   allocs/op    vs base                │
Compaction/sqlite-4                       25.00 ± 88%    31.00 ±  52%       ~ (p=0.555 n=7)
Compaction/dqlite-4                       82.00 ± 29%    93.00 ± 105%       ~ (p=0.196 n=7)
Create/sqlite/1-workers-4                 446.0 ±  0%    446.0 ±   0%       ~ (p=1.000 n=7)
Create/sqlite/2-workers-4                 446.0 ±  3%
Create/sqlite/4-workers-4                 446.0 ±  0%    446.0 ±   2%       ~ (p=0.878 n=7)
Create/sqlite/8-workers-4                 446.0 ±  0%
Create/sqlite/16-workers-4                436.0 ± 18%    434.0 ±   6%       ~ (p=0.736 n=7)
Create/dqlite/1-workers-4                 363.0 ±  0%    363.0 ±   0%       ~ (p=1.000 n=7) ¹
Create/dqlite/2-workers-4                 363.0 ±  0%
Create/dqlite/4-workers-4                 363.0 ±  0%    363.0 ±   0%       ~ (p=1.000 n=7)
Create/dqlite/8-workers-4                 363.0 ±  0%
Create/dqlite/16-workers-4                363.0 ±  0%    363.0 ±   0%       ~ (p=1.000 n=7) ¹
Delete/sqlite/1-workers-4                 495.0 ± 27%    506.0 ±   3%       ~ (p=0.106 n=7)
Delete/sqlite/2-workers-4                 492.0 ±  4%
Delete/sqlite/4-workers-4                 503.0 ± 12%    499.0 ±  13%       ~ (p=0.738 n=7)
Delete/sqlite/8-workers-4                 492.0 ±  7%
Delete/sqlite/16-workers-4                479.0 ± 25%    504.0 ±  10%       ~ (p=0.435 n=7)
Delete/dqlite/1-workers-4                 393.0 ±  0%    393.0 ±   0%       ~ (p=1.000 n=7) ¹
Delete/dqlite/2-workers-4                 393.0 ±  0%
Delete/dqlite/4-workers-4                 393.0 ±  0%    393.0 ±   0%       ~ (p=1.000 n=7) ¹
Delete/dqlite/8-workers-4                 393.0 ±  0%
Delete/dqlite/16-workers-4                393.0 ±  9%    393.0 ±   3%       ~ (p=0.731 n=7)
Get/sqlite-4                              563.0 ±  0%    563.0 ±   0%       ~ (p=1.000 n=7) ¹
Get/dqlite-4                              407.0 ±  0%    407.0 ±   0%       ~ (p=1.000 n=7) ¹
List/sqlite-tiny/all-4                    40.00 ±  2%    41.00 ±   2%       ~ (p=0.266 n=7)
List/sqlite-tiny/pagination-4             61.00 ±  3%    61.00 ±   5%       ~ (p=0.461 n=7)
List/sqlite-fits-in-page/all-4            46.00 ±  4%    46.00 ±   4%       ~ (p=0.719 n=7)
List/sqlite-fits-in-page/pagination-4     93.00 ±  0%    93.00 ±   0%       ~ (p=1.000 n=7) ¹
List/sqlite-overflows-page/all-4          55.00 ±  5%    55.00 ±   4%       ~ (p=0.446 n=7)
List/sqlite-overflows-page/pagination-4   93.00 ±  0%    93.00 ±   0%       ~ (p=1.000 n=7) ¹
List/dqlite-tiny/all-4                    13.00 ±  8%    13.00 ±   8%       ~ (p=0.714 n=7)
List/dqlite-tiny/pagination-4             13.00 ±  0%    13.00 ±   0%       ~ (p=1.000 n=7) ¹
List/dqlite-fits-in-page/all-4            18.00 ±  6%    18.00 ±   0%       ~ (p=0.192 n=7)
List/dqlite-fits-in-page/pagination-4     18.00 ±  6%    18.00 ±  11%       ~ (p=1.000 n=7)
List/dqlite-overflows-page/all-4          29.00 ±  0%    29.00 ±   3%       ~ (p=0.462 n=7)
List/dqlite-overflows-page/pagination-4   32.00 ± 12%    31.00 ±  10%       ~ (p=0.299 n=7)
Update/sqlite/1-workers-4                 462.0 ±  2%    462.0 ±   0%       ~ (p=0.192 n=7)
Update/sqlite/2-workers-4                 462.0 ± 19%
Update/sqlite/4-workers-4                 463.0 ±  3%    462.0 ±   1%       ~ (p=0.735 n=7)
Update/sqlite/8-workers-4                 462.0 ±  1%
Update/sqlite/16-workers-4                465.0 ±  3%    462.0 ±   2%       ~ (p=0.329 n=7)
Update/dqlite/1-workers-4                 375.0 ±  0%    375.0 ±   0%       ~ (p=1.000 n=7) ¹
Update/dqlite/2-workers-4                 375.0 ±  0%
Update/dqlite/4-workers-4                 376.0 ±  0%    376.0 ±   0%       ~ (p=1.000 n=7)
Update/dqlite/8-workers-4                 376.0 ±  0%
Update/dqlite/16-workers-4                378.0 ±  1%    376.0 ±   1%       ~ (p=0.533 n=7)
Create/sqlite/64-workers-4                               412.0 ±  11%
Create/sqlite/128-workers-4                              454.0 ±   8%
Create/dqlite/64-workers-4                               363.0 ±   6%
Create/dqlite/128-workers-4                              362.0 ±   0%
Delete/sqlite/64-workers-4                               509.0 ±   9%
Delete/sqlite/128-workers-4                              509.0 ±   9%
Delete/dqlite/64-workers-4                               393.0 ±   0%
Delete/dqlite/128-workers-4                              393.0 ±   0%
Update/sqlite/64-workers-4                              29.25k ±  89%
Update/sqlite/128-workers-4                             53.22k ±  11%
Update/dqlite/64-workers-4                               383.0 ±   2%
Update/dqlite/128-workers-4                              399.0 ±   5%
geomean                                   199.3          244.3         +1.12%               ²
¹ all samples are equal
² benchmark set differs from baseline; geomeans may not be comparable

                                        │        Before         │                     After                     │
                                        │ network-bytes-read/op │ network-bytes-read/op  vs base                │
Compaction/dqlite-4                               1.228Ki ± 30%          1.391Ki ± 108%       ~ (p=0.209 n=7)
Create/dqlite/1-workers-4                           241.1 ±  0%            240.6 ±   0%       ~ (p=0.220 n=7)
Create/dqlite/2-workers-4                           242.2 ±  0%
Create/dqlite/4-workers-4                           242.3 ±  0%            242.2 ±   1%       ~ (p=0.515 n=7)
Create/dqlite/8-workers-4                           241.8 ±  0%
Create/dqlite/16-workers-4                          241.6 ±  0%            241.6 ±   0%       ~ (p=0.393 n=7)
Delete/dqlite/1-workers-4                           718.0 ±  0%            717.6 ±   0%       ~ (p=0.619 n=7)
Delete/dqlite/2-workers-4                           719.7 ±  0%
Delete/dqlite/4-workers-4                           719.6 ±  0%            718.9 ±   0%       ~ (p=0.131 n=7)
Delete/dqlite/8-workers-4                           719.5 ±  0%
Delete/dqlite/16-workers-4                          719.7 ±  9%            719.2 ±   3%       ~ (p=0.741 n=7)
Get/dqlite-4                                      1.132Ki ±  0%          1.132Ki ±   0%       ~ (p=1.000 n=7)
List/dqlite-tiny/all-4                              195.9 ± 13%            196.2 ±   5%       ~ (p=0.779 n=7)
List/dqlite-tiny/pagination-4                       190.0 ±  1%            191.0 ±   1%       ~ (p=0.132 n=7)
List/dqlite-fits-in-page/all-4                    1.219Ki ±  1%          1.236Ki ±   1%  +1.44% (p=0.009 n=7)
List/dqlite-fits-in-page/pagination-4             1.216Ki ±  4%          1.211Ki ±   9%       ~ (p=1.000 n=7)
List/dqlite-overflows-page/all-4                  6.162Ki ±  1%          6.233Ki ±   2%       ~ (p=0.053 n=7)
List/dqlite-overflows-page/pagination-4           6.776Ki ± 12%          6.526Ki ±  11%       ~ (p=0.128 n=7)
Update/dqlite/1-workers-4                           262.9 ±  0%            262.8 ±   0%       ~ (p=0.615 n=7)
Update/dqlite/2-workers-4                           263.0 ±  0%
Update/dqlite/4-workers-4                           263.3 ±  0%            263.3 ±   0%       ~ (p=0.508 n=7)
Update/dqlite/8-workers-4                           263.6 ±  0%
Update/dqlite/16-workers-4                          265.0 ±  1%            263.3 ±   1%       ~ (p=0.332 n=7)
Create/dqlite/64-workers-4                                                 241.6 ±  13%
Create/dqlite/128-workers-4                                                241.7 ±   1%
Delete/dqlite/64-workers-4                                                 719.6 ±   0%
Delete/dqlite/128-workers-4                                                719.6 ±   0%
Update/dqlite/64-workers-4                                                 267.8 ±   3%
Update/dqlite/128-workers-4                                                279.0 ±   5%
geomean                                             541.5                  545.7         +0.61%               ¹
¹ benchmark set differs from baseline; geomeans may not be comparable

                                        │          Before          │                      After                       │
                                        │ network-bytes-written/op │ network-bytes-written/op  vs base                │
Compaction/dqlite-4                                    4.275 ± 37%                4.318 ± 15%       ~ (p=0.805 n=7)
Create/dqlite/1-workers-4                              115.1 ±  1%                114.5 ±  2%       ~ (p=0.175 n=7)
Create/dqlite/2-workers-4                              117.4 ±  1%
Create/dqlite/4-workers-4                              117.7 ±  1%                117.3 ±  2%       ~ (p=0.397 n=7)
Create/dqlite/8-workers-4                              116.8 ±  1%
Create/dqlite/16-workers-4                             116.3 ±  1%                116.4 ±  1%       ~ (p=0.515 n=7)
Delete/dqlite/1-workers-4                              82.52 ±  0%                82.36 ±  1%       ~ (p=0.971 n=7)
Delete/dqlite/2-workers-4                              83.10 ±  1%
Delete/dqlite/4-workers-4                              83.17 ±  0%                82.95 ±  0%       ~ (p=0.097 n=7)
Delete/dqlite/8-workers-4                              83.19 ±  0%
Delete/dqlite/16-workers-4                             83.14 ± 25%                82.88 ±  9%       ~ (p=0.620 n=7)
Get/dqlite-4                                           80.51 ±  0%                80.57 ±  0%       ~ (p=0.316 n=7)
List/dqlite-tiny/all-4                               0.04010 ± 26%              0.04020 ± 10%       ~ (p=1.000 n=7)
List/dqlite-tiny/pagination-4                        0.04603 ±  3%              0.04583 ±  5%       ~ (p=0.902 n=7)
List/dqlite-fits-in-page/all-4                       0.05164 ±  2%              0.05299 ±  2%  +2.61% (p=0.026 n=7)
List/dqlite-fits-in-page/pagination-4                0.07266 ±  9%              0.07181 ± 13%       ~ (p=0.535 n=7)
List/dqlite-overflows-page/all-4                     0.06307 ±  3%              0.06412 ±  4%       ~ (p=0.165 n=7)
List/dqlite-overflows-page/pagination-4               0.1093 ±  8%               0.1087 ± 13%       ~ (p=0.383 n=7)
Update/dqlite/1-workers-4                              136.7 ±  0%                136.5 ±  0%       ~ (p=0.196 n=7)
Update/dqlite/2-workers-4                              136.6 ±  0%
Update/dqlite/4-workers-4                              136.8 ±  0%                136.8 ±  0%       ~ (p=0.684 n=7)
Update/dqlite/8-workers-4                              136.6 ±  1%
Update/dqlite/16-workers-4                             137.6 ±  1%                136.9 ±  1%       ~ (p=0.401 n=7)
Create/dqlite/64-workers-4                                                        116.3 ±  8%
Create/dqlite/128-workers-4                                                       116.4 ±  3%
Delete/dqlite/64-workers-4                                                        83.15 ±  1%
Delete/dqlite/128-workers-4                                                       83.16 ±  1%
Update/dqlite/64-workers-4                                                        139.5 ±  3%
Update/dqlite/128-workers-4                                                       145.1 ±  5%
geomean                                                13.27                      13.32        +0.07%               ¹
¹ benchmark set differs from baseline; geomeans may not be comparable
Current status
goos: linux
goarch: amd64
pkg: github.com/canonical/k8s-dqlite/test
cpu: AMD EPYC 7763 64-Core Processor                
                                        │    After     │
                                        │    sec/op    │
Compaction/sqlite-4                       41.01µ ± 12%
Compaction/dqlite-4                       42.33µ ± 16%
Create/sqlite/1-workers-4                 1.232m ±  6%
Create/sqlite/4-workers-4                 1.276m ±  8%
Create/sqlite/16-workers-4                1.530m ± 24%
Create/sqlite/64-workers-4                14.54m ± 31%
Create/sqlite/128-workers-4               18.44m ± 26%
Create/dqlite/1-workers-4                 1.012m ± 11%
Create/dqlite/4-workers-4                 917.2µ ± 10%
Create/dqlite/16-workers-4                934.3µ ±  8%
Create/dqlite/64-workers-4                955.3µ ± 13%
Create/dqlite/128-workers-4               945.1µ ± 10%
Delete/sqlite/1-workers-4                 1.192m ±  4%
Delete/sqlite/4-workers-4                 1.300m ± 13%
Delete/sqlite/16-workers-4                1.607m ± 24%
Delete/sqlite/64-workers-4                14.45m ± 84%
Delete/sqlite/128-workers-4               18.59m ± 54%
Delete/dqlite/1-workers-4                 1.018m ±  9%
Delete/dqlite/4-workers-4                 899.6µ ±  3%
Delete/dqlite/16-workers-4                918.7µ ±  6%
Delete/dqlite/64-workers-4                895.5µ ±  5%
Delete/dqlite/128-workers-4               895.0µ ±  3%
Get/sqlite-4                              269.3µ ±  0%
Get/dqlite-4                              361.2µ ±  1%
List/sqlite-tiny/all-4                    4.466µ ±  1%
List/sqlite-tiny/pagination-4             8.849µ ±  2%
List/sqlite-fits-in-page/all-4            7.138µ ±  4%
List/sqlite-fits-in-page/pagination-4     21.89µ ±  6%
List/sqlite-overflows-page/all-4          17.08µ ±  4%
List/sqlite-overflows-page/pagination-4   44.79µ ±  9%
List/dqlite-tiny/all-4                    2.769µ ±  4%
List/dqlite-tiny/pagination-4             5.829µ ±  1%
List/dqlite-fits-in-page/all-4            5.826µ ±  2%
List/dqlite-fits-in-page/pagination-4     15.69µ ±  4%
List/dqlite-overflows-page/all-4          17.68µ ±  5%
List/dqlite-overflows-page/pagination-4   39.71µ ± 11%
Update/sqlite/1-workers-4                 1.219m ± 15%
Update/sqlite/4-workers-4                 1.410m ± 10%
Update/sqlite/16-workers-4                1.792m ± 37%
Update/sqlite/64-workers-4                 1.373 ± 79%
Update/sqlite/128-workers-4                2.565 ± 51%
Update/dqlite/1-workers-4                 1.061m ±  3%
Update/dqlite/4-workers-4                 952.8µ ± 11%
Update/dqlite/16-workers-4                925.3µ ±  5%
Update/dqlite/64-workers-4                922.1µ ± 12%
Update/dqlite/128-workers-4               1.002m ±  9%
geomean                                   477.8µ

                                        │        After         │
                                        │ page-cache-misses/op │
Compaction/sqlite-4                               0.000 ± 0%
Compaction/dqlite-4                               0.000 ± 0%
Create/sqlite/1-workers-4                         0.000 ± 0%
Create/sqlite/4-workers-4                         0.000 ± 0%
Create/sqlite/16-workers-4                        0.000 ± 0%
Create/sqlite/64-workers-4                        0.000 ± 0%
Create/sqlite/128-workers-4                       0.000 ± 0%
Create/dqlite/1-workers-4                         0.000 ± 0%
Create/dqlite/4-workers-4                         0.000 ± 0%
Create/dqlite/16-workers-4                        0.000 ± 0%
Create/dqlite/64-workers-4                        0.000 ± 0%
Create/dqlite/128-workers-4                       0.000 ± 0%
Delete/sqlite/1-workers-4                         0.000 ± 0%
Delete/sqlite/4-workers-4                         0.000 ± 0%
Delete/sqlite/16-workers-4                        0.000 ± 0%
Delete/sqlite/64-workers-4                        0.000 ± 0%
Delete/sqlite/128-workers-4                       0.000 ± 0%
Delete/dqlite/1-workers-4                         0.000 ± 0%
Delete/dqlite/4-workers-4                         0.000 ± 0%
Delete/dqlite/16-workers-4                        0.000 ± 0%
Delete/dqlite/64-workers-4                        0.000 ± 0%
Delete/dqlite/128-workers-4                       0.000 ± 0%
Get/sqlite-4                                      0.000 ± 0%
Get/dqlite-4                                      0.000 ± 0%
List/sqlite-tiny/all-4                            0.000 ± 0%
List/sqlite-tiny/pagination-4                     0.000 ± 0%
List/sqlite-fits-in-page/all-4                    0.000 ± 0%
List/sqlite-fits-in-page/pagination-4             0.000 ± 0%
List/sqlite-overflows-page/all-4                  0.000 ± 0%
List/sqlite-overflows-page/pagination-4           0.000 ± 0%
List/dqlite-tiny/all-4                            0.000 ± 0%
List/dqlite-tiny/pagination-4                     0.000 ± 0%
List/dqlite-fits-in-page/all-4                    0.000 ± 0%
List/dqlite-fits-in-page/pagination-4             0.000 ± 0%
List/dqlite-overflows-page/all-4                  0.000 ± 0%
List/dqlite-overflows-page/pagination-4           0.000 ± 0%
Update/sqlite/1-workers-4                         0.000 ± 0%
Update/sqlite/4-workers-4                         0.000 ± 0%
Update/sqlite/16-workers-4                        0.000 ± 0%
Update/sqlite/64-workers-4                        0.000 ± 0%
Update/sqlite/128-workers-4                       0.000 ± 0%
Update/dqlite/1-workers-4                         0.000 ± 0%
Update/dqlite/4-workers-4                         0.000 ± 0%
Update/dqlite/16-workers-4                        0.000 ± 0%
Update/dqlite/64-workers-4                        0.000 ± 0%
Update/dqlite/128-workers-4                       0.000 ± 0%
geomean                                                      ¹
¹ summaries must be >0 to compute geomean

                                        │        After         │
                                        │ page-cache-spills/op │
Compaction/sqlite-4                               0.000 ± 0%
Compaction/dqlite-4                               0.000 ± 0%
Create/sqlite/1-workers-4                         0.000 ± 0%
Create/sqlite/4-workers-4                         0.000 ± 0%
Create/sqlite/16-workers-4                        0.000 ± 0%
Create/sqlite/64-workers-4                        0.000 ± 0%
Create/sqlite/128-workers-4                       0.000 ± 0%
Create/dqlite/1-workers-4                         0.000 ± 0%
Create/dqlite/4-workers-4                         0.000 ± 0%
Create/dqlite/16-workers-4                        0.000 ± 0%
Create/dqlite/64-workers-4                        0.000 ± 0%
Create/dqlite/128-workers-4                       0.000 ± 0%
Delete/sqlite/1-workers-4                         0.000 ± 0%
Delete/sqlite/4-workers-4                         0.000 ± 0%
Delete/sqlite/16-workers-4                        0.000 ± 0%
Delete/sqlite/64-workers-4                        0.000 ± 0%
Delete/sqlite/128-workers-4                       0.000 ± 0%
Delete/dqlite/1-workers-4                         0.000 ± 0%
Delete/dqlite/4-workers-4                         0.000 ± 0%
Delete/dqlite/16-workers-4                        0.000 ± 0%
Delete/dqlite/64-workers-4                        0.000 ± 0%
Delete/dqlite/128-workers-4                       0.000 ± 0%
Get/sqlite-4                                      0.000 ± 0%
Get/dqlite-4                                      0.000 ± 0%
List/sqlite-tiny/all-4                            0.000 ± 0%
List/sqlite-tiny/pagination-4                     0.000 ± 0%
List/sqlite-fits-in-page/all-4                    0.000 ± 0%
List/sqlite-fits-in-page/pagination-4             0.000 ± 0%
List/sqlite-overflows-page/all-4                  0.000 ± 0%
List/sqlite-overflows-page/pagination-4           0.000 ± 0%
List/dqlite-tiny/all-4                            0.000 ± 0%
List/dqlite-tiny/pagination-4                     0.000 ± 0%
List/dqlite-fits-in-page/all-4                    0.000 ± 0%
List/dqlite-fits-in-page/pagination-4             0.000 ± 0%
List/dqlite-overflows-page/all-4                  0.000 ± 0%
List/dqlite-overflows-page/pagination-4           0.000 ± 0%
Update/sqlite/1-workers-4                         0.000 ± 0%
Update/sqlite/4-workers-4                         0.000 ± 0%
Update/sqlite/16-workers-4                        0.000 ± 0%
Update/sqlite/64-workers-4                        0.000 ± 0%
Update/sqlite/128-workers-4                       0.000 ± 0%
Update/dqlite/1-workers-4                         0.000 ± 0%
Update/dqlite/4-workers-4                         0.000 ± 0%
Update/dqlite/16-workers-4                        0.000 ± 0%
Update/dqlite/64-workers-4                        0.000 ± 0%
Update/dqlite/128-workers-4                       0.000 ± 0%
geomean                                                      ¹
¹ summaries must be >0 to compute geomean

                                        │     After     │
                                        │ page-reads/op │
Compaction/sqlite-4                         12.21 ±  1%
Compaction/dqlite-4                         12.22 ±  1%
Create/sqlite/1-workers-4                   14.20 ±  1%
Create/sqlite/4-workers-4                   13.61 ±  2%
Create/sqlite/16-workers-4                  12.70 ±  4%
Create/sqlite/64-workers-4                  5.190 ± 32%
Create/sqlite/128-workers-4                 5.130 ± 11%
Create/dqlite/1-workers-4                   13.09 ±  2%
Create/dqlite/4-workers-4                   10.90 ±  2%
Create/dqlite/16-workers-4                  10.97 ±  1%
Create/dqlite/64-workers-4                  10.98 ±  1%
Create/dqlite/128-workers-4                 11.05 ±  2%
Delete/sqlite/1-workers-4                   16.90 ±  2%
Delete/sqlite/4-workers-4                   16.44 ± 11%
Delete/sqlite/16-workers-4                  14.87 ±  6%
Delete/sqlite/64-workers-4                  7.868 ±  5%
Delete/sqlite/128-workers-4                 6.610 ±  9%
Delete/dqlite/1-workers-4                   15.41 ±  1%
Delete/dqlite/4-workers-4                   13.33 ±  1%
Delete/dqlite/16-workers-4                  13.29 ±  2%
Delete/dqlite/64-workers-4                  13.40 ±  1%
Delete/dqlite/128-workers-4                 13.31 ±  1%
Get/sqlite-4                                14.96 ±  0%
Get/dqlite-4                                11.97 ±  0%
List/sqlite-tiny/all-4                     192.2m ±  0%
List/sqlite-tiny/pagination-4               1.132 ±  0%
List/sqlite-fits-in-page/all-4             164.7m ±  0%
List/sqlite-fits-in-page/pagination-4      965.7m ±  3%
List/sqlite-overflows-page/all-4           251.5m ± 23%
List/sqlite-overflows-page/pagination-4     2.080 ±  2%
List/dqlite-tiny/all-4                     190.9m ±  0%
List/dqlite-tiny/pagination-4               1.126 ±  3%
List/dqlite-fits-in-page/all-4             163.2m ± 59%
List/dqlite-fits-in-page/pagination-4      954.2m ±  3%
List/dqlite-overflows-page/all-4           182.8m ±  0%
List/dqlite-overflows-page/pagination-4     1.070 ±  3%
Update/sqlite/1-workers-4                   16.27 ±  1%
Update/sqlite/4-workers-4                   15.67 ±  3%
Update/sqlite/16-workers-4                  14.62 ±  6%
Update/sqlite/64-workers-4                  311.0 ± 89%
Update/sqlite/128-workers-4                 581.0 ± 12%
Update/dqlite/1-workers-4                   15.26 ±  1%
Update/dqlite/4-workers-4                   12.89 ±  1%
Update/dqlite/16-workers-4                  12.95 ±  1%
Update/dqlite/64-workers-4                  13.25 ±  3%
Update/dqlite/128-workers-4                 13.38 ±  5%
geomean                                     6.091

                                        │     After      │
                                        │ page-writes/op │
Compaction/sqlite-4                       207.5m ±  0%
Compaction/dqlite-4                       187.8m ±  0%
Create/sqlite/1-workers-4                  5.164 ±  1%
Create/sqlite/4-workers-4                  5.122 ±  0%
Create/sqlite/16-workers-4                 5.092 ±  1%
Create/sqlite/64-workers-4                 5.000 ±  0%
Create/sqlite/128-workers-4                5.000 ±  0%
Create/dqlite/1-workers-4                  4.217 ±  2%
Create/dqlite/4-workers-4                  4.301 ±  1%
Create/dqlite/16-workers-4                 4.283 ±  0%
Create/dqlite/64-workers-4                 4.284 ±  1%
Create/dqlite/128-workers-4                4.286 ±  2%
Delete/sqlite/1-workers-4                  5.301 ±  0%
Delete/sqlite/4-workers-4                  5.293 ±  1%
Delete/sqlite/16-workers-4                 5.256 ±  1%
Delete/sqlite/64-workers-4                 5.070 ±  1%
Delete/sqlite/128-workers-4                5.070 ±  0%
Delete/dqlite/1-workers-4                  4.367 ±  1%
Delete/dqlite/4-workers-4                  4.372 ±  0%
Delete/dqlite/16-workers-4                 4.370 ±  0%
Delete/dqlite/64-workers-4                 4.355 ±  1%
Delete/dqlite/128-workers-4                4.353 ±  0%
Get/sqlite-4                               0.000 ±  0%
Get/dqlite-4                               0.000 ±  0%
List/sqlite-tiny/all-4                     0.000 ±  0%
List/sqlite-tiny/pagination-4              0.000 ±  0%
List/sqlite-fits-in-page/all-4             0.000 ±  0%
List/sqlite-fits-in-page/pagination-4      0.000 ±  0%
List/sqlite-overflows-page/all-4           0.000 ±  0%
List/sqlite-overflows-page/pagination-4    0.000 ±  0%
List/dqlite-tiny/all-4                     0.000 ±  0%
List/dqlite-tiny/pagination-4              0.000 ±  0%
List/dqlite-fits-in-page/all-4             0.000 ±  0%
List/dqlite-fits-in-page/pagination-4      0.000 ±  0%
List/dqlite-overflows-page/all-4           0.000 ±  0%
List/dqlite-overflows-page/pagination-4    0.000 ±  0%
Update/sqlite/1-workers-4                  5.180 ±  0%
Update/sqlite/4-workers-4                  5.193 ±  2%
Update/sqlite/16-workers-4                 5.159 ±  2%
Update/sqlite/64-workers-4                 320.0 ± 89%
Update/sqlite/128-workers-4                642.0 ±  0%
Update/dqlite/1-workers-4                  4.220 ±  1%
Update/dqlite/4-workers-4                  4.210 ±  1%
Update/dqlite/16-workers-4                 4.240 ±  1%
Update/dqlite/64-workers-4                 4.327 ±  3%
Update/dqlite/128-workers-4                4.530 ±  6%
geomean                                                ¹
¹ summaries must be >0 to compute geomean

                                        │     After      │
                                        │ sec-reading/op │
Compaction/sqlite-4                        122.1µ ±   8%
Compaction/dqlite-4                        23.20µ ±  76%
Create/sqlite/1-workers-4                  55.60µ ± 197%
Create/sqlite/4-workers-4                  40.00µ ± 262%
Create/sqlite/16-workers-4                 157.8µ ± 280%
Create/sqlite/64-workers-4                 1.660m ± 486%
Create/sqlite/128-workers-4                1.120m ± 839%
Create/dqlite/1-workers-4                  13.60µ ±  35%
Create/dqlite/4-workers-4                  12.30µ ±  68%
Create/dqlite/16-workers-4                 11.70µ ±  43%
Create/dqlite/64-workers-4                 12.50µ ±  26%
Create/dqlite/128-workers-4                13.00µ ±  42%
Delete/sqlite/1-workers-4                  223.1µ ±  72%
Delete/sqlite/4-workers-4                  208.9µ ± 441%
Delete/sqlite/16-workers-4                 288.2µ ± 379%
Delete/sqlite/64-workers-4                 990.0µ ± 147%
Delete/sqlite/128-workers-4                1.580m ± 306%
Delete/dqlite/1-workers-4                  17.40µ ±  18%
Delete/dqlite/4-workers-4                  15.60µ ±  19%
Delete/dqlite/16-workers-4                 12.50µ ±  41%
Delete/dqlite/64-workers-4                 15.90µ ±  32%
Delete/dqlite/128-workers-4                14.30µ ±  33%
Get/sqlite-4                               78.30µ ±   6%
Get/dqlite-4                               31.10µ ±  14%
List/sqlite-tiny/all-4                     14.10µ ±   2%
List/sqlite-tiny/pagination-4              19.30µ ±   4%
List/sqlite-fits-in-page/all-4             15.60µ ±  15%
List/sqlite-fits-in-page/pagination-4      60.50µ ±   8%
List/sqlite-overflows-page/all-4           54.00µ ±  13%
List/sqlite-overflows-page/pagination-4    167.2µ ±   3%
List/dqlite-tiny/all-4                     3.800µ ±  26%
List/dqlite-tiny/pagination-4              8.900µ ±  16%
List/dqlite-fits-in-page/all-4             9.800µ ±  14%
List/dqlite-fits-in-page/pagination-4      26.20µ ±  13%
List/dqlite-overflows-page/all-4           30.70µ ±   6%
List/dqlite-overflows-page/pagination-4    61.20µ ±  30%
Update/sqlite/1-workers-4                  33.30µ ±  20%
Update/sqlite/4-workers-4                  40.90µ ± 434%
Update/sqlite/16-workers-4                 42.10µ ± 333%
Update/sqlite/64-workers-4                 56.33m ± 109%
Update/sqlite/128-workers-4                550.0m ± 111%
Update/dqlite/1-workers-4                  9.800µ ±  77%
Update/dqlite/4-workers-4                  13.20µ ±  33%
Update/dqlite/16-workers-4                 9.900µ ±  62%
Update/dqlite/64-workers-4                 13.30µ ±  32%
Update/dqlite/128-workers-4                11.50µ ±  27%
geomean                                    56.19µ

                                        │      After      │
                                        │ sec-writing/op  │
Compaction/sqlite-4                       9.800µ ±   3%
Compaction/dqlite-4                       7.100µ ±  14%
Create/sqlite/1-workers-4                 964.1µ ±   8%
Create/sqlite/4-workers-4                 3.236m ±  27%
Create/sqlite/16-workers-4                12.37m ±  23%
Create/sqlite/64-workers-4                160.4m ±  58%
Create/sqlite/128-workers-4               240.9m ± 132%
Create/dqlite/1-workers-4                 52.20µ ±  30%
Create/dqlite/4-workers-4                 50.10µ ±  19%
Create/dqlite/16-workers-4                55.50µ ±  17%
Create/dqlite/64-workers-4                49.50µ ±  25%
Create/dqlite/128-workers-4               47.80µ ±  19%
Delete/sqlite/1-workers-4                 910.6µ ±   7%
Delete/sqlite/4-workers-4                 3.032m ±  24%
Delete/sqlite/16-workers-4                13.35m ±  19%
Delete/sqlite/64-workers-4                186.3m ± 104%
Delete/sqlite/128-workers-4               279.8m ± 105%
Delete/dqlite/1-workers-4                 44.50µ ±  24%
Delete/dqlite/4-workers-4                 52.60µ ±  10%
Delete/dqlite/16-workers-4                59.90µ ±  21%
Delete/dqlite/64-workers-4                53.30µ ±  32%
Delete/dqlite/128-workers-4               53.50µ ±  27%
Get/sqlite-4                               0.000 ±   0%
Get/dqlite-4                               0.000 ±   0%
List/sqlite-tiny/all-4                     0.000 ±   0%
List/sqlite-tiny/pagination-4              0.000 ±   0%
List/sqlite-fits-in-page/all-4             0.000 ±   0%
List/sqlite-fits-in-page/pagination-4      0.000 ±   0%
List/sqlite-overflows-page/all-4           0.000 ±   0%
List/sqlite-overflows-page/pagination-4    0.000 ±   0%
List/dqlite-tiny/all-4                     0.000 ±   0%
List/dqlite-tiny/pagination-4              0.000 ±   0%
List/dqlite-fits-in-page/all-4             0.000 ±   0%
List/dqlite-fits-in-page/pagination-4      0.000 ±   0%
List/dqlite-overflows-page/all-4           0.000 ±   0%
List/dqlite-overflows-page/pagination-4    0.000 ±   0%
Update/sqlite/1-workers-4                 941.7µ ±  19%
Update/sqlite/4-workers-4                 3.529m ±  19%
Update/sqlite/16-workers-4                15.54m ±  29%
Update/sqlite/64-workers-4                 14.61 ±  71%
Update/sqlite/128-workers-4                64.62 ±  97%
Update/dqlite/1-workers-4                 42.40µ ±  30%
Update/dqlite/4-workers-4                 47.60µ ±  20%
Update/dqlite/16-workers-4                50.40µ ±  13%
Update/dqlite/64-workers-4                48.90µ ±  29%
Update/dqlite/128-workers-4               56.00µ ±  20%
geomean                                                 ¹
¹ summaries must be >0 to compute geomean

                                        │     After      │
                                        │      B/op      │
Compaction/sqlite-4                         819.0 ±  47%
Compaction/dqlite-4                       3.849Ki ± 105%
Create/sqlite/1-workers-4                 20.78Ki ±   0%
Create/sqlite/4-workers-4                 20.81Ki ±   1%
Create/sqlite/16-workers-4                20.45Ki ±   4%
Create/sqlite/64-workers-4                21.33Ki ±  10%
Create/sqlite/128-workers-4               22.99Ki ±   5%
Create/dqlite/1-workers-4                 19.50Ki ±   0%
Create/dqlite/4-workers-4                 19.47Ki ±   0%
Create/dqlite/16-workers-4                19.48Ki ±   0%
Create/dqlite/64-workers-4                19.50Ki ±   4%
Create/dqlite/128-workers-4               19.51Ki ±   0%
Delete/sqlite/1-workers-4                 23.17Ki ±   2%
Delete/sqlite/4-workers-4                 22.99Ki ±  10%
Delete/sqlite/16-workers-4                23.20Ki ±   7%
Delete/sqlite/64-workers-4                25.05Ki ±   8%
Delete/sqlite/128-workers-4               25.49Ki ±   6%
Delete/dqlite/1-workers-4                 21.76Ki ±   0%
Delete/dqlite/4-workers-4                 21.73Ki ±   0%
Delete/dqlite/16-workers-4                21.74Ki ±   3%
Delete/dqlite/64-workers-4                21.74Ki ±   0%
Delete/dqlite/128-workers-4               21.76Ki ±   0%
Get/sqlite-4                              25.07Ki ±   0%
Get/dqlite-4                              22.88Ki ±   0%
List/sqlite-tiny/all-4                    1.252Ki ±   1%
List/sqlite-tiny/pagination-4             1.780Ki ±   3%
List/sqlite-fits-in-page/all-4            5.062Ki ±   3%
List/sqlite-fits-in-page/pagination-4     10.23Ki ±   1%
List/sqlite-overflows-page/all-4          25.86Ki ±   5%
List/sqlite-overflows-page/pagination-4   46.08Ki ±   0%
List/dqlite-tiny/all-4                      854.0 ±   4%
List/dqlite-tiny/pagination-4               848.0 ±   2%
List/dqlite-fits-in-page/all-4            4.307Ki ±   1%
List/dqlite-fits-in-page/pagination-4     4.308Ki ±   6%
List/dqlite-overflows-page/all-4          21.22Ki ±   1%
List/dqlite-overflows-page/pagination-4   22.12Ki ±   7%
Update/sqlite/1-workers-4                 22.60Ki ±   0%
Update/sqlite/4-workers-4                 22.64Ki ±   0%
Update/sqlite/16-workers-4                22.67Ki ±   2%
Update/sqlite/64-workers-4                1.506Mi ±  89%
Update/sqlite/128-workers-4               2.727Mi ±   5%
Update/dqlite/1-workers-4                 21.20Ki ±   0%
Update/dqlite/4-workers-4                 21.21Ki ±   0%
Update/dqlite/16-workers-4                21.24Ki ±   1%
Update/dqlite/64-workers-4                21.63Ki ±   3%
Update/dqlite/128-workers-4               22.56Ki ±   5%
geomean                                   16.66Ki

                                        │     After     │
                                        │   allocs/op   │
Compaction/sqlite-4                        31.00 ±  52%
Compaction/dqlite-4                        93.00 ± 105%
Create/sqlite/1-workers-4                  446.0 ±   0%
Create/sqlite/4-workers-4                  446.0 ±   2%
Create/sqlite/16-workers-4                 434.0 ±   6%
Create/sqlite/64-workers-4                 412.0 ±  11%
Create/sqlite/128-workers-4                454.0 ±   8%
Create/dqlite/1-workers-4                  363.0 ±   0%
Create/dqlite/4-workers-4                  363.0 ±   0%
Create/dqlite/16-workers-4                 363.0 ±   0%
Create/dqlite/64-workers-4                 363.0 ±   6%
Create/dqlite/128-workers-4                362.0 ±   0%
Delete/sqlite/1-workers-4                  506.0 ±   3%
Delete/sqlite/4-workers-4                  499.0 ±  13%
Delete/sqlite/16-workers-4                 504.0 ±  10%
Delete/sqlite/64-workers-4                 509.0 ±   9%
Delete/sqlite/128-workers-4                509.0 ±   9%
Delete/dqlite/1-workers-4                  393.0 ±   0%
Delete/dqlite/4-workers-4                  393.0 ±   0%
Delete/dqlite/16-workers-4                 393.0 ±   3%
Delete/dqlite/64-workers-4                 393.0 ±   0%
Delete/dqlite/128-workers-4                393.0 ±   0%
Get/sqlite-4                               563.0 ±   0%
Get/dqlite-4                               407.0 ±   0%
List/sqlite-tiny/all-4                     41.00 ±   2%
List/sqlite-tiny/pagination-4              61.00 ±   5%
List/sqlite-fits-in-page/all-4             46.00 ±   4%
List/sqlite-fits-in-page/pagination-4      93.00 ±   0%
List/sqlite-overflows-page/all-4           55.00 ±   4%
List/sqlite-overflows-page/pagination-4    93.00 ±   0%
List/dqlite-tiny/all-4                     13.00 ±   8%
List/dqlite-tiny/pagination-4              13.00 ±   0%
List/dqlite-fits-in-page/all-4             18.00 ±   0%
List/dqlite-fits-in-page/pagination-4      18.00 ±  11%
List/dqlite-overflows-page/all-4           29.00 ±   3%
List/dqlite-overflows-page/pagination-4    31.00 ±  10%
Update/sqlite/1-workers-4                  462.0 ±   0%
Update/sqlite/4-workers-4                  462.0 ±   1%
Update/sqlite/16-workers-4                 462.0 ±   2%
Update/sqlite/64-workers-4                29.25k ±  89%
Update/sqlite/128-workers-4               53.22k ±  11%
Update/dqlite/1-workers-4                  375.0 ±   0%
Update/dqlite/4-workers-4                  376.0 ±   0%
Update/dqlite/16-workers-4                 376.0 ±   1%
Update/dqlite/64-workers-4                 383.0 ±   2%
Update/dqlite/128-workers-4                399.0 ±   5%
geomean                                    244.3

                                        │         After         │
                                        │ network-bytes-read/op │
Compaction/dqlite-4                              1.391Ki ± 108%
Create/dqlite/1-workers-4                          240.6 ±   0%
Create/dqlite/4-workers-4                          242.2 ±   1%
Create/dqlite/16-workers-4                         241.6 ±   0%
Create/dqlite/64-workers-4                         241.6 ±  13%
Create/dqlite/128-workers-4                        241.7 ±   1%
Delete/dqlite/1-workers-4                          717.6 ±   0%
Delete/dqlite/4-workers-4                          718.9 ±   0%
Delete/dqlite/16-workers-4                         719.2 ±   3%
Delete/dqlite/64-workers-4                         719.6 ±   0%
Delete/dqlite/128-workers-4                        719.6 ±   0%
Get/dqlite-4                                     1.132Ki ±   0%
List/dqlite-tiny/all-4                             196.2 ±   5%
List/dqlite-tiny/pagination-4                      191.0 ±   1%
List/dqlite-fits-in-page/all-4                   1.236Ki ±   1%
List/dqlite-fits-in-page/pagination-4            1.211Ki ±   9%
List/dqlite-overflows-page/all-4                 6.233Ki ±   2%
List/dqlite-overflows-page/pagination-4          6.526Ki ±  11%
Update/dqlite/1-workers-4                          262.8 ±   0%
Update/dqlite/4-workers-4                          263.3 ±   0%
Update/dqlite/16-workers-4                         263.3 ±   1%
Update/dqlite/64-workers-4                         267.8 ±   3%
Update/dqlite/128-workers-4                        279.0 ±   5%
geomean                                            545.7

                                        │          After           │
                                        │ network-bytes-written/op │
Compaction/dqlite-4                                    4.318 ± 15%
Create/dqlite/1-workers-4                              114.5 ±  2%
Create/dqlite/4-workers-4                              117.3 ±  2%
Create/dqlite/16-workers-4                             116.4 ±  1%
Create/dqlite/64-workers-4                             116.3 ±  8%
Create/dqlite/128-workers-4                            116.4 ±  3%
Delete/dqlite/1-workers-4                              82.36 ±  1%
Delete/dqlite/4-workers-4                              82.95 ±  0%
Delete/dqlite/16-workers-4                             82.88 ±  9%
Delete/dqlite/64-workers-4                             83.15 ±  1%
Delete/dqlite/128-workers-4                            83.16 ±  1%
Get/dqlite-4                                           80.57 ±  0%
List/dqlite-tiny/all-4                               0.04020 ± 10%
List/dqlite-tiny/pagination-4                        0.04583 ±  5%
List/dqlite-fits-in-page/all-4                       0.05299 ±  2%
List/dqlite-fits-in-page/pagination-4                0.07181 ± 13%
List/dqlite-overflows-page/all-4                     0.06412 ±  4%
List/dqlite-overflows-page/pagination-4               0.1087 ± 13%
Update/dqlite/1-workers-4                              136.5 ±  0%
Update/dqlite/4-workers-4                              136.8 ±  0%
Update/dqlite/16-workers-4                             136.9 ±  1%
Update/dqlite/64-workers-4                             139.5 ±  3%
Update/dqlite/128-workers-4                            145.1 ±  5%
geomean                                                13.32

@louiseschmidtgen louiseschmidtgen changed the title Increas parallelism for write benchmarks Increase parallelism for write benchmarks Sep 30, 2024
Copy link
Contributor

@louiseschmidtgen louiseschmidtgen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's do it!

@marco6 marco6 merged commit e4c74a0 into master Oct 1, 2024
7 checks passed
@marco6 marco6 deleted the increase-benchmark-parallelism branch October 1, 2024 06:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants