Skip to content

Commit

Permalink
Benchmarks: report tx/s as elements/s (#345)
Browse files Browse the repository at this point in the history
Based on my limited understanding of Criterion,
I think we can get add transactions per second reporting to benchmarks
using Criterion's Throughput::Elements tracking,
by treating transactions as elements.

This is not ideal, as the output says e.g.
`thrpt:  [38.763 Kelem/s 38.781 Kelem/s 38.799 Kelem/s]`,
where we'd like `Ktx/s`,
but it's not clear whether Criterion allows us that much customization.

Each of the benchmarks currently does one tx per iteration,
so pass `Throughput::Elements(1)` for each of them.
Do this as close to the test as possible, despite redundancy,
in case we ever add benchmarks to the same group
which do multiple transactions per iteration.
  • Loading branch information
gefjon authored Sep 30, 2023
1 parent 010c7e3 commit 97ed85e
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions crates/bench/benches/generic.rs
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,9 @@ fn insert_1<DB: BenchDatabase, T: BenchTable + RandomTable>(
let id = format!("insert_1/{table_params}/load={load}");
let data = create_sequential::<T>(0xdeadbeef, load + 1, 1000);

// Each iteration performs one transaction.
g.throughput(criterion::Throughput::Elements(1));

g.bench_function(&id, |b| {
bench_harness(
b,
Expand Down Expand Up @@ -181,6 +184,9 @@ fn insert_bulk<DB: BenchDatabase, T: BenchTable + RandomTable>(
let id = format!("insert_bulk/{table_params}/load={load}/count={count}");
let data = create_sequential::<T>(0xdeadbeef, load + count, 1000);

// Each iteration performs one transaction, though it inserts many rows.
g.throughput(criterion::Throughput::Elements(1));

g.bench_function(&id, |b| {
bench_harness(
b,
Expand Down Expand Up @@ -217,6 +223,10 @@ fn iterate<DB: BenchDatabase, T: BenchTable + RandomTable>(

db.insert_bulk(table_id, data)?;

// Each iteration performs a single transaction,
// though it iterates across many rows.
g.throughput(criterion::Throughput::Elements(1));

g.bench_function(&id, |b| {
bench_harness(
b,
Expand Down Expand Up @@ -261,6 +271,9 @@ fn filter<DB: BenchDatabase, T: BenchTable + RandomTable>(

db.insert_bulk(&table_id, data.clone())?;

// Each iteration performs a single transaction.
g.throughput(criterion::Throughput::Elements(1));

// We loop through all buckets found in the sample data.
// This mildly increases variance on the benchmark, but makes "mean_result_count" more accurate.
// Note that all databases have EXACTLY the same sample data.
Expand Down Expand Up @@ -308,6 +321,9 @@ fn find<DB: BenchDatabase, T: BenchTable + RandomTable>(

db.insert_bulk(&table_id, data.clone())?;

// Each iteration performs a single transaction.
g.throughput(criterion::Throughput::Elements(1));

// We loop through all buckets found in the sample data.
// This mildly increases variance on the benchmark, but makes "mean_result_count" more accurate.
// Note that all benchmarks use exactly the same sample data.
Expand Down

1 comment on commit 97ed85e

@github-actions
Copy link

Choose a reason for hiding this comment

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

Benchmark for 97ed85e

Click to view benchmark
Test Base PR %
serialize/location/bsatn/count=100 2.4±0.06µs 39.6 MElem/sec N/A N/A
serialize/location/json/count=100 3.7±0.04µs 26.1 MElem/sec N/A N/A
serialize/location/product_value/count=100 2.6±0.05µs 36.5 MElem/sec N/A N/A
serialize/person/bsatn/count=100 3.0±0.03µs 31.3 MElem/sec N/A N/A
serialize/person/json/count=100 5.3±0.07µs 17.9 MElem/sec N/A N/A
serialize/person/product_value/count=100 1784.0±16.70ns 53.5 MElem/sec N/A N/A
sqlite/disk/empty 434.4±7.83ns 431.7±4.81ns -0.62%
sqlite/disk/filter/string/indexed/load=1000/count=10 5.5±0.12µs 5.5±0.07µs 178.1 KElem/sec +99999900.00%
sqlite/disk/filter/string/non_indexed/load=1000/count=10 51.3±0.65µs 53.2±0.89µs 18.3 KElem/sec +103703603.70%
sqlite/disk/filter/u64/indexed/load=1000/count=10 5.3±0.07µs 5.5±0.13µs 179.0 KElem/sec +103773484.91%
sqlite/disk/filter/u64/non_indexed/load=1000/count=10 39.6±0.45µs 42.9±0.29µs 22.7 KElem/sec +108333233.33%
sqlite/disk/find_unique/u32/load=1000 2.2±0.03µs 2.2±0.03µs 447.2 KElem/sec +99999900.00%
sqlite/disk/insert_1/location/multi_index/load=0 14.4±0.37µs 14.7±0.37µs 66.5 KElem/sec +102083233.33%
sqlite/disk/insert_1/location/multi_index/load=1000 17.2±1.68µs 16.9±1.32µs 57.7 KElem/sec +98255713.95%
sqlite/disk/insert_1/location/non_unique/load=0 7.0±0.23µs 7.3±0.18µs 134.5 KElem/sec +104285614.29%
sqlite/disk/insert_1/location/non_unique/load=1000 6.9±0.34µs 7.3±0.48µs 133.9 KElem/sec +105797001.45%
sqlite/disk/insert_1/location/unique/load=0 7.0±0.19µs 7.3±0.19µs 134.4 KElem/sec +104285614.29%
sqlite/disk/insert_1/location/unique/load=1000 7.0±0.37µs 7.1±0.32µs 136.7 KElem/sec +101428471.43%
sqlite/disk/insert_1/person/multi_index/load=0 14.5±0.39µs 14.8±0.62µs 66.0 KElem/sec +102068865.52%
sqlite/disk/insert_1/person/multi_index/load=1000 17.3±1.27µs 17.4±1.38µs 56.2 KElem/sec +100577934.68%
sqlite/disk/insert_1/person/non_unique/load=0 7.1±0.20µs 7.4±0.32µs 131.9 KElem/sec +104225252.11%
sqlite/disk/insert_1/person/non_unique/load=1000 7.1±0.27µs 7.3±0.35µs 134.3 KElem/sec +102816801.41%
sqlite/disk/insert_1/person/unique/load=0 7.1±0.19µs 7.4±0.24µs 132.3 KElem/sec +104225252.11%
sqlite/disk/insert_1/person/unique/load=1000 7.5±0.45µs 7.4±0.38µs 131.9 KElem/sec +98666566.67%
sqlite/disk/insert_bulk/location/multi_index/load=0/count=100 123.8±2.09µs 123.0±0.78µs -0.65%
sqlite/disk/insert_bulk/location/multi_index/load=1000/count=100 202.7±7.14µs 206.6±5.71µs +1.92%
sqlite/disk/insert_bulk/location/non_unique/load=0/count=100 41.3±0.69µs 40.3±0.60µs 24.2 KElem/sec +97578592.49%
sqlite/disk/insert_bulk/location/non_unique/load=1000/count=100 45.7±1.09µs 45.0±0.75µs 21.7 KElem/sec +98468171.33%
sqlite/disk/insert_bulk/location/unique/load=0/count=100 43.8±0.63µs 42.8±0.68µs 22.8 KElem/sec +97716794.98%
sqlite/disk/insert_bulk/location/unique/load=1000/count=100 49.8±0.82µs 48.9±0.84µs 20.0 KElem/sec +98192671.08%
sqlite/disk/insert_bulk/person/multi_index/load=0/count=100 113.4±2.59µs 111.6±5.06µs -1.59%
sqlite/disk/insert_bulk/person/multi_index/load=1000/count=100 233.1±7.51µs 237.4±8.86µs +1.84%
sqlite/disk/insert_bulk/person/non_unique/load=0/count=100 40.7±0.73µs 40.7±0.65µs 24.0 KElem/sec +99999900.00%
sqlite/disk/insert_bulk/person/non_unique/load=1000/count=100 54.8±1.69µs 56.1±1.93µs 17.4 KElem/sec +102372162.77%
sqlite/disk/insert_bulk/person/unique/load=0/count=100 43.7±0.56µs 43.2±0.81µs 22.6 KElem/sec +98855735.24%
sqlite/disk/insert_bulk/person/unique/load=1000/count=100 49.7±1.12µs 49.9±0.89µs 19.6 KElem/sec +100402314.49%
sqlite/disk/iterate/location/unique/count=100 8.1±0.14µs 8.3±0.63µs 118.1 KElem/sec +102469035.80%
sqlite/disk/iterate/person/unique/count=100 8.4±0.15µs 8.3±0.11µs 117.7 KElem/sec +98809423.81%
sqlite/mem/empty 417.5±5.35ns 422.9±5.96ns +1.29%
sqlite/mem/filter/string/indexed/load=1000/count=10 4.1±0.06µs 4.0±0.08µs 245.5 KElem/sec +97560875.61%
sqlite/mem/filter/string/non_indexed/load=1000/count=10 50.5±1.20µs 51.7±1.09µs 18.9 KElem/sec +102376137.62%
sqlite/mem/filter/u64/indexed/load=1000/count=10 3.9±0.05µs 3.9±0.15µs 253.0 KElem/sec +99999900.00%
sqlite/mem/filter/u64/non_indexed/load=1000/count=10 38.8±0.48µs 37.6±0.48µs 26.0 KElem/sec +96907116.49%
sqlite/mem/find_unique/u32/load=1000 1043.9±14.49ns 1025.7±15.84ns 952.1 KElem/sec +98256537882.57%
sqlite/mem/insert_1/location/multi_index/load=0 4.3±0.05µs 4.2±0.06µs 231.3 KElem/sec +97674318.60%
sqlite/mem/insert_1/location/multi_index/load=1000 5.5±0.23µs 5.3±0.16µs 183.3 KElem/sec +96363536.36%
sqlite/mem/insert_1/location/non_unique/load=0 1791.7±23.97ns 1771.9±26.45ns 551.1 KElem/sec +98894904180.85%
sqlite/mem/insert_1/location/non_unique/load=1000 1835.9±41.81ns 1799.7±50.11ns 542.6 KElem/sec +98028214944.39%
sqlite/mem/insert_1/location/unique/load=0 1779.9±52.42ns 1793.9±30.83ns 544.4 KElem/sec +100786560942.76%
sqlite/mem/insert_1/location/unique/load=1000 1876.4±45.74ns 1880.0±45.58ns 519.4 KElem/sec +100191856646.96%
sqlite/mem/insert_1/person/multi_index/load=0 4.1±0.06µs 4.2±0.06µs 233.5 KElem/sec +102438924.39%
sqlite/mem/insert_1/person/multi_index/load=1000 6.4±0.17µs 6.5±0.44µs 150.6 KElem/sec +101562400.00%
sqlite/mem/insert_1/person/non_unique/load=0 1832.4±22.53ns 1851.8±25.90ns 527.3 KElem/sec +101058720703.32%
sqlite/mem/insert_1/person/non_unique/load=1000 1928.6±85.44ns 1989.9±65.80ns 490.8 KElem/sec +103178471330.05%
sqlite/mem/insert_1/person/unique/load=0 1804.0±31.73ns 1768.3±24.41ns 552.3 KElem/sec +98021064201.55%
sqlite/mem/insert_1/person/unique/load=1000 1977.3±68.69ns 2.0±0.06µs 488.0 KElem/sec +101147930.14%
sqlite/mem/insert_bulk/location/multi_index/load=0/count=100 110.3±1.07µs 108.1±1.86µs -1.99%
sqlite/mem/insert_bulk/location/multi_index/load=1000/count=100 165.6±2.45µs 162.8±2.33µs -1.69%
sqlite/mem/insert_bulk/location/non_unique/load=0/count=100 35.7±0.55µs 34.7±0.42µs 28.2 KElem/sec +97198779.55%
sqlite/mem/insert_bulk/location/non_unique/load=1000/count=100 38.4±0.78µs 37.5±0.67µs 26.0 KElem/sec +97656150.00%
sqlite/mem/insert_bulk/location/unique/load=0/count=100 37.8±0.50µs 36.8±0.64µs 26.5 KElem/sec +97354397.35%
sqlite/mem/insert_bulk/location/unique/load=1000/count=100 42.5±1.11µs 41.5±0.65µs 23.5 KElem/sec +97646958.82%
sqlite/mem/insert_bulk/person/multi_index/load=0/count=100 102.4±2.27µs 101.6±0.96µs -0.78%
sqlite/mem/insert_bulk/person/multi_index/load=1000/count=100 191.2±2.49µs 192.5±3.99µs +0.68%
sqlite/mem/insert_bulk/person/non_unique/load=0/count=100 35.1±0.55µs 35.1±0.38µs 27.8 KElem/sec +99999900.00%
sqlite/mem/insert_bulk/person/non_unique/load=1000/count=100 41.2±1.20µs 40.9±0.57µs 23.9 KElem/sec +99271744.66%
sqlite/mem/insert_bulk/person/unique/load=0/count=100 37.8±0.55µs 37.1±0.55µs 26.3 KElem/sec +98148048.15%
sqlite/mem/insert_bulk/person/unique/load=1000/count=100 42.8±0.54µs 42.1±0.75µs 23.2 KElem/sec +98364385.98%
sqlite/mem/iterate/location/unique/count=100 7.0±0.12µs 6.8±0.16µs 142.9 KElem/sec +97142757.14%
sqlite/mem/iterate/person/unique/count=100 7.3±0.09µs 7.2±0.14µs 136.1 KElem/sec +98630036.99%
stdb_module/disk/empty 23.9±0.91µs 23.6±0.95µs -1.26%
stdb_module/disk/filter/string/indexed/load=1000/count=10 55.2±4.94µs 51.8±5.65µs 18.8 KElem/sec +93840479.71%
stdb_module/disk/filter/string/non_indexed/load=1000/count=10 160.2±17.86µs 141.3±4.48µs -11.80%
stdb_module/disk/filter/u64/indexed/load=1000/count=10 46.0±4.57µs 46.4±5.48µs 21.0 KElem/sec +100869465.22%
stdb_module/disk/filter/u64/non_indexed/load=1000/count=10 115.5±14.91µs 115.0±4.60µs -0.43%
stdb_module/disk/find_unique/u32/load=1000 34.4±2.54µs 32.8±2.81µs 29.8 KElem/sec +95348737.21%
stdb_module/disk/insert_1/location/multi_index/load=0 48.0±6.14µs 48.6±4.04µs 20.1 KElem/sec +101249900.00%
stdb_module/disk/insert_1/location/multi_index/load=1000 380.6±30.90µs 373.0±40.36µs -2.00%
stdb_module/disk/insert_1/location/non_unique/load=0 42.7±3.30µs 41.0±2.07µs 23.8 KElem/sec +96018635.36%
stdb_module/disk/insert_1/location/non_unique/load=1000 307.1±23.26µs 312.1±25.23µs +1.63%
stdb_module/disk/insert_1/location/unique/load=0 45.8±2.90µs 46.6±4.53µs 21.0 KElem/sec +101746624.89%
stdb_module/disk/insert_1/location/unique/load=1000 352.5±22.81µs 325.8±33.83µs -7.57%
stdb_module/disk/insert_1/person/multi_index/load=0 59.3±5.35µs 57.1±5.59µs 17.1 KElem/sec +96289950.59%
stdb_module/disk/insert_1/person/multi_index/load=1000 438.9±30.74µs 466.2±50.36µs +6.22%
stdb_module/disk/insert_1/person/non_unique/load=0 45.8±3.88µs 43.0±3.06µs 22.7 KElem/sec +93886362.88%
stdb_module/disk/insert_1/person/non_unique/load=1000 304.4±28.15µs 354.6±35.58µs +16.49%
stdb_module/disk/insert_1/person/unique/load=0 50.7±4.93µs 51.9±4.41µs 18.8 KElem/sec +102366763.91%
stdb_module/disk/insert_1/person/unique/load=1000 368.8±30.06µs 392.5±33.01µs +6.43%
stdb_module/disk/insert_bulk/location/multi_index/load=0/count=100 855.4±27.48µs 850.3±15.23µs -0.60%
stdb_module/disk/insert_bulk/location/multi_index/load=1000/count=100 1118.9±44.67µs 1093.0±47.01µs -2.31%
stdb_module/disk/insert_bulk/location/non_unique/load=0/count=100 608.1±25.98µs 607.0±19.07µs -0.18%
stdb_module/disk/insert_bulk/location/non_unique/load=1000/count=100 790.0±37.00µs 841.7±34.74µs +6.54%
stdb_module/disk/insert_bulk/location/unique/load=0/count=100 716.6±14.03µs 720.0±12.26µs +0.47%
stdb_module/disk/insert_bulk/location/unique/load=1000/count=100 975.0±38.69µs 1010.5±462.38µs +3.64%
stdb_module/disk/insert_bulk/person/multi_index/load=0/count=100 1467.5±57.82µs 1504.2±38.55µs +2.50%
stdb_module/disk/insert_bulk/person/multi_index/load=1000/count=100 1740.9±57.84µs 1796.4±90.31µs +3.19%
stdb_module/disk/insert_bulk/person/non_unique/load=0/count=100 777.7±16.95µs 812.4±25.12µs +4.46%
stdb_module/disk/insert_bulk/person/non_unique/load=1000/count=100 1023.7±52.73µs 1001.7±34.03µs -2.15%
stdb_module/disk/insert_bulk/person/unique/load=0/count=100 999.5±27.44µs 989.3±10.96µs -1.02%
stdb_module/disk/insert_bulk/person/unique/load=1000/count=100 1329.3±86.48µs 1296.1±32.96µs -2.50%
stdb_module/disk/iterate/location/unique/count=100 132.2±2.85µs 135.3±4.09µs +2.34%
stdb_module/disk/iterate/person/unique/count=100 209.7±4.54µs 216.0±2.49µs +3.00%
stdb_module/large_arguments/64KiB 106.8±5.19µs 102.0±4.39µs -4.49%
stdb_module/mem/empty 25.2±1.34µs 25.6±2.48µs +1.59%
stdb_module/mem/filter/string/indexed/load=1000/count=10 59.2±6.30µs 58.1±7.44µs 16.8 KElem/sec +98141791.89%
stdb_module/mem/filter/string/non_indexed/load=1000/count=10 140.8±4.28µs 142.0±6.44µs +0.85%
stdb_module/mem/filter/u64/indexed/load=1000/count=10 47.9±5.51µs 46.3±4.83µs 21.1 KElem/sec +96659607.72%
stdb_module/mem/filter/u64/non_indexed/load=1000/count=10 110.9±1.46µs 114.3±1.79µs +3.07%
stdb_module/mem/find_unique/u32/load=1000 33.0±1.76µs 32.5±2.58µs 30.1 KElem/sec +98484748.48%
stdb_module/mem/insert_1/location/multi_index/load=0 44.0±2.41µs 41.7±3.97µs 23.4 KElem/sec +94772627.27%
stdb_module/mem/insert_1/location/multi_index/load=1000 319.9±41.17µs 342.4±19.48µs +7.03%
stdb_module/mem/insert_1/location/non_unique/load=0 38.0±2.08µs 38.0±2.67µs 25.7 KElem/sec +99999900.00%
stdb_module/mem/insert_1/location/non_unique/load=1000 238.6±17.69µs 191.8±35.13µs -19.61%
stdb_module/mem/insert_1/location/unique/load=0 40.3±2.26µs 40.2±2.33µs 24.3 KElem/sec +99751761.04%
stdb_module/mem/insert_1/location/unique/load=1000 279.7±31.01µs 286.6±29.91µs +2.47%
stdb_module/mem/insert_1/person/multi_index/load=0 46.0±2.61µs 45.8±4.03µs 21.3 KElem/sec +99565117.39%
stdb_module/mem/insert_1/person/multi_index/load=1000 474.9±41.40µs 265.9±58.57µs -44.01%
stdb_module/mem/insert_1/person/non_unique/load=0 42.3±3.18µs 40.3±3.16µs 24.2 KElem/sec +95271767.61%
stdb_module/mem/insert_1/person/non_unique/load=1000 334.1±19.95µs 283.9±37.51µs -15.03%
stdb_module/mem/insert_1/person/unique/load=0 44.0±3.78µs 43.0±4.08µs 22.7 KElem/sec +97727172.73%
stdb_module/mem/insert_1/person/unique/load=1000 297.5±76.69µs 379.3±33.48µs +27.50%
stdb_module/mem/insert_bulk/location/multi_index/load=0/count=100 742.5±10.65µs 761.9±24.92µs +2.61%
stdb_module/mem/insert_bulk/location/multi_index/load=1000/count=100 981.2±38.88µs 995.7±33.09µs +1.48%
stdb_module/mem/insert_bulk/location/non_unique/load=0/count=100 490.1±8.64µs 498.2±19.42µs +1.65%
stdb_module/mem/insert_bulk/location/non_unique/load=1000/count=100 590.6±25.19µs 615.6±41.05µs +4.23%
stdb_module/mem/insert_bulk/location/unique/load=0/count=100 605.8±16.87µs 610.3±12.93µs +0.74%
stdb_module/mem/insert_bulk/location/unique/load=1000/count=100 830.4±31.31µs 831.5±42.30µs +0.13%
stdb_module/mem/insert_bulk/person/multi_index/load=0/count=100 1324.8±30.05µs 1282.9±42.88µs -3.16%
stdb_module/mem/insert_bulk/person/multi_index/load=1000/count=100 1709.7±57.59µs 1619.4±65.25µs -5.28%
stdb_module/mem/insert_bulk/person/non_unique/load=0/count=100 699.4±25.48µs 677.4±13.77µs -3.15%
stdb_module/mem/insert_bulk/person/non_unique/load=1000/count=100 895.4±31.72µs 897.1±37.27µs +0.19%
stdb_module/mem/insert_bulk/person/unique/load=0/count=100 918.3±23.48µs 908.5±23.42µs -1.07%
stdb_module/mem/insert_bulk/person/unique/load=1000/count=100 1172.0±53.35µs 1186.9±37.93µs +1.27%
stdb_module/mem/iterate/location/unique/count=100 132.2±3.46µs 128.7±1.33µs -2.65%
stdb_module/mem/iterate/person/unique/count=100 218.6±4.46µs 216.1±3.89µs -1.14%
stdb_module/print_bulk/lines=1 37.0±3.80µs 33.2±1.62µs -10.27%
stdb_module/print_bulk/lines=100 319.6±5.52µs 325.1±13.75µs +1.72%
stdb_module/print_bulk/lines=1000 3.0±0.04ms 3.0±0.05ms 0.00%
stdb_raw/disk/empty 102.2±1.26ns 103.2±0.52ns +0.98%
stdb_raw/disk/filter/string/indexed/load=1000/count=10 2.6±0.03µs 2.6±0.05µs 371.9 KElem/sec +99999900.00%
stdb_raw/disk/filter/string/non_indexed/load=1000/count=10 92.7±0.85µs 95.0±2.14µs 10.3 KElem/sec +102481021.90%
stdb_raw/disk/filter/u64/indexed/load=1000/count=10 2.4±0.03µs 2.7±0.48µs 359.6 KElem/sec +112499900.00%
stdb_raw/disk/filter/u64/non_indexed/load=1000/count=10 76.5±0.84µs 76.7±2.32µs 12.7 KElem/sec +100261337.91%
stdb_raw/disk/find_unique/u32/load=1000 544.7±8.13ns 559.5±10.36ns 1745.5 KElem/sec +102717091877.24%
stdb_raw/disk/insert_1/location/multi_index/load=0 6.2±0.07µs 6.2±0.09µs 157.9 KElem/sec +99999900.00%
stdb_raw/disk/insert_1/location/multi_index/load=1000 32.6±5.49µs 34.0±3.93µs 28.8 KElem/sec +104294378.53%
stdb_raw/disk/insert_1/location/non_unique/load=0 4.0±0.04µs 4.0±0.03µs 245.3 KElem/sec +99999900.00%
stdb_raw/disk/insert_1/location/non_unique/load=1000 19.6±0.64µs 20.9±0.59µs 46.7 KElem/sec +106632553.06%
stdb_raw/disk/insert_1/location/unique/load=0 5.0±0.06µs 5.0±0.02µs 194.3 KElem/sec +99999900.00%
stdb_raw/disk/insert_1/location/unique/load=1000 26.1±1.10µs 27.7±9.58µs 35.2 KElem/sec +106130168.20%
stdb_raw/disk/insert_1/person/multi_index/load=0 10.3±0.16µs 10.3±0.16µs 94.7 KElem/sec +99999900.00%
stdb_raw/disk/insert_1/person/multi_index/load=1000 31.9±3.34µs 34.4±3.61µs 28.4 KElem/sec +107836890.60%
stdb_raw/disk/insert_1/person/non_unique/load=0 4.7±0.07µs 4.6±0.04µs 211.3 KElem/sec +97872240.43%
stdb_raw/disk/insert_1/person/non_unique/load=1000 16.2±2.37µs 17.0±0.52µs 57.4 KElem/sec +104938171.60%
stdb_raw/disk/insert_1/person/unique/load=0 6.9±0.15µs 6.9±0.07µs 142.3 KElem/sec +99999900.00%
stdb_raw/disk/insert_1/person/unique/load=1000 27.1±12.66µs 27.3±2.68µs 35.7 KElem/sec +100737907.38%
stdb_raw/disk/insert_bulk/location/multi_index/load=0/count=100 359.1±4.46µs 361.8±10.85µs +0.75%
stdb_raw/disk/insert_bulk/location/multi_index/load=1000/count=100 423.2±9.84µs 430.9±12.51µs +1.82%
stdb_raw/disk/insert_bulk/location/non_unique/load=0/count=100 163.9±2.78µs 164.6±2.76µs +0.43%
stdb_raw/disk/insert_bulk/location/non_unique/load=1000/count=100 190.6±7.04µs 190.7±5.92µs +0.05%
stdb_raw/disk/insert_bulk/location/unique/load=0/count=100 254.2±3.92µs 258.1±4.71µs +1.53%
stdb_raw/disk/insert_bulk/location/unique/load=1000/count=100 312.4±5.95µs 318.8±6.85µs +2.05%
stdb_raw/disk/insert_bulk/person/multi_index/load=0/count=100 735.6±24.02µs 744.3±9.83µs +1.18%
stdb_raw/disk/insert_bulk/person/multi_index/load=1000/count=100 798.8±13.83µs 825.1±8.74µs +3.29%
stdb_raw/disk/insert_bulk/person/non_unique/load=0/count=100 227.0±4.06µs 229.0±1.55µs +0.88%
stdb_raw/disk/insert_bulk/person/non_unique/load=1000/count=100 249.1±3.96µs 253.3±1.72µs +1.69%
stdb_raw/disk/insert_bulk/person/unique/load=0/count=100 415.0±7.49µs 419.5±2.00µs +1.08%
stdb_raw/disk/insert_bulk/person/unique/load=1000/count=100 468.5±7.86µs 479.9±15.76µs +2.43%
stdb_raw/disk/iterate/location/unique/count=100 6.9±0.08µs 6.9±0.06µs 141.9 KElem/sec +99999900.00%
stdb_raw/disk/iterate/person/unique/count=100 8.3±0.27µs 8.3±0.11µs 117.9 KElem/sec +99999900.00%
stdb_raw/mem/empty 102.2±2.27ns 102.3±1.69ns +0.10%
stdb_raw/mem/filter/string/indexed/load=1000/count=10 2.6±0.04µs 2.6±0.05µs 381.6 KElem/sec +99999900.00%
stdb_raw/mem/filter/string/non_indexed/load=1000/count=10 92.5±1.93µs 95.3±3.50µs 10.2 KElem/sec +103026927.03%
stdb_raw/mem/filter/u64/indexed/load=1000/count=10 2.4±0.04µs 2.4±0.05µs 406.9 KElem/sec +99999900.00%
stdb_raw/mem/filter/u64/non_indexed/load=1000/count=10 76.5±1.22µs 75.8±0.80µs 12.9 KElem/sec +99084867.32%
stdb_raw/mem/find_unique/u32/load=1000 547.4±6.51ns 560.8±10.63ns 1741.5 KElem/sec +102447935596.02%
stdb_raw/mem/insert_1/location/multi_index/load=0 4.8±0.18µs 4.7±0.07µs 208.2 KElem/sec +97916566.67%
stdb_raw/mem/insert_1/location/multi_index/load=1000 26.6±1.16µs 27.1±0.99µs 36.1 KElem/sec +101879599.25%
stdb_raw/mem/insert_1/location/non_unique/load=0 2.6±0.03µs 2.5±0.04µs 385.7 KElem/sec +96153746.15%
stdb_raw/mem/insert_1/location/non_unique/load=1000 18.1±0.90µs 18.1±0.45µs 54.0 KElem/sec +99999900.00%
stdb_raw/mem/insert_1/location/unique/load=0 3.4±0.05µs 3.5±0.09µs 280.3 KElem/sec +102941076.47%
stdb_raw/mem/insert_1/location/unique/load=1000 23.0±0.82µs 22.9±0.88µs 42.6 KElem/sec +99565117.39%
stdb_raw/mem/insert_1/person/multi_index/load=0 8.7±0.11µs 8.6±0.10µs 114.1 KElem/sec +98850474.71%
stdb_raw/mem/insert_1/person/multi_index/load=1000 26.4±1.67µs 26.4±2.10µs 37.0 KElem/sec +99999900.00%
stdb_raw/mem/insert_1/person/non_unique/load=0 3.1±0.04µs 3.1±0.07µs 310.4 KElem/sec +99999900.00%
stdb_raw/mem/insert_1/person/non_unique/load=1000 13.9±0.59µs 14.0±0.60µs 70.0 KElem/sec +100719324.46%
stdb_raw/mem/insert_1/person/unique/load=0 5.0±0.07µs 5.1±0.08µs 192.1 KElem/sec +101999900.00%
stdb_raw/mem/insert_1/person/unique/load=1000 19.7±0.85µs 20.1±1.12µs 48.6 KElem/sec +102030356.85%
stdb_raw/mem/insert_bulk/location/multi_index/load=0/count=100 366.1±4.69µs 364.5±4.95µs -0.44%
stdb_raw/mem/insert_bulk/location/multi_index/load=1000/count=100 412.9±7.87µs 413.4±6.81µs +0.12%
stdb_raw/mem/insert_bulk/location/non_unique/load=0/count=100 159.2±2.77µs 158.3±1.42µs -0.57%
stdb_raw/mem/insert_bulk/location/non_unique/load=1000/count=100 179.3±3.41µs 179.7±2.34µs +0.22%
stdb_raw/mem/insert_bulk/location/unique/load=0/count=100 253.3±5.39µs 250.8±3.06µs -0.99%
stdb_raw/mem/insert_bulk/location/unique/load=1000/count=100 303.5±7.69µs 305.3±3.61µs +0.59%
stdb_raw/mem/insert_bulk/person/multi_index/load=0/count=100 718.8±9.14µs 718.3±8.27µs -0.07%
stdb_raw/mem/insert_bulk/person/multi_index/load=1000/count=100 796.4±13.14µs 792.9±14.37µs -0.44%
stdb_raw/mem/insert_bulk/person/non_unique/load=0/count=100 222.1±3.09µs 222.8±2.92µs +0.32%
stdb_raw/mem/insert_bulk/person/non_unique/load=1000/count=100 246.0±3.69µs 245.5±3.90µs -0.20%
stdb_raw/mem/insert_bulk/person/unique/load=0/count=100 407.7±5.29µs 408.7±5.28µs +0.25%
stdb_raw/mem/insert_bulk/person/unique/load=1000/count=100 458.6±8.35µs 464.3±5.84µs +1.24%
stdb_raw/mem/iterate/location/unique/count=100 6.9±0.10µs 6.8±0.11µs 143.1 KElem/sec +98550624.64%
stdb_raw/mem/iterate/person/unique/count=100 8.3±0.15µs 8.1±0.09µs 120.0 KElem/sec +97590261.45%

Please sign in to comment.