diff --git a/Cargo.toml b/Cargo.toml index 88102a7e3..84dccf01b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,6 +3,7 @@ members = [ "differential-dataflow", # "advent_of_code_2017", "dogsdogsdogs", + "benchmarks", "experiments", "interactive", "server", diff --git a/benchmarks/Cargo.toml b/benchmarks/Cargo.toml new file mode 100644 index 000000000..42eba4e9c --- /dev/null +++ b/benchmarks/Cargo.toml @@ -0,0 +1,17 @@ +[package] +name = "benchmarks" +version = "0.1.0" +edition.workspace = true +rust-version.workspace = true +publish = false + +[lints] +workspace = true + +[dependencies] +differential-dataflow.workspace = true +interactive = { path = "../interactive" } +mimalloc = "0.1.48" +serde = { version = "1", features = ["derive"] } +serde_json = "1" +timely.workspace = true diff --git a/benchmarks/README.md b/benchmarks/README.md new file mode 100644 index 000000000..e8c626920 --- /dev/null +++ b/benchmarks/README.md @@ -0,0 +1,177 @@ +# Differential dataflow benchmarks + +This project measures the cost of expressing and executing computations through DDIR. + +Each benchmark provides four implementations. + +1. `compiled` is an optimized statically typed differential dataflow, in the root scope at a `u64` timestamp. +2. `compiled-ddir` is a statically typed transcription of the DDIR operator plan, rendered where DDIR must render it. +3. `ddir-vec` interprets the DDIR program over row-oriented `Value` records. +4. `ddir-corgi` interprets the same DDIR program over the Corgi columnar backend. + +The first ratio identifies costs imposed by DDIR's plan and by DDIR's runtime embedding. + +The second ratio identifies dynamic representation and interpretation costs. + +The third ratio identifies the effect of the columnar backend. + +### Why `compiled-ddir` exists even for atomic operators + +DDIR renders every program inside an iterative scope, so its operators run at +`interactive::ir::Time`, which is `Product>`, rather than at +`u64`. That is a larger timestamp, a vector-valued lattice, and an `enter` operator +per input. A typed program writing the same map or join would not pay any of it. + +That cost is real and it belongs to DDIR, but it is a cost of the runtime embedding +rather than of interpretation. Charging it to the `ddir-vec` and `ddir-corgi` rows +would silently inflate every interpretation ratio in this project, and it would grow +with any future change to DDIR's timestamp without any interpreter getting slower. + +So even the atomic operator cases, where the operator plan really is identical, keep +a `compiled-ddir` rung: the same typed plan, in the iterative scope, at DDIR's +timestamp. `compiled-ddir / compiled` is the embedding tax and `ddir-vec / +compiled-ddir` is interpretation. + +## SCC benchmark + +The initial benchmark computes the subset of input edges whose endpoints are in the same strongly connected component. + +The `compiled` variant uses `strongly_connected_at` with the node identifier. + +The `compiled-ddir` variant transcribes DDIR's nested joins, reductions, and variables into Rust types. + +Both compiled variants introduce labels in the same rounds as DDIR's `enter_at($1[0])`. + +Run a small validation with: + +```text +cargo run -p benchmarks --bin scc -- --nodes 100 --edges 200 --runs 4 +``` + +Run an optimized measurement with: + +```text +cargo run --release -p benchmarks --bin scc -- --nodes 100000 --edges 200000 --warmup 2 --runs 8 +``` + +The program writes one JSON object per measured implementation run to standard output. + +Progress and a ratio summary go to standard error. + +All four output multisets must agree before the program emits measurements. + +The implementation order rotates between runs to remove fixed ordering bias. + +The implementations of one benchmark share a process, and therefore an allocator +heap, so the order within a repetition is not neutral. Rotating only removes that +bias if the rotation completes a whole number of times, so `--runs` must be a +multiple of the implementation count. The programs refuse other values. + +This first benchmark is a single-worker, single-batch measurement. + +It does not yet measure update streams, scale-out, peak memory, or allocation counts. + +The [SCC report](reports/2026-08-19-scc.md) shows the report format and current results. + +## Operator scorecard + +The `operators` binary measures atomic operators, whose optimized and DDIR-matched +operator plans coincide. The two compiled implementations therefore render the same +plan, and differ only in the scope and timestamp they render it at. + +V0 contains these load-time rows. + +| Family | Cases | +| --- | --- | +| Baseline | Identity | +| Map | One map; eight chained maps | +| Filter | Retain none; retain half; retain all | +| Arrange | Sorted unique keys; randomized unique keys; duplicate keys | +| Join | One-to-one matches; partial misses; fanout | +| Reduce | Distinct; count; min | + +Run the scorecard with: + +```text +cargo run --release -p benchmarks --bin operators -- --case all --rows 100000 --keys 1000 --fanout 4 --warmup 2 --runs 8 +``` + +The timed output is probed in its native container without materialization. + +An untimed validation runs all four implementations, materializes each output, and +requires exact agreement with a hand-written oracle before measurement. The compiled +implementations are executed there rather than assumed to agree: `compiled-ddir` +renders at a coarser timestamp lattice, which selects different code paths inside the +reduce and join operators. The capture operators exist only in the validation run. + +The [operator report](reports/2026-08-19-operators.md) records the current results, including the embedding ratio. + +The `arrange_updates` binary measures a second batch after a populated arrangement reaches time one. + +The batch retracts existing rows and inserts the same number of new rows. + +Run it with: + +```text +cargo run --release -p benchmarks --bin arrange_updates -- --rows 100000 --update-rows 1000 --warmup 2 --runs 8 +``` + +Its `measured_ns` includes only update submission and stabilization. + +Parsing, construction, and initial arrangement formation are recorded separately. + +An untimed two-batch run consolidates all output changes and checks the final arrangement exactly before measurement. + +## Measurement boundaries + +`prepare_ns` measures DDIR parsing, lowering, and optimization. + +It is zero for the compiled variants. + +`build_ns` measures timely and differential dataflow construction. + +`ingest_ns` measures submission and flushing of the input updates without stepping the worker. + +Every implementation consumes rows that were prepared before the timed region, and +consumes them by value. Cloning at the input handle would charge the DDIR paths a +deep copy of every `Value` that the typed paths, whose rows are `Copy`, never pay. + +`stabilize_ns` measures worker execution until the output frontier reaches the end of the input batch. + +For load-time rows, `measured_ns` is the sum of these phases. + +For the arrangement-update row, `measured_ns` is `update_ingest_ns + update_stabilize_ns`. + +Worker creation, output collection, consolidation, correctness checking, digesting, and JSON serialization are outside the measured region. + +The `ddir-corgi` conversion of DDIR input rows into a Corgi container is inside +`stabilize_ns`, because it is an operator in the timed dataflow. It dominates the +cheapest cases, where no backend does useful operator work. + +All three binaries install mimalloc as the global allocator. These workloads are +allocation-bound, so the allocator is a first-order term and a reproduction under the +system allocator will not match. Report it alongside the compiler and the machine. + +## Adding workloads + +A workload should own its deterministic input generator and canonical output representation. + +Each implementation should consume identical logical input and produce the same consolidated output. + +The compiled DDIR-matched implementation should remain visibly paired with the DDIR source so that changes in either plan are reviewed together. + +New measurements should extend the versioned JSON record rather than changing the meaning of existing fields. + +## The result schema + +`schema` is currently 2. The `scc` and `operators` records carry different workload +parameters and are distinguished by `benchmark`; the version tracks the shared fields. + +`revision` and `dirty` identify the source. A revision alone does not: if `dirty` is +true then uncommitted changes were present and the measurement belongs to no commit, +so a longitudinal series must discard the point. An unreadable tree reports `dirty`. + +`checked_against` names the oracle a run was validated against, which is not the same +choice in every benchmark. `operators` and `arrange_updates` check against a +hand-written expected output. `scc` checks against `compiled-ddir`, which is in turn +cross-checked by the independent `strongly_connected_at` implementation. diff --git a/benchmarks/reports/2026-08-19-operators.jsonl b/benchmarks/reports/2026-08-19-operators.jsonl new file mode 100644 index 000000000..96d374436 --- /dev/null +++ b/benchmarks/reports/2026-08-19-operators.jsonl @@ -0,0 +1,512 @@ +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2833,"build_ns":16959,"ingest_ns":478541,"stabilize_ns":821417,"measured_ns":1319750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":3209,"build_ns":18333,"ingest_ns":471167,"stabilize_ns":7682375,"measured_ns":8175084,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":6958,"ingest_ns":254791,"stabilize_ns":6291,"measured_ns":268040,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16042,"ingest_ns":265166,"stabilize_ns":320417,"measured_ns":601625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2917,"build_ns":19417,"ingest_ns":478916,"stabilize_ns":7611167,"measured_ns":8112417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":5291,"ingest_ns":236959,"stabilize_ns":5125,"measured_ns":247375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":11500,"ingest_ns":237375,"stabilize_ns":261166,"measured_ns":510041,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2833,"build_ns":13875,"ingest_ns":477917,"stabilize_ns":787792,"measured_ns":1282417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":4541,"ingest_ns":288417,"stabilize_ns":4583,"measured_ns":297541,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":9625,"ingest_ns":240417,"stabilize_ns":270916,"measured_ns":520958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2750,"build_ns":11000,"ingest_ns":473708,"stabilize_ns":787500,"measured_ns":1274958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2625,"build_ns":12833,"ingest_ns":473500,"stabilize_ns":7560708,"measured_ns":8049666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":9625,"ingest_ns":244834,"stabilize_ns":285000,"measured_ns":539459,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2125,"build_ns":10333,"ingest_ns":469625,"stabilize_ns":795042,"measured_ns":1277125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2291,"build_ns":15917,"ingest_ns":466708,"stabilize_ns":7609125,"measured_ns":8094041,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":4833,"ingest_ns":244125,"stabilize_ns":5625,"measured_ns":254583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2083,"build_ns":13292,"ingest_ns":470583,"stabilize_ns":782084,"measured_ns":1268042,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2209,"build_ns":13417,"ingest_ns":469042,"stabilize_ns":7604708,"measured_ns":8089376,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":6834,"ingest_ns":242125,"stabilize_ns":5917,"measured_ns":254876,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":14083,"ingest_ns":244625,"stabilize_ns":273125,"measured_ns":531833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2792,"build_ns":15833,"ingest_ns":479542,"stabilize_ns":7549250,"measured_ns":8047417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":5708,"ingest_ns":249416,"stabilize_ns":5834,"measured_ns":260958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":10209,"ingest_ns":230250,"stabilize_ns":279625,"measured_ns":520084,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2833,"build_ns":12333,"ingest_ns":481583,"stabilize_ns":824291,"measured_ns":1321040,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":4583,"ingest_ns":291583,"stabilize_ns":5458,"measured_ns":301624,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":9292,"ingest_ns":220125,"stabilize_ns":283959,"measured_ns":513376,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2291,"build_ns":10500,"ingest_ns":477625,"stabilize_ns":794541,"measured_ns":1284957,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2042,"build_ns":11792,"ingest_ns":479709,"stabilize_ns":7593542,"measured_ns":8087085,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":10209,"ingest_ns":240500,"stabilize_ns":282000,"measured_ns":532709,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2125,"build_ns":10375,"ingest_ns":489042,"stabilize_ns":795416,"measured_ns":1296958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":2334,"build_ns":23000,"ingest_ns":442333,"stabilize_ns":7528625,"measured_ns":7996292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"identity","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":6708,"ingest_ns":240750,"stabilize_ns":8334,"measured_ns":255792,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11000,"build_ns":18334,"ingest_ns":471042,"stabilize_ns":22579791,"measured_ns":23080167,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10625,"build_ns":17625,"ingest_ns":465083,"stabilize_ns":7978000,"measured_ns":8471333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":13792,"ingest_ns":224333,"stabilize_ns":774000,"measured_ns":1012125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":22959,"ingest_ns":220375,"stabilize_ns":1549416,"measured_ns":1792750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":14959,"build_ns":22625,"ingest_ns":452584,"stabilize_ns":7743375,"measured_ns":8233543,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":9500,"ingest_ns":230083,"stabilize_ns":709708,"measured_ns":949291,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16709,"ingest_ns":233291,"stabilize_ns":1560917,"measured_ns":1810917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":13334,"build_ns":19583,"ingest_ns":470625,"stabilize_ns":22493000,"measured_ns":22996542,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8625,"ingest_ns":275750,"stabilize_ns":719542,"measured_ns":1003917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16708,"ingest_ns":220208,"stabilize_ns":1561583,"measured_ns":1798499,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12500,"build_ns":17875,"ingest_ns":463958,"stabilize_ns":22404667,"measured_ns":22899000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":16709,"build_ns":20000,"ingest_ns":468667,"stabilize_ns":7918042,"measured_ns":8423418,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":13541,"ingest_ns":243708,"stabilize_ns":1571667,"measured_ns":1828916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10875,"build_ns":15959,"ingest_ns":473500,"stabilize_ns":22369875,"measured_ns":22870209,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":15750,"build_ns":26583,"ingest_ns":458167,"stabilize_ns":7888916,"measured_ns":8389416,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":13000,"ingest_ns":229792,"stabilize_ns":737125,"measured_ns":979917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11875,"build_ns":20667,"ingest_ns":473000,"stabilize_ns":22477750,"measured_ns":22983292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10834,"build_ns":20167,"ingest_ns":468000,"stabilize_ns":7902875,"measured_ns":8401876,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8375,"ingest_ns":235750,"stabilize_ns":738584,"measured_ns":982709,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17708,"ingest_ns":233875,"stabilize_ns":1600250,"measured_ns":1851833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":14375,"build_ns":19959,"ingest_ns":470459,"stabilize_ns":7881584,"measured_ns":8386377,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":7791,"ingest_ns":239541,"stabilize_ns":734958,"measured_ns":982290,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":15625,"ingest_ns":232333,"stabilize_ns":1593625,"measured_ns":1841583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11084,"build_ns":17458,"ingest_ns":480792,"stabilize_ns":22618125,"measured_ns":23127459,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8500,"ingest_ns":267333,"stabilize_ns":721625,"measured_ns":997458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":15084,"ingest_ns":237292,"stabilize_ns":1593208,"measured_ns":1845584,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11291,"build_ns":18834,"ingest_ns":490291,"stabilize_ns":22514334,"measured_ns":23034750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":13166,"build_ns":19625,"ingest_ns":481792,"stabilize_ns":7932875,"measured_ns":8447458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":12833,"ingest_ns":221625,"stabilize_ns":1590875,"measured_ns":1825333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11834,"build_ns":16000,"ingest_ns":481708,"stabilize_ns":22488167,"measured_ns":22997709,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10709,"build_ns":16292,"ingest_ns":470792,"stabilize_ns":7935958,"measured_ns":8433751,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map1","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":9000,"ingest_ns":232250,"stabilize_ns":789958,"measured_ns":1031208,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":35542,"build_ns":22041,"ingest_ns":494417,"stabilize_ns":96100500,"measured_ns":96652500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":39084,"build_ns":31000,"ingest_ns":500542,"stabilize_ns":9383417,"measured_ns":9954043,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16875,"ingest_ns":231083,"stabilize_ns":3303333,"measured_ns":3551291,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29125,"ingest_ns":238959,"stabilize_ns":6292500,"measured_ns":6560584,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":37583,"build_ns":22834,"ingest_ns":503042,"stabilize_ns":9379042,"measured_ns":9942501,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":12708,"ingest_ns":226958,"stabilize_ns":3124458,"measured_ns":3364124,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":26958,"ingest_ns":221208,"stabilize_ns":6148792,"measured_ns":6396958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":38042,"build_ns":22500,"ingest_ns":489916,"stabilize_ns":96604166,"measured_ns":97154624,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18125,"ingest_ns":243959,"stabilize_ns":3296917,"measured_ns":3559001,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":26209,"ingest_ns":239875,"stabilize_ns":6346875,"measured_ns":6612959,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":37709,"build_ns":23500,"ingest_ns":520417,"stabilize_ns":96465833,"measured_ns":97047459,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":42958,"build_ns":31916,"ingest_ns":501458,"stabilize_ns":9577208,"measured_ns":10153540,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":26958,"ingest_ns":259917,"stabilize_ns":6330500,"measured_ns":6617375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":36416,"build_ns":23208,"ingest_ns":505667,"stabilize_ns":97721750,"measured_ns":98287041,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":44750,"build_ns":24166,"ingest_ns":489042,"stabilize_ns":9498917,"measured_ns":10056875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19000,"ingest_ns":253458,"stabilize_ns":3339375,"measured_ns":3611833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":39083,"build_ns":22000,"ingest_ns":501625,"stabilize_ns":98082333,"measured_ns":98645041,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":37375,"build_ns":20459,"ingest_ns":497250,"stabilize_ns":9491541,"measured_ns":10046625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":13541,"ingest_ns":244666,"stabilize_ns":3311334,"measured_ns":3569541,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":27875,"ingest_ns":243916,"stabilize_ns":6428792,"measured_ns":6700583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":35125,"build_ns":25291,"ingest_ns":497209,"stabilize_ns":9460583,"measured_ns":10018208,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":13250,"ingest_ns":246958,"stabilize_ns":3289167,"measured_ns":3549375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":23291,"ingest_ns":237458,"stabilize_ns":6419875,"measured_ns":6680624,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":35416,"build_ns":21791,"ingest_ns":497750,"stabilize_ns":97657958,"measured_ns":98212915,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20667,"ingest_ns":274583,"stabilize_ns":3392500,"measured_ns":3687750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28250,"ingest_ns":246459,"stabilize_ns":7303291,"measured_ns":7578000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":41875,"build_ns":33125,"ingest_ns":605375,"stabilize_ns":97009458,"measured_ns":97689833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":39708,"build_ns":29750,"ingest_ns":514292,"stabilize_ns":9445750,"measured_ns":10029500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":25958,"ingest_ns":245625,"stabilize_ns":6528000,"measured_ns":6799583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":36708,"build_ns":23208,"ingest_ns":492667,"stabilize_ns":96804083,"measured_ns":97356666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":40542,"build_ns":29375,"ingest_ns":491458,"stabilize_ns":9560750,"measured_ns":10122125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"map8","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19875,"ingest_ns":242166,"stabilize_ns":3286750,"measured_ns":3548791,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8125,"build_ns":18625,"ingest_ns":505000,"stabilize_ns":14571958,"measured_ns":15103708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9292,"build_ns":18375,"ingest_ns":491083,"stabilize_ns":7951667,"measured_ns":8470417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":9334,"ingest_ns":253792,"stabilize_ns":476541,"measured_ns":739667,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16959,"ingest_ns":232375,"stabilize_ns":835125,"measured_ns":1084459,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8583,"build_ns":24917,"ingest_ns":505959,"stabilize_ns":7987792,"measured_ns":8527251,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8875,"ingest_ns":246083,"stabilize_ns":470792,"measured_ns":725750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":15208,"ingest_ns":235417,"stabilize_ns":826583,"measured_ns":1077208,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8083,"build_ns":18458,"ingest_ns":536875,"stabilize_ns":14579417,"measured_ns":15142833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":7583,"ingest_ns":302292,"stabilize_ns":501541,"measured_ns":811416,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17250,"ingest_ns":233250,"stabilize_ns":791958,"measured_ns":1042458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8833,"build_ns":20292,"ingest_ns":503000,"stabilize_ns":14622334,"measured_ns":15154459,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9500,"build_ns":20458,"ingest_ns":509042,"stabilize_ns":8044917,"measured_ns":8583917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":14792,"ingest_ns":246209,"stabilize_ns":847417,"measured_ns":1108418,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7708,"build_ns":23292,"ingest_ns":481375,"stabilize_ns":14276625,"measured_ns":14789000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11000,"build_ns":18500,"ingest_ns":496583,"stabilize_ns":7864917,"measured_ns":8391000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":10167,"ingest_ns":248208,"stabilize_ns":453250,"measured_ns":711625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7709,"build_ns":17583,"ingest_ns":505083,"stabilize_ns":14369833,"measured_ns":14900208,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9583,"build_ns":16875,"ingest_ns":481208,"stabilize_ns":7854875,"measured_ns":8362541,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8375,"ingest_ns":239042,"stabilize_ns":460334,"measured_ns":707751,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17375,"ingest_ns":232167,"stabilize_ns":798291,"measured_ns":1047833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7791,"build_ns":17125,"ingest_ns":486083,"stabilize_ns":7822042,"measured_ns":8333041,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8125,"ingest_ns":236791,"stabilize_ns":487833,"measured_ns":732749,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":14917,"ingest_ns":223250,"stabilize_ns":828083,"measured_ns":1066250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8791,"build_ns":16042,"ingest_ns":502792,"stabilize_ns":14451792,"measured_ns":14979417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":7166,"ingest_ns":275959,"stabilize_ns":473708,"measured_ns":756833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":13000,"ingest_ns":224833,"stabilize_ns":773000,"measured_ns":1010833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8333,"build_ns":14458,"ingest_ns":494250,"stabilize_ns":14401916,"measured_ns":14918957,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9625,"build_ns":17167,"ingest_ns":499917,"stabilize_ns":7906792,"measured_ns":8433501,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":11542,"ingest_ns":233209,"stabilize_ns":802166,"measured_ns":1046917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8042,"build_ns":14750,"ingest_ns":488584,"stabilize_ns":14391167,"measured_ns":14902543,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7500,"build_ns":15834,"ingest_ns":508125,"stabilize_ns":7850167,"measured_ns":8381626,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-none","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8209,"ingest_ns":232667,"stabilize_ns":468917,"measured_ns":709793,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7958,"build_ns":16833,"ingest_ns":493834,"stabilize_ns":16520459,"measured_ns":17039084,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7541,"build_ns":19250,"ingest_ns":465084,"stabilize_ns":8395500,"measured_ns":8887375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":9208,"ingest_ns":239541,"stabilize_ns":691167,"measured_ns":939916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16625,"ingest_ns":237084,"stabilize_ns":1098166,"measured_ns":1351875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8209,"build_ns":17083,"ingest_ns":471958,"stabilize_ns":8406708,"measured_ns":8903958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8875,"ingest_ns":223500,"stabilize_ns":694833,"measured_ns":927208,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17000,"ingest_ns":231875,"stabilize_ns":1099292,"measured_ns":1348167,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8292,"build_ns":14750,"ingest_ns":480292,"stabilize_ns":16529417,"measured_ns":17032751,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":7416,"ingest_ns":254209,"stabilize_ns":664209,"measured_ns":925834,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":14541,"ingest_ns":235750,"stabilize_ns":1062459,"measured_ns":1312750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7958,"build_ns":14000,"ingest_ns":467833,"stabilize_ns":16521917,"measured_ns":17011708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7625,"build_ns":16750,"ingest_ns":468500,"stabilize_ns":8409917,"measured_ns":8902792,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":13041,"ingest_ns":226292,"stabilize_ns":1055333,"measured_ns":1294666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7500,"build_ns":14542,"ingest_ns":470792,"stabilize_ns":16602000,"measured_ns":17094834,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9166,"build_ns":19209,"ingest_ns":477292,"stabilize_ns":8495583,"measured_ns":9001250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":10000,"ingest_ns":237458,"stabilize_ns":680875,"measured_ns":928333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7542,"build_ns":19792,"ingest_ns":481250,"stabilize_ns":16649916,"measured_ns":17158500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8250,"build_ns":22167,"ingest_ns":476750,"stabilize_ns":8458250,"measured_ns":8965417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":9750,"ingest_ns":234916,"stabilize_ns":654792,"measured_ns":899458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17292,"ingest_ns":235083,"stabilize_ns":1057208,"measured_ns":1309583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7792,"build_ns":19500,"ingest_ns":471458,"stabilize_ns":8404208,"measured_ns":8902958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8250,"ingest_ns":236291,"stabilize_ns":645709,"measured_ns":890250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16125,"ingest_ns":232625,"stabilize_ns":1047375,"measured_ns":1296125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8375,"build_ns":17084,"ingest_ns":476583,"stabilize_ns":16538250,"measured_ns":17040292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":7541,"ingest_ns":239458,"stabilize_ns":647500,"measured_ns":894499,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":15416,"ingest_ns":218916,"stabilize_ns":1031584,"measured_ns":1265916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8375,"build_ns":18208,"ingest_ns":472416,"stabilize_ns":16608584,"measured_ns":17107583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8625,"build_ns":16625,"ingest_ns":474917,"stabilize_ns":8411000,"measured_ns":8911167,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":11292,"ingest_ns":238833,"stabilize_ns":1031833,"measured_ns":1281958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7459,"build_ns":13792,"ingest_ns":478500,"stabilize_ns":16548459,"measured_ns":17048210,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7833,"build_ns":16208,"ingest_ns":468542,"stabilize_ns":8373416,"measured_ns":8865999,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-half","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":7791,"ingest_ns":236500,"stabilize_ns":637333,"measured_ns":881624,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7500,"build_ns":16666,"ingest_ns":508459,"stabilize_ns":18240875,"measured_ns":18773500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7458,"build_ns":16833,"ingest_ns":489875,"stabilize_ns":8542667,"measured_ns":9056833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8250,"ingest_ns":262791,"stabilize_ns":470708,"measured_ns":741749,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":15000,"ingest_ns":244250,"stabilize_ns":939000,"measured_ns":1198250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7291,"build_ns":16917,"ingest_ns":496000,"stabilize_ns":8516417,"measured_ns":9036625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":7167,"ingest_ns":246792,"stabilize_ns":480625,"measured_ns":734584,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":15000,"ingest_ns":234917,"stabilize_ns":929666,"measured_ns":1179583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7791,"build_ns":15584,"ingest_ns":500375,"stabilize_ns":18290167,"measured_ns":18813917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":7834,"ingest_ns":283584,"stabilize_ns":483791,"measured_ns":775209,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":14041,"ingest_ns":240792,"stabilize_ns":903458,"measured_ns":1158291,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8291,"build_ns":16000,"ingest_ns":499750,"stabilize_ns":18304833,"measured_ns":18828874,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7708,"build_ns":18166,"ingest_ns":492250,"stabilize_ns":8547167,"measured_ns":9065291,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":11292,"ingest_ns":241125,"stabilize_ns":894708,"measured_ns":1147125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6875,"build_ns":15708,"ingest_ns":495042,"stabilize_ns":18388333,"measured_ns":18905958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9959,"build_ns":22542,"ingest_ns":502708,"stabilize_ns":8595917,"measured_ns":9131126,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":10333,"ingest_ns":258208,"stabilize_ns":557083,"measured_ns":825624,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8792,"build_ns":22792,"ingest_ns":519209,"stabilize_ns":18375459,"measured_ns":18926252,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9791,"build_ns":24666,"ingest_ns":506000,"stabilize_ns":8579667,"measured_ns":9120124,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":9541,"ingest_ns":246334,"stabilize_ns":475875,"measured_ns":731750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16167,"ingest_ns":233208,"stabilize_ns":907375,"measured_ns":1156750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8375,"build_ns":21667,"ingest_ns":514791,"stabilize_ns":8508167,"measured_ns":9053000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":7625,"ingest_ns":243959,"stabilize_ns":468083,"measured_ns":719667,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":15458,"ingest_ns":233834,"stabilize_ns":910084,"measured_ns":1159376,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7792,"build_ns":17416,"ingest_ns":496375,"stabilize_ns":18358625,"measured_ns":18880208,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":8708,"ingest_ns":278958,"stabilize_ns":481791,"measured_ns":769457,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":14166,"ingest_ns":243500,"stabilize_ns":915500,"measured_ns":1173166,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8333,"build_ns":18792,"ingest_ns":506417,"stabilize_ns":18350958,"measured_ns":18884500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8875,"build_ns":29917,"ingest_ns":509291,"stabilize_ns":8664417,"measured_ns":9212500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19416,"ingest_ns":257833,"stabilize_ns":883459,"measured_ns":1160708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7750,"build_ns":19875,"ingest_ns":503000,"stabilize_ns":18305542,"measured_ns":18836167,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9417,"build_ns":21083,"ingest_ns":494167,"stabilize_ns":8383959,"measured_ns":8908626,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"filter-all","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":10708,"ingest_ns":228208,"stabilize_ns":446500,"measured_ns":685416,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5292,"build_ns":30667,"ingest_ns":475208,"stabilize_ns":23802583,"measured_ns":24313750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8916,"build_ns":37541,"ingest_ns":476250,"stabilize_ns":12745708,"measured_ns":13268415,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20417,"ingest_ns":243083,"stabilize_ns":3896417,"measured_ns":4159917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28125,"ingest_ns":238750,"stabilize_ns":5823959,"measured_ns":6090834,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7792,"build_ns":33875,"ingest_ns":477750,"stabilize_ns":12617209,"measured_ns":13136626,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17375,"ingest_ns":247875,"stabilize_ns":3845125,"measured_ns":4110375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":27333,"ingest_ns":238958,"stabilize_ns":5638208,"measured_ns":5904499,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6916,"build_ns":31458,"ingest_ns":482750,"stabilize_ns":23689541,"measured_ns":24210665,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":14750,"ingest_ns":273417,"stabilize_ns":3845291,"measured_ns":4133458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":23209,"ingest_ns":246334,"stabilize_ns":5633000,"measured_ns":5902543,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7250,"build_ns":29541,"ingest_ns":482375,"stabilize_ns":23638291,"measured_ns":24157457,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6458,"build_ns":26500,"ingest_ns":469917,"stabilize_ns":12536958,"measured_ns":13039833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":25333,"ingest_ns":248917,"stabilize_ns":5644584,"measured_ns":5918834,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5584,"build_ns":28500,"ingest_ns":474041,"stabilize_ns":23465917,"measured_ns":23974042,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5834,"build_ns":25583,"ingest_ns":469375,"stabilize_ns":12459958,"measured_ns":12960750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17708,"ingest_ns":239250,"stabilize_ns":3793542,"measured_ns":4050500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5000,"build_ns":32333,"ingest_ns":479208,"stabilize_ns":23538417,"measured_ns":24054958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6667,"build_ns":28875,"ingest_ns":475792,"stabilize_ns":12629125,"measured_ns":13140459,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19625,"ingest_ns":242166,"stabilize_ns":3794208,"measured_ns":4055999,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":25000,"ingest_ns":243750,"stabilize_ns":5667959,"measured_ns":5936709,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5542,"build_ns":32209,"ingest_ns":478417,"stabilize_ns":12581917,"measured_ns":13098085,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16584,"ingest_ns":238542,"stabilize_ns":3801833,"measured_ns":4056959,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":23875,"ingest_ns":238292,"stabilize_ns":5620750,"measured_ns":5882917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5417,"build_ns":31041,"ingest_ns":479500,"stabilize_ns":25176667,"measured_ns":25692625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":13000,"ingest_ns":292000,"stabilize_ns":3780375,"measured_ns":4085375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":22792,"ingest_ns":245250,"stabilize_ns":5700625,"measured_ns":5968667,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6167,"build_ns":32958,"ingest_ns":534917,"stabilize_ns":23716125,"measured_ns":24290167,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6000,"build_ns":25583,"ingest_ns":485833,"stabilize_ns":12648708,"measured_ns":13166124,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":25834,"ingest_ns":258584,"stabilize_ns":5691958,"measured_ns":5976376,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6375,"build_ns":30167,"ingest_ns":499125,"stabilize_ns":23757917,"measured_ns":24293584,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8042,"build_ns":35959,"ingest_ns":493709,"stabilize_ns":12702166,"measured_ns":13239876,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-sorted","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19709,"ingest_ns":252792,"stabilize_ns":3990791,"measured_ns":4263292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5792,"build_ns":38042,"ingest_ns":522375,"stabilize_ns":35700625,"measured_ns":36266834,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6833,"build_ns":31750,"ingest_ns":487833,"stabilize_ns":13231250,"measured_ns":13757666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19250,"ingest_ns":237625,"stabilize_ns":9046625,"measured_ns":9303500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30250,"ingest_ns":245542,"stabilize_ns":12202041,"measured_ns":12477833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6625,"build_ns":35500,"ingest_ns":526500,"stabilize_ns":13335875,"measured_ns":13904500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20584,"ingest_ns":263375,"stabilize_ns":9157542,"measured_ns":9441501,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":31292,"ingest_ns":254209,"stabilize_ns":12232458,"measured_ns":12517959,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6584,"build_ns":36791,"ingest_ns":558792,"stabilize_ns":35152834,"measured_ns":35755001,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":14625,"ingest_ns":254292,"stabilize_ns":9172667,"measured_ns":9441584,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":23708,"ingest_ns":246750,"stabilize_ns":12269834,"measured_ns":12540292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6666,"build_ns":29625,"ingest_ns":520292,"stabilize_ns":34967458,"measured_ns":35524041,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5584,"build_ns":30500,"ingest_ns":488666,"stabilize_ns":13400083,"measured_ns":13924833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28500,"ingest_ns":251000,"stabilize_ns":12284417,"measured_ns":12563917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5833,"build_ns":34250,"ingest_ns":513542,"stabilize_ns":35213542,"measured_ns":35767167,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5708,"build_ns":34709,"ingest_ns":495875,"stabilize_ns":13390292,"measured_ns":13926584,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20084,"ingest_ns":255125,"stabilize_ns":9268958,"measured_ns":9544167,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5375,"build_ns":34125,"ingest_ns":512375,"stabilize_ns":33995208,"measured_ns":34547083,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6875,"build_ns":32500,"ingest_ns":472667,"stabilize_ns":12985167,"measured_ns":13497209,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18875,"ingest_ns":242417,"stabilize_ns":9071333,"measured_ns":9332625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28209,"ingest_ns":228875,"stabilize_ns":11983000,"measured_ns":12240084,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5792,"build_ns":37041,"ingest_ns":488291,"stabilize_ns":13175542,"measured_ns":13706666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18667,"ingest_ns":262292,"stabilize_ns":9038667,"measured_ns":9319626,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":25959,"ingest_ns":245292,"stabilize_ns":12096791,"measured_ns":12368042,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":25083,"build_ns":36750,"ingest_ns":486250,"stabilize_ns":34474250,"measured_ns":35022333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18083,"ingest_ns":254750,"stabilize_ns":9044625,"measured_ns":9317458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29167,"ingest_ns":270375,"stabilize_ns":12015834,"measured_ns":12315376,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5791,"build_ns":31375,"ingest_ns":515208,"stabilize_ns":34573042,"measured_ns":35125416,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6875,"build_ns":34458,"ingest_ns":485375,"stabilize_ns":13232042,"measured_ns":13758750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":27916,"ingest_ns":259959,"stabilize_ns":12023125,"measured_ns":12311000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5792,"build_ns":39750,"ingest_ns":505042,"stabilize_ns":35826125,"measured_ns":36376709,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6625,"build_ns":33208,"ingest_ns":489792,"stabilize_ns":13223250,"measured_ns":13752875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-random","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17959,"ingest_ns":253375,"stabilize_ns":9081500,"measured_ns":9352834,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7250,"build_ns":29708,"ingest_ns":512375,"stabilize_ns":14930792,"measured_ns":15480125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6541,"build_ns":33083,"ingest_ns":491625,"stabilize_ns":11059500,"measured_ns":11590749,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17083,"ingest_ns":247292,"stabilize_ns":1524667,"measured_ns":1789042,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":26583,"ingest_ns":264916,"stabilize_ns":2522667,"measured_ns":2814166,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5791,"build_ns":30625,"ingest_ns":478375,"stabilize_ns":11198292,"measured_ns":11713083,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16834,"ingest_ns":257042,"stabilize_ns":1491916,"measured_ns":1765792,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":24959,"ingest_ns":223916,"stabilize_ns":2393375,"measured_ns":2642250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5667,"build_ns":28084,"ingest_ns":479459,"stabilize_ns":14917250,"measured_ns":15430460,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":12459,"ingest_ns":231917,"stabilize_ns":1447708,"measured_ns":1692084,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19958,"ingest_ns":251542,"stabilize_ns":2367875,"measured_ns":2639375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5625,"build_ns":24541,"ingest_ns":478958,"stabilize_ns":14892750,"measured_ns":15401874,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5208,"build_ns":25750,"ingest_ns":476792,"stabilize_ns":11066167,"measured_ns":11573917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":27333,"ingest_ns":247042,"stabilize_ns":2398458,"measured_ns":2672833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5417,"build_ns":32042,"ingest_ns":474209,"stabilize_ns":14883583,"measured_ns":15395251,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5666,"build_ns":26875,"ingest_ns":477750,"stabilize_ns":11015334,"measured_ns":11525625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":15083,"ingest_ns":254834,"stabilize_ns":1453208,"measured_ns":1723125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":4833,"build_ns":29500,"ingest_ns":469917,"stabilize_ns":14888125,"measured_ns":15392375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5125,"build_ns":28000,"ingest_ns":471458,"stabilize_ns":10878000,"measured_ns":11382583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":15750,"ingest_ns":245167,"stabilize_ns":1438958,"measured_ns":1699875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20708,"ingest_ns":227500,"stabilize_ns":2369708,"measured_ns":2617916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6458,"build_ns":28625,"ingest_ns":474250,"stabilize_ns":10930333,"measured_ns":11439666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":17375,"ingest_ns":240209,"stabilize_ns":1431709,"measured_ns":1689293,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":22750,"ingest_ns":240792,"stabilize_ns":2387875,"measured_ns":2651417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5959,"build_ns":26792,"ingest_ns":479459,"stabilize_ns":14830584,"measured_ns":15342794,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":11625,"ingest_ns":242000,"stabilize_ns":1445417,"measured_ns":1699042,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19625,"ingest_ns":246541,"stabilize_ns":2349250,"measured_ns":2615416,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":4916,"build_ns":23834,"ingest_ns":474625,"stabilize_ns":14818042,"measured_ns":15321417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5125,"build_ns":23208,"ingest_ns":473500,"stabilize_ns":10837541,"measured_ns":11339374,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":22916,"ingest_ns":231041,"stabilize_ns":2407875,"measured_ns":2661832,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5917,"build_ns":26208,"ingest_ns":482541,"stabilize_ns":14807667,"measured_ns":15322333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5833,"build_ns":24167,"ingest_ns":467250,"stabilize_ns":10904667,"measured_ns":11401917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-duplicates","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":14958,"ingest_ns":241000,"stabilize_ns":1445583,"measured_ns":1701541,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12916,"build_ns":43375,"ingest_ns":1029208,"stabilize_ns":79212542,"measured_ns":80298041,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12917,"build_ns":47084,"ingest_ns":1002834,"stabilize_ns":34640834,"measured_ns":35703669,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":25250,"ingest_ns":479333,"stabilize_ns":22165958,"measured_ns":22670541,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":34292,"ingest_ns":486916,"stabilize_ns":29639625,"measured_ns":30160833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10958,"build_ns":46667,"ingest_ns":1007708,"stabilize_ns":34131375,"measured_ns":35196708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19458,"ingest_ns":499250,"stabilize_ns":22017334,"measured_ns":22536042,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":27666,"ingest_ns":499792,"stabilize_ns":29672791,"measured_ns":30200249,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11708,"build_ns":44708,"ingest_ns":1006875,"stabilize_ns":79499542,"measured_ns":80562833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18583,"ingest_ns":497375,"stabilize_ns":22203500,"measured_ns":22719458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":31000,"ingest_ns":529958,"stabilize_ns":29664167,"measured_ns":30225125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11208,"build_ns":45167,"ingest_ns":991500,"stabilize_ns":80718958,"measured_ns":81766833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":14958,"build_ns":52125,"ingest_ns":1012750,"stabilize_ns":34482333,"measured_ns":35562166,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":27958,"ingest_ns":498250,"stabilize_ns":29726583,"measured_ns":30252791,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11167,"build_ns":45667,"ingest_ns":1003375,"stabilize_ns":80463375,"measured_ns":81523584,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12500,"build_ns":45750,"ingest_ns":1021458,"stabilize_ns":34542917,"measured_ns":35622625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":21542,"ingest_ns":487208,"stabilize_ns":22030333,"measured_ns":22539083,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":13042,"build_ns":65958,"ingest_ns":1028042,"stabilize_ns":80826750,"measured_ns":81933792,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11250,"build_ns":46000,"ingest_ns":1023833,"stabilize_ns":36089167,"measured_ns":37170250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19583,"ingest_ns":499625,"stabilize_ns":22291583,"measured_ns":22810791,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":33666,"ingest_ns":501083,"stabilize_ns":29933208,"measured_ns":30467957,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11500,"build_ns":51875,"ingest_ns":1114000,"stabilize_ns":34567167,"measured_ns":35744542,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18625,"ingest_ns":499250,"stabilize_ns":22136958,"measured_ns":22654833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29125,"ingest_ns":492917,"stabilize_ns":29913458,"measured_ns":30435500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11417,"build_ns":43833,"ingest_ns":1018583,"stabilize_ns":81288708,"measured_ns":82362541,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20542,"ingest_ns":516541,"stabilize_ns":22498917,"measured_ns":23036000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30542,"ingest_ns":532542,"stabilize_ns":30381083,"measured_ns":30944167,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11291,"build_ns":45458,"ingest_ns":1047042,"stabilize_ns":82491292,"measured_ns":83595083,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12542,"build_ns":46333,"ingest_ns":1039208,"stabilize_ns":35130334,"measured_ns":36228417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":25541,"ingest_ns":513333,"stabilize_ns":29902834,"measured_ns":30441708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9791,"build_ns":41708,"ingest_ns":1014250,"stabilize_ns":82415750,"measured_ns":83481499,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12584,"build_ns":55208,"ingest_ns":973917,"stabilize_ns":34393416,"measured_ns":35435125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-one","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19416,"ingest_ns":501708,"stabilize_ns":22212833,"measured_ns":22733957,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11500,"build_ns":43833,"ingest_ns":994042,"stabilize_ns":71842833,"measured_ns":72892208,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11667,"build_ns":45000,"ingest_ns":997792,"stabilize_ns":32561750,"measured_ns":33616209,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19291,"ingest_ns":484542,"stabilize_ns":19803083,"measured_ns":20306916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29167,"ingest_ns":488708,"stabilize_ns":26319000,"measured_ns":26836875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9666,"build_ns":43750,"ingest_ns":996000,"stabilize_ns":31853875,"measured_ns":32903291,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":21459,"ingest_ns":482125,"stabilize_ns":19661000,"measured_ns":20164584,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":36083,"ingest_ns":478959,"stabilize_ns":26182500,"measured_ns":26697542,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11834,"build_ns":42292,"ingest_ns":1007333,"stabilize_ns":70593209,"measured_ns":71654668,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18625,"ingest_ns":491625,"stabilize_ns":19821083,"measured_ns":20331333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":33417,"ingest_ns":490917,"stabilize_ns":26250583,"measured_ns":26774917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11542,"build_ns":41667,"ingest_ns":1013042,"stabilize_ns":71523583,"measured_ns":72589834,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11958,"build_ns":47042,"ingest_ns":1017666,"stabilize_ns":32098167,"measured_ns":33174833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28125,"ingest_ns":486916,"stabilize_ns":26228917,"measured_ns":26743958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12000,"build_ns":40208,"ingest_ns":997167,"stabilize_ns":71139291,"measured_ns":72188666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":13000,"build_ns":48875,"ingest_ns":946500,"stabilize_ns":31713666,"measured_ns":32722041,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19792,"ingest_ns":479375,"stabilize_ns":19589125,"measured_ns":20088292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":9584,"build_ns":44916,"ingest_ns":978959,"stabilize_ns":69706875,"measured_ns":70740334,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10708,"build_ns":48667,"ingest_ns":1006041,"stabilize_ns":32098292,"measured_ns":33163708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":21167,"ingest_ns":508917,"stabilize_ns":19814167,"measured_ns":20344251,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":32583,"ingest_ns":476542,"stabilize_ns":27281792,"measured_ns":27790917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10542,"build_ns":47125,"ingest_ns":1317167,"stabilize_ns":32343208,"measured_ns":33718042,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18166,"ingest_ns":479125,"stabilize_ns":19631666,"measured_ns":20128957,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28333,"ingest_ns":487333,"stabilize_ns":26145250,"measured_ns":26660916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10209,"build_ns":42125,"ingest_ns":1026792,"stabilize_ns":69906000,"measured_ns":70985126,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19500,"ingest_ns":493333,"stabilize_ns":19889042,"measured_ns":20401875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30916,"ingest_ns":498042,"stabilize_ns":26347208,"measured_ns":26876166,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":13042,"build_ns":39000,"ingest_ns":1023041,"stabilize_ns":72419417,"measured_ns":73494500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11708,"build_ns":46666,"ingest_ns":1011292,"stabilize_ns":32648833,"measured_ns":33718499,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28000,"ingest_ns":495833,"stabilize_ns":26339500,"measured_ns":26863333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10041,"build_ns":42958,"ingest_ns":1003750,"stabilize_ns":70959916,"measured_ns":72016665,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":15208,"build_ns":50917,"ingest_ns":978875,"stabilize_ns":32003541,"measured_ns":33048541,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-miss","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20834,"ingest_ns":468875,"stabilize_ns":19485542,"measured_ns":19975251,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12834,"build_ns":43500,"ingest_ns":979209,"stabilize_ns":120988333,"measured_ns":122023876,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":14291,"build_ns":50667,"ingest_ns":954583,"stabilize_ns":35279917,"measured_ns":36299458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19250,"ingest_ns":481417,"stabilize_ns":21274333,"measured_ns":21775000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":34000,"ingest_ns":515792,"stabilize_ns":35555125,"measured_ns":36104917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11375,"build_ns":45083,"ingest_ns":1328334,"stabilize_ns":35783459,"measured_ns":37168251,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18542,"ingest_ns":500167,"stabilize_ns":21263042,"measured_ns":21781751,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30500,"ingest_ns":501875,"stabilize_ns":32905042,"measured_ns":33437417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10875,"build_ns":43333,"ingest_ns":987916,"stabilize_ns":120368708,"measured_ns":121410832,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":22875,"ingest_ns":508125,"stabilize_ns":21532417,"measured_ns":22063417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":35792,"ingest_ns":514292,"stabilize_ns":33237333,"measured_ns":33787417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":13291,"build_ns":47375,"ingest_ns":1010292,"stabilize_ns":120791167,"measured_ns":121862125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12333,"build_ns":58875,"ingest_ns":985750,"stabilize_ns":35806834,"measured_ns":36863792,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29167,"ingest_ns":498208,"stabilize_ns":32649542,"measured_ns":33176917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12250,"build_ns":42542,"ingest_ns":996250,"stabilize_ns":121079042,"measured_ns":122130084,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":13083,"build_ns":51291,"ingest_ns":975083,"stabilize_ns":35648042,"measured_ns":36687499,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20542,"ingest_ns":488917,"stabilize_ns":21401458,"measured_ns":21910917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12625,"build_ns":45000,"ingest_ns":974500,"stabilize_ns":120017125,"measured_ns":121049250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11375,"build_ns":46375,"ingest_ns":972791,"stabilize_ns":35605542,"measured_ns":36636083,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19000,"ingest_ns":487542,"stabilize_ns":21282458,"measured_ns":21789000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28584,"ingest_ns":478416,"stabilize_ns":32911542,"measured_ns":33418542,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10125,"build_ns":44375,"ingest_ns":985375,"stabilize_ns":35798000,"measured_ns":36837875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20333,"ingest_ns":495125,"stabilize_ns":21593500,"measured_ns":22108958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30042,"ingest_ns":500916,"stabilize_ns":34932708,"measured_ns":35463666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10709,"build_ns":48291,"ingest_ns":1319375,"stabilize_ns":122794750,"measured_ns":124173125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":21209,"ingest_ns":520125,"stabilize_ns":21867792,"measured_ns":22409126,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":32375,"ingest_ns":524375,"stabilize_ns":33348875,"measured_ns":33905625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":10917,"build_ns":40625,"ingest_ns":1012375,"stabilize_ns":121824041,"measured_ns":122887958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":12959,"build_ns":51959,"ingest_ns":987083,"stabilize_ns":36241917,"measured_ns":37293918,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29500,"ingest_ns":505833,"stabilize_ns":33113041,"measured_ns":33648374,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":11834,"build_ns":45584,"ingest_ns":1006292,"stabilize_ns":120861875,"measured_ns":121925585,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":15292,"build_ns":49417,"ingest_ns":971000,"stabilize_ns":35699583,"measured_ns":36735292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"join-fanout","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20375,"ingest_ns":489750,"stabilize_ns":21302542,"measured_ns":21812667,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6166,"build_ns":38500,"ingest_ns":491458,"stabilize_ns":32046042,"measured_ns":32582166,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5916,"build_ns":36208,"ingest_ns":489459,"stabilize_ns":20125584,"measured_ns":20657167,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19250,"ingest_ns":255125,"stabilize_ns":1320084,"measured_ns":1594459,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30458,"ingest_ns":236541,"stabilize_ns":2553750,"measured_ns":2820749,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5750,"build_ns":32625,"ingest_ns":503542,"stabilize_ns":20043583,"measured_ns":20585500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19958,"ingest_ns":251708,"stabilize_ns":1290458,"measured_ns":1562124,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28125,"ingest_ns":233917,"stabilize_ns":2575084,"measured_ns":2837126,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7375,"build_ns":32416,"ingest_ns":483500,"stabilize_ns":31694125,"measured_ns":32217416,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16792,"ingest_ns":257625,"stabilize_ns":1251875,"measured_ns":1526292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":25000,"ingest_ns":234875,"stabilize_ns":2531500,"measured_ns":2791375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6708,"build_ns":31583,"ingest_ns":475875,"stabilize_ns":31925750,"measured_ns":32439916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7292,"build_ns":37709,"ingest_ns":485333,"stabilize_ns":20475667,"measured_ns":21006001,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":34208,"ingest_ns":365000,"stabilize_ns":2796417,"measured_ns":3195625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7292,"build_ns":35750,"ingest_ns":660917,"stabilize_ns":32092834,"measured_ns":32796793,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6459,"build_ns":34833,"ingest_ns":494458,"stabilize_ns":20721083,"measured_ns":21256833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":24041,"ingest_ns":255125,"stabilize_ns":1358542,"measured_ns":1637708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5584,"build_ns":37625,"ingest_ns":518333,"stabilize_ns":31652167,"measured_ns":32213709,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5500,"build_ns":32667,"ingest_ns":488834,"stabilize_ns":20422875,"measured_ns":20949876,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":21833,"ingest_ns":264375,"stabilize_ns":1325916,"measured_ns":1612124,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29709,"ingest_ns":244583,"stabilize_ns":2611416,"measured_ns":2885708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6083,"build_ns":33250,"ingest_ns":530250,"stabilize_ns":20529291,"measured_ns":21098874,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":22209,"ingest_ns":256250,"stabilize_ns":1322916,"measured_ns":1601375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":32000,"ingest_ns":273666,"stabilize_ns":2650459,"measured_ns":2956125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6375,"build_ns":34666,"ingest_ns":529083,"stabilize_ns":31933333,"measured_ns":32503457,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":21125,"ingest_ns":250500,"stabilize_ns":1287833,"measured_ns":1559458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":27542,"ingest_ns":244750,"stabilize_ns":2546291,"measured_ns":2818583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6083,"build_ns":29875,"ingest_ns":511083,"stabilize_ns":31654208,"measured_ns":32201249,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5875,"build_ns":29833,"ingest_ns":489416,"stabilize_ns":20473917,"measured_ns":20999041,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30917,"ingest_ns":255500,"stabilize_ns":2576875,"measured_ns":2863292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6208,"build_ns":32000,"ingest_ns":513458,"stabilize_ns":32142084,"measured_ns":32693750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6250,"build_ns":33708,"ingest_ns":500750,"stabilize_ns":20531958,"measured_ns":21072666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"distinct","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":23000,"ingest_ns":258500,"stabilize_ns":1311834,"measured_ns":1593334,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6375,"build_ns":35667,"ingest_ns":511375,"stabilize_ns":32185542,"measured_ns":32738959,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5625,"build_ns":33584,"ingest_ns":491084,"stabilize_ns":20808916,"measured_ns":21339209,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":26875,"ingest_ns":254292,"stabilize_ns":1289708,"measured_ns":1570875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":33917,"ingest_ns":229875,"stabilize_ns":2589958,"measured_ns":2853750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":8083,"build_ns":36917,"ingest_ns":514167,"stabilize_ns":20542458,"measured_ns":21101625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":23833,"ingest_ns":254959,"stabilize_ns":1318625,"measured_ns":1597417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30166,"ingest_ns":238375,"stabilize_ns":2627417,"measured_ns":2895958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7375,"build_ns":35542,"ingest_ns":509125,"stabilize_ns":31909084,"measured_ns":32461126,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19167,"ingest_ns":258584,"stabilize_ns":1288291,"measured_ns":1566042,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30375,"ingest_ns":246167,"stabilize_ns":2566542,"measured_ns":2843084,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6250,"build_ns":30959,"ingest_ns":505416,"stabilize_ns":32689667,"measured_ns":33232292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7083,"build_ns":41375,"ingest_ns":507834,"stabilize_ns":20974625,"measured_ns":21530917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":31958,"ingest_ns":267334,"stabilize_ns":2636917,"measured_ns":2936209,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6958,"build_ns":34667,"ingest_ns":495041,"stabilize_ns":32308792,"measured_ns":32845458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6625,"build_ns":33666,"ingest_ns":489959,"stabilize_ns":20605708,"measured_ns":21135958,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20791,"ingest_ns":260708,"stabilize_ns":1325167,"measured_ns":1606666,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5500,"build_ns":35667,"ingest_ns":491583,"stabilize_ns":32350458,"measured_ns":32883208,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6375,"build_ns":31958,"ingest_ns":498625,"stabilize_ns":20646417,"measured_ns":21183375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19791,"ingest_ns":255083,"stabilize_ns":1313625,"measured_ns":1588499,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29583,"ingest_ns":236334,"stabilize_ns":2695333,"measured_ns":2961250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":7375,"build_ns":36291,"ingest_ns":515709,"stabilize_ns":20589084,"measured_ns":21148459,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":21417,"ingest_ns":253000,"stabilize_ns":1316083,"measured_ns":1590500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30584,"ingest_ns":250041,"stabilize_ns":2579209,"measured_ns":2859834,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6417,"build_ns":33750,"ingest_ns":511792,"stabilize_ns":32030417,"measured_ns":32582376,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":16958,"ingest_ns":248458,"stabilize_ns":1279834,"measured_ns":1545250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":24792,"ingest_ns":246417,"stabilize_ns":2547792,"measured_ns":2819001,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5916,"build_ns":30417,"ingest_ns":523125,"stabilize_ns":32133125,"measured_ns":32692583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5584,"build_ns":31042,"ingest_ns":490750,"stabilize_ns":20514292,"measured_ns":21041668,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29542,"ingest_ns":257958,"stabilize_ns":2599917,"measured_ns":2887417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5792,"build_ns":33792,"ingest_ns":499750,"stabilize_ns":32324417,"measured_ns":32863751,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6666,"build_ns":37333,"ingest_ns":502584,"stabilize_ns":20873875,"measured_ns":21420458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"count","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":22083,"ingest_ns":255959,"stabilize_ns":1323792,"measured_ns":1601834,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6125,"build_ns":38209,"ingest_ns":491209,"stabilize_ns":33540750,"measured_ns":34076293,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6667,"build_ns":37334,"ingest_ns":517333,"stabilize_ns":21388042,"measured_ns":21949376,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19459,"ingest_ns":254750,"stabilize_ns":7025458,"measured_ns":7299667,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":27416,"ingest_ns":250042,"stabilize_ns":10609916,"measured_ns":10887374,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6584,"build_ns":37875,"ingest_ns":493333,"stabilize_ns":21684458,"measured_ns":22222250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":21084,"ingest_ns":261000,"stabilize_ns":7110375,"measured_ns":7392459,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":27583,"ingest_ns":260875,"stabilize_ns":10744250,"measured_ns":11032708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6916,"build_ns":37916,"ingest_ns":517208,"stabilize_ns":33052417,"measured_ns":33614457,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":18042,"ingest_ns":258500,"stabilize_ns":7111209,"measured_ns":7387751,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":24708,"ingest_ns":245083,"stabilize_ns":10720542,"measured_ns":10990333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6166,"build_ns":30625,"ingest_ns":490125,"stabilize_ns":33202792,"measured_ns":33729708,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5667,"build_ns":35333,"ingest_ns":505458,"stabilize_ns":21532125,"measured_ns":22078583,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":30542,"ingest_ns":269000,"stabilize_ns":10768541,"measured_ns":11068083,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6667,"build_ns":34750,"ingest_ns":504042,"stabilize_ns":33116959,"measured_ns":33662418,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5625,"build_ns":32333,"ingest_ns":489792,"stabilize_ns":21443875,"measured_ns":21971625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20500,"ingest_ns":254042,"stabilize_ns":7140250,"measured_ns":7414792,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5792,"build_ns":35916,"ingest_ns":494500,"stabilize_ns":33033125,"measured_ns":33569333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6209,"build_ns":34667,"ingest_ns":479125,"stabilize_ns":21414292,"measured_ns":21934293,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":21417,"ingest_ns":263750,"stabilize_ns":7164917,"measured_ns":7450084,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":29542,"ingest_ns":254959,"stabilize_ns":10878084,"measured_ns":11162585,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6667,"build_ns":37000,"ingest_ns":529875,"stabilize_ns":21835583,"measured_ns":22409125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19584,"ingest_ns":257791,"stabilize_ns":7240667,"measured_ns":7518042,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":32042,"ingest_ns":271041,"stabilize_ns":10861209,"measured_ns":11164292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6625,"build_ns":39000,"ingest_ns":507708,"stabilize_ns":33722500,"measured_ns":34275833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":19291,"ingest_ns":270958,"stabilize_ns":7179667,"measured_ns":7469916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":25292,"ingest_ns":250875,"stabilize_ns":10783458,"measured_ns":11059625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6542,"build_ns":31667,"ingest_ns":500500,"stabilize_ns":33720083,"measured_ns":34258792,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5292,"build_ns":33916,"ingest_ns":489125,"stabilize_ns":21647583,"measured_ns":22175916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":28667,"ingest_ns":278542,"stabilize_ns":10874916,"measured_ns":11182125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":6500,"build_ns":34334,"ingest_ns":502083,"stabilize_ns":33424875,"measured_ns":33967792,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":5625,"build_ns":31709,"ingest_ns":493375,"stabilize_ns":21594166,"measured_ns":22124875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"min","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"keys":1000,"fanout":4,"seed":3237998146,"prepare_ns":0,"build_ns":20458,"ingest_ns":257292,"stabilize_ns":7160625,"measured_ns":7438375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":6500,"build_ns":32292,"initial_ingest_ns":509542,"initial_stabilize_ns":23790208,"update_ingest_ns":11417,"update_stabilize_ns":422666,"measured_ns":434083,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":7583,"build_ns":30041,"initial_ingest_ns":508917,"initial_stabilize_ns":12656875,"update_ingest_ns":10958,"update_stabilize_ns":260292,"measured_ns":271250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":18125,"initial_ingest_ns":317917,"initial_stabilize_ns":3813042,"update_ingest_ns":6416,"update_stabilize_ns":54000,"measured_ns":60416,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":22583,"initial_ingest_ns":318167,"initial_stabilize_ns":5581833,"update_ingest_ns":6875,"update_stabilize_ns":97542,"measured_ns":104417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":6292,"build_ns":31084,"initial_ingest_ns":512917,"initial_stabilize_ns":12644042,"update_ingest_ns":11208,"update_stabilize_ns":262667,"measured_ns":273875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":15541,"initial_ingest_ns":313833,"initial_stabilize_ns":3851375,"update_ingest_ns":6542,"update_stabilize_ns":53583,"measured_ns":60125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":22625,"initial_ingest_ns":314000,"initial_stabilize_ns":5536000,"update_ingest_ns":6583,"update_stabilize_ns":94542,"measured_ns":101125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":6833,"build_ns":29625,"initial_ingest_ns":518959,"initial_stabilize_ns":23762042,"update_ingest_ns":11625,"update_stabilize_ns":429750,"measured_ns":441375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":12083,"initial_ingest_ns":308416,"initial_stabilize_ns":3819709,"update_ingest_ns":6209,"update_stabilize_ns":52750,"measured_ns":58959,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":17250,"initial_ingest_ns":309209,"initial_stabilize_ns":5506291,"update_ingest_ns":6292,"update_stabilize_ns":91708,"measured_ns":98000,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":5500,"build_ns":23375,"initial_ingest_ns":510833,"initial_stabilize_ns":23756125,"update_ingest_ns":10958,"update_stabilize_ns":425292,"measured_ns":436250,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":6208,"build_ns":29625,"initial_ingest_ns":513000,"initial_stabilize_ns":12654125,"update_ingest_ns":10959,"update_stabilize_ns":262625,"measured_ns":273584,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":25083,"initial_ingest_ns":328792,"initial_stabilize_ns":5573583,"update_ingest_ns":7083,"update_stabilize_ns":96750,"measured_ns":103833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":8167,"build_ns":33000,"initial_ingest_ns":510417,"initial_stabilize_ns":23784667,"update_ingest_ns":11333,"update_stabilize_ns":426042,"measured_ns":437375,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":6625,"build_ns":30875,"initial_ingest_ns":534750,"initial_stabilize_ns":12668750,"update_ingest_ns":11041,"update_stabilize_ns":261375,"measured_ns":272416,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":16250,"initial_ingest_ns":314958,"initial_stabilize_ns":3782209,"update_ingest_ns":6209,"update_stabilize_ns":52916,"measured_ns":59125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":6208,"build_ns":32500,"initial_ingest_ns":512042,"initial_stabilize_ns":23617667,"update_ingest_ns":13666,"update_stabilize_ns":422792,"measured_ns":436458,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":5917,"build_ns":33625,"initial_ingest_ns":510417,"initial_stabilize_ns":12628041,"update_ingest_ns":10917,"update_stabilize_ns":260708,"measured_ns":271625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":14417,"initial_ingest_ns":315125,"initial_stabilize_ns":3805834,"update_ingest_ns":6791,"update_stabilize_ns":52125,"measured_ns":58916,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":20125,"initial_ingest_ns":309417,"initial_stabilize_ns":5589584,"update_ingest_ns":6541,"update_stabilize_ns":95292,"measured_ns":101833,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":5667,"build_ns":30500,"initial_ingest_ns":513667,"initial_stabilize_ns":12681416,"update_ingest_ns":10917,"update_stabilize_ns":261375,"measured_ns":272292,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":12584,"initial_ingest_ns":314250,"initial_stabilize_ns":3760875,"update_ingest_ns":8000,"update_stabilize_ns":57875,"measured_ns":65875,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":32500,"initial_ingest_ns":301208,"initial_stabilize_ns":5523709,"update_ingest_ns":6500,"update_stabilize_ns":101000,"measured_ns":107500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":10667,"build_ns":37916,"initial_ingest_ns":502917,"initial_stabilize_ns":23591125,"update_ingest_ns":11875,"update_stabilize_ns":426875,"measured_ns":438750,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":16167,"initial_ingest_ns":304375,"initial_stabilize_ns":3773041,"update_ingest_ns":6250,"update_stabilize_ns":53875,"measured_ns":60125,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":21584,"initial_ingest_ns":306792,"initial_stabilize_ns":5592250,"update_ingest_ns":5875,"update_stabilize_ns":98625,"measured_ns":104500,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":7708,"build_ns":27875,"initial_ingest_ns":511375,"initial_stabilize_ns":23531375,"update_ingest_ns":12292,"update_stabilize_ns":422625,"measured_ns":434917,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":7333,"build_ns":31750,"initial_ingest_ns":512708,"initial_stabilize_ns":12618333,"update_ingest_ns":13917,"update_stabilize_ns":272500,"measured_ns":286417,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":22875,"initial_ingest_ns":320084,"initial_stabilize_ns":5622750,"update_ingest_ns":7042,"update_stabilize_ns":97583,"measured_ns":104625,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":7667,"build_ns":30958,"initial_ingest_ns":506792,"initial_stabilize_ns":23500541,"update_ingest_ns":11625,"update_stabilize_ns":421708,"measured_ns":433333,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":7209,"build_ns":27333,"initial_ingest_ns":509167,"initial_stabilize_ns":12605167,"update_ingest_ns":11083,"update_stabilize_ns":265459,"measured_ns":276542,"checked_against":"expected"} +{"schema":2,"benchmark":"operators","case":"arrange-update","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"rows":100000,"update_rows":1000,"seed":3237998146,"prepare_ns":0,"build_ns":14584,"initial_ingest_ns":317167,"initial_stabilize_ns":3776541,"update_ingest_ns":6250,"update_stabilize_ns":54125,"measured_ns":60375,"checked_against":"expected"} diff --git a/benchmarks/reports/2026-08-19-operators.md b/benchmarks/reports/2026-08-19-operators.md new file mode 100644 index 000000000..7b505c6bf --- /dev/null +++ b/benchmarks/reports/2026-08-19-operators.md @@ -0,0 +1,164 @@ +# V0 operator scorecard + +This report supersedes the preliminary 2026-08-17 scorecard, which measured a dirty +working tree on a different machine and attributed DDIR's runtime embedding cost to +interpretation. Its numbers should not be compared against these. + +## Configuration + +The benchmark ran on 2026-08-19 on an Apple M4 Mac mini with four performance cores, six efficiency cores, and 16 GB of memory. + +The operating system was macOS 15.6 (build 24G84), Darwin 24.6.0, on `arm64`. + +The compiler was `rustc 1.95.0 (59807616e 2026-04-14)`. + +The build used the workspace release profile, including LTO and one codegen unit. + +All three binaries install mimalloc as the global allocator. These workloads are allocation-bound, so a reproduction under the system allocator will not match. + +The revision was `1d02e4d515cf629d2f685134ddf5b5221f278c9b` with a clean working tree, and every record in this report carries `"dirty": false`. + +Each load-time point used one timely worker, 100,000 input rows, seed `3237998146`, two warmup runs, and eight measured runs. + +Eight runs is two complete rotations of the four implementations, so each implementation leads a repetition exactly twice. + +Reducer and duplicate-arrangement cases used 1,000 keys. + +The fanout join used fanout four. + +The update case formed an arrangement of 100,000 rows, then retracted 1,000 existing rows and inserted 1,000 new rows. + +The reported times are medians of `measured_ns` across the eight runs. + +The [raw JSONL records](2026-08-19-operators.jsonl) contain all 512 measured implementation runs. + +## The two compiled implementations + +Atomic operators have one typed operator plan: DDIR does not force a different map or a different join. But DDIR renders every program inside an iterative scope, so its operators run at `Product>` where a typed program runs at `u64`. + +`compiled` renders the plan in the root scope at `u64`, which is what a typed program would write. + +`compiled-ddir` renders the identical plan in the iterative scope at DDIR's timestamp. + +The ratio between them is the cost of DDIR's runtime embedding. The previous report folded it into the interpretation ratio, where it inflated every row and would have grown with any future change to DDIR's timestamp without any interpreter getting slower. + +Both compiled implementations are executed during validation, not assumed to agree: rendering at a coarser timestamp lattice selects different code paths inside the reduce and join operators. + +## Absolute time + +| Case | Compiled | Compiled, DDIR scope | DDIR Vec | DDIR Corgi | +| --- | ---: | ---: | ---: | ---: | +| Identity | 0.258 ms | 0.526 ms | 1.284 ms | 8.088 ms | +| One map | 0.990 ms | 1.827 ms | 22.997 ms | 8.413 ms | +| Eight maps | 3.555 ms | 6.649 ms | 97.523 ms | 10.038 ms | +| Filter: retain none | 0.729 ms | 1.057 ms | 14.949 ms | 8.412 ms | +| Filter: retain half | 0.913 ms | 1.303 ms | 17.044 ms | 8.903 ms | +| Filter: retain all | 0.738 ms | 1.160 ms | 18.858 ms | 9.061 ms | +| Arrange: sorted unique | 4.098 ms | 5.928 ms | 24.250 ms | 13.139 ms | +| Arrange: random unique | 9.343 ms | 12.423 ms | 35.640 ms | 13.758 ms | +| Arrange: duplicates | 1.701 ms | 2.647 ms | 15.394 ms | 11.483 ms | +| Join: one-to-one | 22.695 ms | 30.344 ms | 81.850 ms | 35.663 ms | +| Join: partial miss | 20.236 ms | 26.806 ms | 72.103 ms | 33.169 ms | +| Join: fanout four | 21.862 ms | 33.718 ms | 121.975 ms | 36.787 ms | +| Distinct | 1.594 ms | 2.850 ms | 32.472 ms | 21.003 ms | +| Count | 1.589 ms | 2.874 ms | 32.792 ms | 21.166 ms | +| Min | 7.427 ms | 11.064 ms | 33.849 ms | 22.102 ms | +| Arrange: update 1,000 | 0.060 ms | 0.104 ms | 0.436 ms | 0.273 ms | + +## Ratios + +| Case | Embedding | Vec / embedded | Corgi / Vec | Corgi / embedded | +| --- | ---: | ---: | ---: | ---: | +| Identity | 2.04x | 2.44x | 6.301x | 15.37x | +| One map | 1.85x | 12.59x | 0.366x | 4.60x | +| Eight maps | 1.87x | 14.67x | 0.103x | 1.51x | +| Filter: retain none | 1.45x | 14.14x | 0.563x | 7.96x | +| Filter: retain half | 1.43x | 13.08x | 0.522x | 6.83x | +| Filter: retain all | 1.57x | 16.26x | 0.480x | 7.81x | +| Arrange: sorted unique | 1.45x | 4.09x | 0.542x | 2.22x | +| Arrange: random unique | 1.33x | 2.87x | 0.386x | 1.11x | +| Arrange: duplicates | 1.56x | 5.82x | 0.746x | 4.34x | +| Join: one-to-one | 1.34x | 2.70x | 0.436x | 1.18x | +| Join: partial miss | 1.32x | 2.69x | 0.460x | 1.24x | +| Join: fanout four | 1.54x | 3.62x | 0.302x | 1.09x | +| Distinct | 1.79x | 11.39x | 0.647x | 7.37x | +| Count | 1.81x | 11.41x | 0.645x | 7.37x | +| Min | 1.49x | 3.06x | 0.653x | 2.00x | +| Arrange: update 1,000 | 1.73x | 4.19x | 0.626x | 2.62x | + +## Observations + +Rendering the same typed plan in DDIR's iterative scope costs between 1.32x and 2.04x. That is a large fraction of what the previous report called interpretation, and it is paid before any interpreter runs. + +The embedding cost is largest where operator work is smallest. Identity pays 2.04x for an `enter` and a wider timestamp and nothing else; the joins pay 1.32x to 1.54x because real operator work dominates. + +Corgi does not outperform compiled Rust on any V0 row at this scale, in either scope. + +Corgi outperforms Vec on every row except identity, from 0.75x down to 0.10x. + +The identity row measures conversion, not operators. Corgi spends 7.599 ms of its 8.088 ms in stabilization, which for this case is the `ToCorgi` conversion of 100,000 rows into a container, with no operator downstream to amortize it. + +Eight maps is Corgi's best row: 0.103x of Vec, and only 1.51x the same plan compiled into the same scope. Chained maps amortize the fixed conversion across eight columnar passes. + +The joins leave the smallest remaining gap after the conversion is amortized, at 1.09x to 1.24x of the embedded compiled plan. + +Random input order raises compiled arrangement time from 4.098 ms to 9.343 ms, while Corgi moves only from 13.139 ms to 13.758 ms. Corgi is largely insensitive to input order here; the typed path is not. + +The 1,000-row arrangement update takes a median 0.060 ms compiled, 0.104 ms compiled in DDIR's scope, 0.436 ms with Vec, and 0.273 ms with Corgi. These are short enough that a larger batch or more repetitions would be appropriate before drawing fine-grained conclusions. + +## Variation + +Max-minus-min as a percentage of the median, over the eight measured runs. + +| Case | Compiled | Compiled, DDIR scope | DDIR Vec | DDIR Corgi | +| --- | ---: | ---: | ---: | ---: | +| Identity | 21.0% | 17.4% | 4.1% | 2.2% | +| One map | 8.3% | 3.2% | 1.1% | 2.8% | +| Eight maps | 9.1% | 17.8% | 2.0% | 2.1% | +| Filter: retain none | 14.2% | 9.2% | 2.4% | 3.0% | +| Filter: retain half | 6.4% | 6.6% | 0.9% | 1.5% | +| Filter: retain all | 19.0% | 4.4% | 0.8% | 3.4% | +| Arrange: sorted unique | 5.2% | 3.5% | 7.1% | 2.3% | +| Arrange: random unique | 2.6% | 2.6% | 5.1% | 3.1% | +| Arrange: duplicates | 5.9% | 7.5% | 1.0% | 3.3% | +| Join: one-to-one | 2.2% | 2.6% | 4.0% | 5.5% | +| Join: partial miss | 2.1% | 4.2% | 3.8% | 3.0% | +| Join: fanout four | 2.9% | 8.7% | 2.6% | 2.7% | +| Distinct | 7.0% | 14.2% | 1.8% | 3.2% | +| Count | 3.9% | 5.0% | 2.4% | 2.3% | +| Min | 2.9% | 2.7% | 2.1% | 2.1% | +| Arrange: update 1,000 | 11.6% | 9.1% | 1.8% | 5.6% | + +The dispersed rows are the sub-millisecond ones, where fixed cost rather than throughput is being measured. Every ratio drawn from a row above roughly 10% should be read as one significant figure. + +Balancing the rotation did not measurably reduce dispersion on this machine. It was adopted because an unbalanced rotation biases the median, not because it was observed to reduce variance, and this report should not be read as evidence that it does. + +## Measurement boundaries + +Load-time `measured_ns` sums parsing and lowering, dataflow construction, input submission, and stabilization. + +The compiled rows report zero parsing and lowering time. + +The update row excludes parsing, construction, and initial arrangement formation from `measured_ns`. It includes only submission and stabilization of the second batch. The excluded phases remain present as separate raw fields. + +Every implementation consumes rows prepared before the timed region, by value. The previous report's harness cloned each `Value` row at the DDIR input handle, which charged the DDIR paths a deep copy the typed paths never paid; it showed as a flat 2.4 ms against 0.27 ms in every case. Ingest is now 0.50 ms for DDIR against 0.25 ms compiled, and the remainder is the real cost of submitting `Value` rows. + +Timed dataflows probe their native output containers without capturing or materializing the result. + +Conversion of DDIR input rows into a Corgi container is inside stabilization, because it is an operator in the timed dataflow. + +Before timing each load case, an untimed run materializes all four outputs and compares them exactly against a hand-written expected result. + +Before timing the update case, an untimed two-batch run consolidates all emitted changes and checks the final arrangement exactly across all four implementations. + +The implementation order rotates between repetitions, and the run count is required to be a multiple of the implementation count so that the rotation completes. + +## Limits + +V0 is single-worker and in-memory. + +It does not measure scale-out, peak memory, allocation counts, skew sweeps, row-width sweeps, or long update sequences. + +Each case has one fixed scale point, so fixed overhead and throughput are not yet separated by a fitted curve. The sub-millisecond rows in particular are dominated by fixed cost. + +The embedding ratio is measured only at the root of the iterative scope, where `PointStamp` is empty. A DDIR program that actually iterates carries longer pointstamps, and this scorecard says nothing about how the embedding cost grows with depth. diff --git a/benchmarks/reports/2026-08-19-scc.jsonl b/benchmarks/reports/2026-08-19-scc.jsonl new file mode 100644 index 000000000..4b334f73b --- /dev/null +++ b/benchmarks/reports/2026-08-19-scc.jsonl @@ -0,0 +1,96 @@ +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":114791,"ingest_ns":3500,"stabilize_ns":8821375,"measured_ns":8939666,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":98333,"ingest_ns":3458,"stabilize_ns":9337250,"measured_ns":9439041,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":37375,"build_ns":146041,"ingest_ns":10292,"stabilize_ns":27397417,"measured_ns":27591125,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":37625,"build_ns":131292,"ingest_ns":11125,"stabilize_ns":30359041,"measured_ns":30539083,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":121792,"ingest_ns":3375,"stabilize_ns":8854417,"measured_ns":8979584,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":101958,"ingest_ns":3208,"stabilize_ns":9308916,"measured_ns":9414082,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":38084,"build_ns":123125,"ingest_ns":24792,"stabilize_ns":27630541,"measured_ns":27816542,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":39375,"build_ns":138709,"ingest_ns":11209,"stabilize_ns":30464834,"measured_ns":30654127,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":107417,"ingest_ns":4000,"stabilize_ns":8829000,"measured_ns":8940417,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":96291,"ingest_ns":3542,"stabilize_ns":9388291,"measured_ns":9488124,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":41583,"build_ns":144708,"ingest_ns":10458,"stabilize_ns":27672042,"measured_ns":27868791,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":44666,"build_ns":146250,"ingest_ns":10417,"stabilize_ns":30512000,"measured_ns":30713333,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":151708,"ingest_ns":4041,"stabilize_ns":9122125,"measured_ns":9277874,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":109417,"ingest_ns":3500,"stabilize_ns":9409875,"measured_ns":9522792,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":51250,"build_ns":164000,"ingest_ns":10166,"stabilize_ns":28152125,"measured_ns":28377541,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":42583,"build_ns":141166,"ingest_ns":17500,"stabilize_ns":30660000,"measured_ns":30861249,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":145833,"ingest_ns":4125,"stabilize_ns":9049667,"measured_ns":9199625,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":103125,"ingest_ns":3500,"stabilize_ns":9518458,"measured_ns":9625083,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":45167,"build_ns":154333,"ingest_ns":10917,"stabilize_ns":28320500,"measured_ns":28530917,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":43166,"build_ns":145833,"ingest_ns":12459,"stabilize_ns":31124375,"measured_ns":31325833,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":119000,"ingest_ns":3875,"stabilize_ns":9020500,"measured_ns":9143375,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":99209,"ingest_ns":3500,"stabilize_ns":9496417,"measured_ns":9599126,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":40500,"build_ns":147625,"ingest_ns":11417,"stabilize_ns":28108125,"measured_ns":28307667,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":39708,"build_ns":146500,"ingest_ns":11125,"stabilize_ns":31238500,"measured_ns":31435833,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":121459,"ingest_ns":3666,"stabilize_ns":9048417,"measured_ns":9173542,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":104958,"ingest_ns":3625,"stabilize_ns":9449083,"measured_ns":9557666,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":39459,"build_ns":140959,"ingest_ns":11375,"stabilize_ns":27362083,"measured_ns":27553876,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":43666,"build_ns":135917,"ingest_ns":11000,"stabilize_ns":31063209,"measured_ns":31253792,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":135958,"ingest_ns":4250,"stabilize_ns":8943292,"measured_ns":9083500,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":0,"build_ns":129875,"ingest_ns":4042,"stabilize_ns":9432958,"measured_ns":9566875,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":40000,"build_ns":134500,"ingest_ns":10375,"stabilize_ns":27599042,"measured_ns":27783917,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":1000,"edges":2000,"seed":3237998146,"prepare_ns":44625,"build_ns":141000,"ingest_ns":11916,"stabilize_ns":30318167,"measured_ns":30515708,"output_records":1291,"output_weight":1292,"output_digest":"35248ebae1c95da1","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":167542,"ingest_ns":35916,"stabilize_ns":52811417,"measured_ns":53014875,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":115959,"ingest_ns":32416,"stabilize_ns":56470375,"measured_ns":56618750,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":57708,"build_ns":178500,"ingest_ns":99250,"stabilize_ns":167375250,"measured_ns":167710708,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":55667,"build_ns":169666,"ingest_ns":103209,"stabilize_ns":195968375,"measured_ns":196296917,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":160084,"ingest_ns":34958,"stabilize_ns":52919958,"measured_ns":53115000,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":116584,"ingest_ns":35417,"stabilize_ns":56557125,"measured_ns":56709126,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":47250,"build_ns":167000,"ingest_ns":97709,"stabilize_ns":169723125,"measured_ns":170035084,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":49417,"build_ns":164541,"ingest_ns":103375,"stabilize_ns":194435792,"measured_ns":194753125,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":162750,"ingest_ns":35584,"stabilize_ns":52606875,"measured_ns":52805209,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":115750,"ingest_ns":35459,"stabilize_ns":56855709,"measured_ns":57006918,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":51125,"build_ns":182667,"ingest_ns":97166,"stabilize_ns":169218542,"measured_ns":169549500,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":59875,"build_ns":178959,"ingest_ns":103792,"stabilize_ns":199990791,"measured_ns":200333417,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":153625,"ingest_ns":38167,"stabilize_ns":52328625,"measured_ns":52520417,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":152416,"ingest_ns":37333,"stabilize_ns":55773625,"measured_ns":55963374,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":54750,"build_ns":177917,"ingest_ns":109416,"stabilize_ns":167666833,"measured_ns":168008916,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":58375,"build_ns":163333,"ingest_ns":106667,"stabilize_ns":197000834,"measured_ns":197329209,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":155041,"ingest_ns":36458,"stabilize_ns":52626667,"measured_ns":52818166,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":117875,"ingest_ns":32959,"stabilize_ns":55690292,"measured_ns":55841126,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":52584,"build_ns":176958,"ingest_ns":95292,"stabilize_ns":167197541,"measured_ns":167522375,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":48917,"build_ns":158708,"ingest_ns":96125,"stabilize_ns":195526875,"measured_ns":195830625,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":179417,"ingest_ns":37792,"stabilize_ns":53088500,"measured_ns":53305709,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":126292,"ingest_ns":34959,"stabilize_ns":56867041,"measured_ns":57028292,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":46291,"build_ns":156708,"ingest_ns":95916,"stabilize_ns":169844375,"measured_ns":170143290,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":53834,"build_ns":174041,"ingest_ns":96375,"stabilize_ns":197731000,"measured_ns":198055250,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":150042,"ingest_ns":33333,"stabilize_ns":52393000,"measured_ns":52576375,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":121750,"ingest_ns":34667,"stabilize_ns":56168833,"measured_ns":56325250,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":49375,"build_ns":182250,"ingest_ns":110875,"stabilize_ns":169086500,"measured_ns":169429000,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":50208,"build_ns":164000,"ingest_ns":91416,"stabilize_ns":197785667,"measured_ns":198091291,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":174917,"ingest_ns":39000,"stabilize_ns":52535625,"measured_ns":52749542,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":0,"build_ns":145875,"ingest_ns":35541,"stabilize_ns":56672959,"measured_ns":56854375,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":49166,"build_ns":175167,"ingest_ns":105458,"stabilize_ns":167338292,"measured_ns":167668083,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":10000,"edges":20000,"seed":3237998146,"prepare_ns":53000,"build_ns":169209,"ingest_ns":106917,"stabilize_ns":194670708,"measured_ns":194999834,"output_records":12782,"output_weight":12783,"output_digest":"f68c8364290a7385","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":186083,"ingest_ns":331625,"stabilize_ns":594280375,"measured_ns":594798083,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":158792,"ingest_ns":324375,"stabilize_ns":641551333,"measured_ns":642034500,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":69417,"build_ns":203417,"ingest_ns":1273750,"stabilize_ns":1965522916,"measured_ns":1967069500,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":0,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":65375,"build_ns":193250,"ingest_ns":1094167,"stabilize_ns":2580135417,"measured_ns":2581488209,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":165166,"ingest_ns":318583,"stabilize_ns":592391333,"measured_ns":592875082,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":162584,"ingest_ns":339417,"stabilize_ns":639544583,"measured_ns":640046584,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":58666,"build_ns":195291,"ingest_ns":1044334,"stabilize_ns":1954237166,"measured_ns":1955535457,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":1,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":64833,"build_ns":204250,"ingest_ns":1072000,"stabilize_ns":2570521666,"measured_ns":2571862749,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":189542,"ingest_ns":342167,"stabilize_ns":593668541,"measured_ns":594200250,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":154833,"ingest_ns":328333,"stabilize_ns":643424708,"measured_ns":643907874,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":68708,"build_ns":224167,"ingest_ns":1290833,"stabilize_ns":1966391542,"measured_ns":1967975250,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":2,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":64083,"build_ns":196792,"ingest_ns":1086291,"stabilize_ns":2583940042,"measured_ns":2585287208,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":183542,"ingest_ns":329042,"stabilize_ns":592988375,"measured_ns":593500959,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":164125,"ingest_ns":330625,"stabilize_ns":641747875,"measured_ns":642242625,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":69792,"build_ns":228916,"ingest_ns":1213375,"stabilize_ns":1970637583,"measured_ns":1972149666,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":3,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":59542,"build_ns":195000,"ingest_ns":1017541,"stabilize_ns":2583519667,"measured_ns":2584791750,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":182167,"ingest_ns":350250,"stabilize_ns":594635750,"measured_ns":595168167,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":160125,"ingest_ns":329167,"stabilize_ns":639633917,"measured_ns":640123209,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":68792,"build_ns":203459,"ingest_ns":1252584,"stabilize_ns":1975839166,"measured_ns":1977364001,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":4,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":60583,"build_ns":203083,"ingest_ns":1070292,"stabilize_ns":2608980125,"measured_ns":2610314083,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":176250,"ingest_ns":337000,"stabilize_ns":594759416,"measured_ns":595272666,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":161542,"ingest_ns":345834,"stabilize_ns":640467500,"measured_ns":640974876,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":60292,"build_ns":199041,"ingest_ns":1053708,"stabilize_ns":1978856917,"measured_ns":1980169958,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":5,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":65583,"build_ns":190125,"ingest_ns":1097209,"stabilize_ns":2587266625,"measured_ns":2588619542,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":187375,"ingest_ns":343458,"stabilize_ns":596896375,"measured_ns":597427208,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":159417,"ingest_ns":332709,"stabilize_ns":642521041,"measured_ns":643013167,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":70167,"build_ns":222583,"ingest_ns":1281625,"stabilize_ns":1967157792,"measured_ns":1968732167,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":6,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":61833,"build_ns":201583,"ingest_ns":1055625,"stabilize_ns":2582251666,"measured_ns":2583570707,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":186125,"ingest_ns":320583,"stabilize_ns":596757125,"measured_ns":597263833,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"compiled-ddir","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":0,"build_ns":168541,"ingest_ns":349250,"stabilize_ns":641530583,"measured_ns":642048374,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-corgi","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":67750,"build_ns":225084,"ingest_ns":1216500,"stabilize_ns":1968326667,"measured_ns":1969836001,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} +{"schema":2,"benchmark":"scc","implementation":"ddir-vec","revision":"1d02e4d515cf629d2f685134ddf5b5221f278c9b","dirty":false,"run":7,"nodes":100000,"edges":200000,"seed":3237998146,"prepare_ns":63167,"build_ns":185125,"ingest_ns":1082750,"stabilize_ns":2594465250,"measured_ns":2595796292,"output_records":126361,"output_weight":126361,"output_digest":"b0b28b0bcb6107ea","checked_against":"compiled-ddir"} diff --git a/benchmarks/reports/2026-08-19-scc.md b/benchmarks/reports/2026-08-19-scc.md new file mode 100644 index 000000000..83097087f --- /dev/null +++ b/benchmarks/reports/2026-08-19-scc.md @@ -0,0 +1,92 @@ +# SCC benchmark report + +This report supersedes the preliminary 2026-08-17 SCC report, which measured a dirty +working tree on a different machine. Its absolute numbers are not comparable to these. + +## Configuration + +The benchmark ran on 2026-08-19 on an Apple M4 Mac mini with four performance cores, six efficiency cores, and 16 GB of memory. + +The operating system was macOS 15.6 (build 24G84), Darwin 24.6.0, on `arm64`. + +The compiler was `rustc 1.95.0 (59807616e 2026-04-14)`. + +The build used the workspace release profile, including LTO and one codegen unit. + +The binary installs mimalloc as the global allocator. This workload is allocation-bound, so a reproduction under the system allocator will not match. + +The revision was `1d02e4d515cf629d2f685134ddf5b5221f278c9b` with a clean working tree, and every record in this report carries `"dirty": false`. + +Each point used one timely worker, seed `3237998146`, two warmup runs, and eight measured runs. + +Eight runs is two complete rotations of the four implementations, so each implementation leads a repetition exactly twice. + +Each graph contained twice as many generated edges as nodes. + +Both compiled implementations used the node identifier to select the same logarithmic label-introduction round as DDIR's `enter_at($1[0])`. + +The reported times are medians of `measured_ns` across the eight runs. + +The [raw JSONL records](2026-08-19-scc.jsonl) contain all 96 measured implementation runs. + +## Absolute time + +| Nodes | Edges | Output records | Compiled | Compiled DDIR plan | DDIR Vec | DDIR Corgi | +| ---: | ---: | ---: | ---: | ---: | ---: | ---: | +| 1,000 | 2,000 | 1,291 | 9.113 ms | 9.540 ms | 30.787 ms | 27.843 ms | +| 10,000 | 20,000 | 12,782 | 52.812 ms | 56.664 ms | 196.813 ms | 168.719 ms | +| 100,000 | 200,000 | 126,361 | 594.983 ms | 642.041 ms | 2.585 s | 1.969 s | + +## Ratios + +| Nodes | Plan / optimized | Vec / plan | Corgi / Vec | Corgi / plan | +| ---: | ---: | ---: | ---: | ---: | +| 1,000 | 1.047x | 3.227x | 0.904x | 2.918x | +| 10,000 | 1.073x | 3.473x | 0.857x | 2.978x | +| 100,000 | 1.079x | 4.026x | 0.762x | 3.067x | + +The typed DDIR plan is 4.7% slower than optimized typed SCC at 1,000 nodes and 7.9% slower at 100,000 nodes. + +This is the cost visible from using DDIR's generic operator plan instead of the specialized typed implementation. + +Vec interpretation takes between 3.2 and 4.0 times the typed DDIR plan's time, with the ratio increasing across these three sizes. + +Corgi improves relative to Vec as the graph grows, from 0.904x of Vec time at 1,000 nodes to 0.762x at 100,000 nodes. + +Corgi remains between 2.9 and 3.1 times the typed DDIR plan at all three sizes. + +## What this benchmark does not separate + +The operator scorecard splits its compiled implementation in two, so that DDIR's runtime embedding — rendering inside an iterative scope at `Product>` — is charged separately from interpretation. + +SCC does not make that split. Both of its compiled implementations already render in nested iterative scopes, at `Product<_, usize>` rather than at `PointStamp`. `Plan / optimized` here means what it always meant: the cost of DDIR's operator plan against a specialized one. It does not isolate the timestamp. + +So the `Vec / plan` column for SCC still contains whatever the `PointStamp` lattice costs relative to `Product<_, usize>`, while the operator scorecard's `Vec / embedded` column does not. The two benchmarks' interpretation ratios are therefore not directly comparable, and a `compiled-ddir` variant rendered at DDIR's own timestamp is the obvious next step for this workload. + +## Correctness and variation + +All four implementations produced identical consolidated weighted outputs at every scale, with matching digests: `35248ebae1c95da1` at 1,000 nodes, `f68c8364290a7385` at 10,000, and `b0b28b0bcb6107ea` at 100,000. + +Max-minus-min as a percentage of the median, over the eight measured runs: + +| Nodes | Compiled | Compiled DDIR plan | DDIR Vec | DDIR Corgi | +| ---: | ---: | ---: | ---: | ---: | +| 1,000 | 3.71% | 2.21% | 2.99% | 3.51% | +| 10,000 | 1.49% | 2.10% | 2.84% | 1.55% | +| 100,000 | 0.77% | 0.60% | 1.49% | 1.25% | + +Dispersion is under 4% everywhere and falls with size, so all three size points support the ratios quoted above. + +Stabilization accounted for at least 99.0% of measured time in every run. + +This workload therefore says little about parsing, lowering, dataflow construction, or ingestion costs. The operator scorecard is where those are visible. + +## Limits + +The sweep used one seed, one edge density, one worker, and one input batch. + +SCC structure depends on the graph generator, so these results should not be generalized to other graph families. + +The timed stabilization phase includes capture of the full result, which the operator scorecard excludes. For Corgi that capture includes converting the output back into rows, so Corgi's SCC number carries a cost its operator-scorecard numbers do not. + +Correctness is checked against `compiled-ddir`, which is in turn cross-checked by the independent `strongly_connected_at` implementation. The `checked_against` field records this. diff --git a/benchmarks/src/bin/arrange_updates.rs b/benchmarks/src/bin/arrange_updates.rs new file mode 100644 index 000000000..a70432f9c --- /dev/null +++ b/benchmarks/src/bin/arrange_updates.rs @@ -0,0 +1,701 @@ +//! Four-way scorecard for steady-state arrangement maintenance. + +use std::collections::BTreeMap; +use std::io::Write; +use std::sync::mpsc::{channel, Receiver}; +use std::time::{Duration, Instant}; + +use benchmarks::{check_rotation, source}; +use differential_dataflow::dynamic::pointstamp::PointStamp; +use differential_dataflow::input::Input; +use differential_dataflow::AsCollection; +use interactive::backend::vec::Row; +use interactive::backend::{corgi, vec}; +use interactive::corgi::container::CorgiContainer; +use interactive::ir::{Diff, Time, Value}; +use interactive::{lower, parse, scope_ir}; +use mimalloc::MiMalloc; +use serde::Serialize; +use timely::dataflow::channels::pact::Pipeline; +use timely::dataflow::operators::capture::{Capture, Event}; +use timely::dataflow::operators::generic::Operator; +use timely::dataflow::operators::Probe; +use timely::order::Product; + +#[global_allocator] +static ALLOCATOR: MiMalloc = MiMalloc; + +const ARRANGE: &str = r#"export "result" = input 0 | key($0[0] ; $0[1]) | arrange;"#; + +type NativeRow = [i64; 6]; +type Canonical = Vec<(i64, i64, i64)>; + +#[derive(Clone, Copy, Debug, Eq, PartialEq)] +enum Implementation { + Compiled, + CompiledDdir, + Vec, + Corgi, +} + +impl Implementation { + const ALL: [Implementation; 4] = [ + Implementation::Compiled, + Implementation::CompiledDdir, + Implementation::Vec, + Implementation::Corgi, + ]; + + fn name(self) -> &'static str { + match self { + Implementation::Compiled => "compiled", + Implementation::CompiledDdir => "compiled-ddir", + Implementation::Vec => "ddir-vec", + Implementation::Corgi => "ddir-corgi", + } + } +} + +#[derive(Debug)] +struct Config { + rows: usize, + update_rows: usize, + seed: u64, + warmup: usize, + runs: usize, +} + +impl Config { + fn parse() -> Result { + let mut rows = 100_000; + let mut update_rows = 1_000; + let mut seed = 0xc0ff_ee42; + let mut warmup = 2; + let mut runs = Implementation::ALL.len() * 2; + let mut arguments = std::env::args().skip(1); + while let Some(argument) = arguments.next() { + let value = |name: &str, values: &mut std::iter::Skip| { + values + .next() + .ok_or_else(|| format!("{name} requires a value")) + }; + match argument.as_str() { + "--rows" => rows = number("--rows", &value("--rows", &mut arguments)?)?, + "--update-rows" => { + update_rows = + number("--update-rows", &value("--update-rows", &mut arguments)?)?; + } + "--seed" => seed = number("--seed", &value("--seed", &mut arguments)?)?, + "--warmup" => warmup = number("--warmup", &value("--warmup", &mut arguments)?)?, + "--runs" => runs = number("--runs", &value("--runs", &mut arguments)?)?, + "--help" | "-h" => { + usage(); + std::process::exit(0); + } + other => return Err(format!("unknown argument {other:?}")), + } + } + if rows == 0 || update_rows == 0 || runs == 0 { + return Err("--rows, --update-rows, and --runs must be positive".to_owned()); + } + if update_rows > rows { + return Err("--update-rows must not exceed --rows".to_owned()); + } + if rows > (i64::MAX as usize) / 2 { + return Err("--rows must not exceed i64::MAX / 2".to_owned()); + } + check_rotation(runs, Implementation::ALL.len())?; + Ok(Config { + rows, + update_rows, + seed, + warmup, + runs, + }) + } +} + +fn number(name: &str, value: &str) -> Result { + value + .parse() + .map_err(|_| format!("invalid {name} value {value:?}")) +} + +fn usage() { + eprintln!( + "usage: arrange_updates [--rows N] [--update-rows N] [--seed S] [--warmup N] [--runs N]" + ); +} + +#[derive(Clone, Copy, Debug, Default)] +struct Timings { + prepare: Duration, + build: Duration, + initial_ingest: Duration, + initial_stabilize: Duration, + update_ingest: Duration, + update_stabilize: Duration, +} + +impl Timings { + fn measured(self) -> Duration { + self.update_ingest + self.update_stabilize + } +} + +#[derive(Serialize)] +struct Record<'a> { + schema: u32, + benchmark: &'static str, + case: &'static str, + implementation: &'static str, + revision: &'a str, + dirty: bool, + run: usize, + rows: usize, + update_rows: usize, + seed: u64, + prepare_ns: u128, + build_ns: u128, + initial_ingest_ns: u128, + initial_stabilize_ns: u128, + update_ingest_ns: u128, + update_stabilize_ns: u128, + measured_ns: u128, + checked_against: &'static str, +} + +struct Dataset { + base: Vec, + removes: Vec, + inserts: Vec, +} + +impl Dataset { + fn new(config: &Config) -> Self { + let base = native_rows(config.rows, config.seed, 0); + let removes = base[..config.update_rows].to_vec(); + let inserts = native_rows(config.update_rows, config.seed ^ 0x9e37_79b9, config.rows); + Self { + base, + removes, + inserts, + } + } + + fn expected(&self) -> Canonical { + consolidate( + self.base + .iter() + .map(|row| (row[0], row[1], 1)) + .chain(self.removes.iter().map(|row| (row[0], row[1], -1))) + .chain(self.inserts.iter().map(|row| (row[0], row[1], 1))), + ) + } +} + +fn native_rows(rows: usize, seed: u64, offset: usize) -> Vec { + let mut state = seed; + (0..rows) + .map(|index| { + let mut row = [0; 6]; + row[0] = i64::try_from(offset + index).unwrap(); + for field in &mut row[1..] { + *field = (xorshift(&mut state) % 1_000) as i64; + } + row + }) + .collect() +} + +fn xorshift(state: &mut u64) -> u64 { + *state ^= *state << 13; + *state ^= *state >> 7; + *state ^= *state << 17; + *state +} + +fn dynamic(row: &NativeRow) -> (Row, Row) { + ( + Value::Tuple(row.iter().copied().map(Value::Int).collect()), + Value::unit(), + ) +} + +fn program() -> scope_ir::Program { + let mut program = lower::lower_tree(parse::pipe::parse(ARRANGE)); + program.optimize(); + program +} + +fn consolidate(updates: I) -> Canonical +where + I: IntoIterator, +{ + let mut result = BTreeMap::new(); + for (key, value, diff) in updates { + *result.entry((key, value)).or_insert(0) += diff; + } + result + .into_iter() + .filter(|(_, diff)| *diff != 0) + .map(|((key, value), diff)| (key, value, diff)) + .collect() +} + +fn scalar(value: &Value) -> i64 { + match value { + Value::Int(value) => *value, + Value::Tuple(fields) if fields.len() == 1 => scalar(&fields[0]), + other => panic!("expected one integer field, found {other:?}"), + } +} + + +fn collect_ddir(receiver: Receiver>>) -> Canonical { + consolidate(receiver.into_iter().flat_map(|event| { + match event { + Event::Messages(_, data) => data + .into_iter() + .map(|((key, value), _, diff)| (scalar(&key), scalar(&value), diff)) + .collect(), + Event::Progress(_) => Vec::new(), + } + })) +} + +/// Check all four implementations against a hand-written oracle, untimed. +/// +/// `compiled-ddir` renders the same plan at a coarser timestamp lattice, so its +/// agreement is tested here rather than assumed. +fn validate(data: &Dataset) -> Result<(), String> { + let expected = data.expected(); + let compiled = validate_compiled(data, false); + let compiled_ddir = validate_compiled(data, true); + let vec = validate_ddir(data, false); + let corgi = validate_ddir(data, true); + for (name, actual) in [ + ("compiled", compiled), + ("compiled-ddir", compiled_ddir), + ("ddir-vec", vec), + ("ddir-corgi", corgi), + ] { + if actual != expected { + return Err(format!( + "arrange-update: {name} disagrees with expected output: lengths {} and {}", + actual.len(), + expected.len() + )); + } + } + Ok(()) +} + +fn validate_compiled(data: &Dataset, scoped: bool) -> Canonical { + let base = data.base.clone(); + let removes = data.removes.clone(); + let inserts = data.inserts.clone(); + let (root_send, root_receive) = channel::>>(); + let (scoped_send, scoped_receive) = channel::>>(); + timely::execute_directly(move |worker| { + let mut input = worker.dataflow::(|scope| { + let (input, collection) = scope.new_collection::(); + if scoped { + scope.iterative::, _, _>(|inner| { + capture_arrangement(collection.enter(inner), scoped_send); + }); + } else { + capture_arrangement(collection, root_send); + } + input + }); + for row in base { + input.insert(row); + } + input.advance_to(1); + input.flush(); + for row in removes { + input.remove(row); + } + for row in inserts { + input.insert(row); + } + input.advance_to(2); + input.flush(); + drop(input); + while worker.step() {} + }); + if scoped { + collect_pairs(scoped_receive) + } else { + collect_pairs(root_receive) + } +} + +/// The validation-only tail of the arrangement plan: the same plan as +/// [`render_compiled`], captured rather than probed. +fn capture_arrangement<'scope, T>( + collection: differential_dataflow::VecCollection<'scope, T, NativeRow, isize>, + send: std::sync::mpsc::Sender>>, +) where + T: timely::progress::Timestamp + differential_dataflow::lattice::Lattice + Send, +{ + collection + .map(|row| (row[0], row[1])) + .arrange_by_key() + .as_collection(|key, value| (*key, *value)) + .inner + .capture_into(send); +} + +fn collect_pairs( + receiver: Receiver>>, +) -> Canonical { + consolidate(receiver.into_iter().flat_map(|event| match event { + Event::Messages(_, data) => data + .into_iter() + .map(|((key, value), _, diff)| (key, value, i64::try_from(diff).unwrap())) + .collect(), + Event::Progress(_) => Vec::new(), + })) +} + +fn validate_ddir(data: &Dataset, use_corgi: bool) -> Canonical { + type DdirEvent = Event>; + + let program = program(); + let export = program + .root + .exports + .iter() + .position(|item| item.name == "result") + .unwrap(); + let base: Vec<_> = data.base.iter().map(dynamic).collect(); + let removes: Vec<_> = data.removes.iter().map(dynamic).collect(); + let inserts: Vec<_> = data.inserts.iter().map(dynamic).collect(); + let (send, receive) = channel::(); + timely::execute_directly(move |worker| { + let probe = timely::dataflow::ProbeHandle::new(); + let mut input = worker.dataflow::(|scope| { + let (input, collection) = scope.new_collection::<(Row, Row), Diff>(); + let output = scope.iterative::, _, _>(|inner| { + let imports: Vec<_> = program + .root + .imports + .iter() + .map(|item| match item.from { + scope_ir::Source::Input(0) => collection.clone().enter(inner), + ref other => panic!("unexpected arrangement source {other:?}"), + }) + .collect(); + let exports = if use_corgi { + corgi::render_tree_rows(&program.root, inner, 0, imports) + } else { + vec::render_tree(&program.root, inner, 0, imports) + }; + exports[export].clone().leave(scope) + }); + output.inner.probe_with(&probe).capture_into(send); + input + }); + for row in base { + input.update(row, 1); + } + input.advance_to(1); + input.flush(); + while probe.less_than(&1) { + worker.step(); + } + for row in removes { + input.update(row, -1); + } + for row in inserts { + input.update(row, 1); + } + input.advance_to(2); + input.flush(); + while probe.less_than(&2) { + worker.step(); + } + }); + collect_ddir(receive) +} + +fn run(implementation: Implementation, data: &Dataset) -> Timings { + match implementation { + Implementation::Compiled => run_compiled(data, false), + Implementation::CompiledDdir => run_compiled(data, true), + Implementation::Vec => run_ddir(data, false), + Implementation::Corgi => run_ddir(data, true), + } +} + +/// The typed arrangement plan. +/// +/// `scoped` renders it inside the iterative scope at [`interactive::ir::Time`], where +/// DDIR is obliged to render, which separates the cost of DDIR's runtime embedding +/// from the cost of interpreting the plan. +fn render_compiled<'scope, T>( + collection: differential_dataflow::VecCollection<'scope, T, NativeRow, isize>, + probe: &timely::dataflow::ProbeHandle, +) where + T: timely::progress::Timestamp + differential_dataflow::lattice::Lattice, +{ + collection + .map(|row| (row[0], row[1])) + .arrange_by_key() + .as_collection(|key, value| (*key, *value)) + .inner + .probe_with(probe); +} + +fn run_compiled(data: &Dataset, scoped: bool) -> Timings { + let base = data.base.clone(); + let removes = data.removes.clone(); + let inserts = data.inserts.clone(); + timely::execute_directly(move |worker| { + let root_probe = timely::dataflow::ProbeHandle::::new(); + let scoped_probe = timely::dataflow::ProbeHandle::