Benchmark Report: Sorted Maps and Sets

This report provides structured comparison tables and visual charts generated from benchmark results.

System Environment and Metadata

AttributeValue
CPUAMD EPYC 9V45 96-Core Processor
Operating SystemLinux-7.0.0-1019-azure-x86_64-with-glibc2.44
CPU Frequency GovernorNone
Native Allocatorsystem malloc; Zig libc_allocator
Compiler Optimization FlagsReleaseFast / Cargo release / -O3 / CMake Release
Java Heap Settings-Xms1g -Xmx1g
Git Revision780fc7da4e76f7a90e356507458deb44365ac4c8
Timestamp (UTC)2026-11-05T18:27:16Z
Runner environmentGitHub-hosted CI
Dirty working treeFalse
Ordered source/nix/store/hfpp5dkf693h4dn27nznz230l3s4lbax-source
Ordered local revision and changesNone
CPU affinity[0, 1, 2, 3]
Warmups by language{'zig': 3, 'rust': 3, 'c': 3, 'cpp': 3, 'java': 20}
Samples per fork5
Forks3
Fixture seeds[42, 123, 2026]
Schedule seed1729
Toolchain VersionsZig: 0.17.0, Rust: rustc 1.99.1 (58cf8f9c3 2026-10-13), C: gcc (GCC) 16.2.0, C++: g++ (GCC) 16.2.0, Java: openjdk version "25.0.4.1" 2026-08-18

Performance Interpretation Guide

Ascending and shuffled describe insertion order only. Lookup and removal use independent shuffled permutations. Containers are populated and validated before read and removal phases, so these measure recently accessed data. CI timings are exploratory; publish comparisons from a dedicated idle machine with recorded CPU affinity. This benchmark isolates five phases of sorted container operations:

Bold green values mark the lowest measured median, and light orange values mark the next two lowest medians, not proven winners.

Key Architectural Comparisons

  1. B-trees versus binary trees: B-trees (Ordered BTreeMap, Rust BTreeMap, Abseil btree_map, and Klib kbtree) pack multiple keys per node. This can reduce pointer chasing compared to node-allocated trees (std::map, Java TreeMap, and Zig RedBlackTreeSet).
  2. Intrusive and dedicated AVL trees: Klib kavl and fastutil AVLTreeMap use strict AVL height balancing. Their balance rules differ from red-black trees. Measured latency also depends on node layout, allocation, and input.
  3. Flat arrays: Boost flat_map and flat_set store elements in contiguous sorted memory. The layout can benefit reads, but random insertions and removals require shifting elements (O(N) per operation), making large random mutation workloads expensive.
  4. Java boxed collections versus primitive specialization: Java's standard TreeMap<Long, Long> stores boxed object pointers, incurring substantial GC and pointer overhead. The fastutil collections operate directly on primitive 64-bit integers (long), avoiding boxed key and value storage. Boxed inputs are prepared outside timers, so boxing allocation cost is excluded.

Benchmark Results by Workload

Workload: Size = 100,000 Elements (Ascending Keys, Seed 42)

Sorted Maps

Ctidwall/btree.cB-tree43.81102.93109.511.61132.10
CKlib kavlAVL Tree83.38115.72128.882.45160.74
CKlib kbtreeB-tree44.92113.06114.721.56208.90
C++Abseil btree_mapB-tree25.8554.5256.180.4269.74
C++Boost flat_mapFlat Sorted Vector18.2888.4882.370.232617.65
C++std::mapRed-Black Tree47.43156.39153.452.60161.22
Javafastutil AVLTreeMapAVL Tree (primitive long)62.24110.94139.881.67134.90
Javafastutil RBTreeMapRed-Black Tree (primitive long)70.06110.68139.591.63147.90
Javajava.util.TreeMapRed-Black Tree (boxed Long)44.20159.96170.852.51172.33
Ruststd::collections::BTreeMapB-tree39.9571.3572.300.9191.16
Rustindexset::BTreeMapTwo-Level B-tree34.0047.5346.410.29101.26
ZigOrdered BTreeMapB-tree (16-way)16.4254.3757.390.99105.10
ZigOrdered CartesianTreeMapCartesian Tree32.63140.45145.418.95190.21
ZigOrdered SkipListMapSkip List60.32164.22163.991.86186.63
Zigstd.Treap (Map)Treap37.31123.61134.597.39175.87
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 96
    bar [43.81, 83.38, 44.92, 25.85, 18.28, 47.43, 62.24, 70.06, 44.20, 39.95, 34.00, 16.42, 32.63, 60.32, 37.31]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 189
    bar [102.93, 115.72, 113.06, 54.52, 88.48, 156.39, 110.94, 110.68, 159.96, 71.35, 47.53, 54.37, 140.45, 164.22, 123.61]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 197
    bar [109.51, 128.88, 114.72, 56.18, 82.37, 153.45, 139.88, 139.59, 170.85, 72.30, 46.41, 57.39, 145.41, 163.99, 134.59]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 11
    bar [1.61, 2.45, 1.56, 0.42, 0.23, 2.60, 1.67, 1.63, 2.51, 0.91, 0.29, 0.99, 8.95, 1.86, 7.39]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 3011
    bar [132.10, 160.74, 208.90, 69.74, 2617.65, 161.22, 134.90, 147.90, 172.33, 91.16, 101.26, 105.10, 190.21, 186.63, 175.87]
    

Sorted Sets

Ctidwall/btree.cB-tree39.6299.11107.091.61119.69
CKlib kavlAVL Tree81.51110.38124.052.21159.92
CKlib kbtreeB-tree37.38106.06106.421.46196.89
C++Abseil btree_setB-tree26.5645.9645.070.3266.33
C++Boost flat_setFlat Sorted Vector12.2277.9477.270.221233.60
C++std::setRed-Black Tree53.72130.49129.912.51146.97
Javafastutil AVLTreeSetAVL Tree (primitive long)46.06112.96136.671.56131.60
Javafastutil RBTreeSetRed-Black Tree (primitive long)82.10111.70135.971.55141.95
Javajava.util.TreeSetRed-Black Tree (boxed Long)46.15155.50165.232.60168.50
Ruststd::collections::BTreeSetB-tree38.3871.2171.440.7983.10
Rustindexset::BTreeSetTwo-Level B-tree16.5345.7645.660.2888.50
ZigOrdered RedBlackTreeSetRed-Black Tree37.44120.87133.423.25149.79
ZigOrdered SortedSetSorted Vector16.6580.2985.480.221056.99
Zigstd.Treap (Set)Treap40.51113.50118.277.55161.23
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 95
    bar [39.62, 81.51, 37.38, 26.56, 12.22, 53.72, 46.06, 82.10, 46.15, 38.38, 16.53, 37.44, 16.65, 40.51]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 179
    bar [99.11, 110.38, 106.06, 45.96, 77.94, 130.49, 112.96, 111.70, 155.50, 71.21, 45.76, 120.87, 80.29, 113.50]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 191
    bar [107.09, 124.05, 106.42, 45.07, 77.27, 129.91, 136.67, 135.97, 165.23, 71.44, 45.66, 133.42, 85.48, 118.27]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 9
    bar [1.61, 2.21, 1.46, 0.32, 0.22, 2.51, 1.56, 1.55, 2.60, 0.79, 0.28, 3.25, 0.22, 7.55]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 100,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1419
    bar [119.69, 159.92, 196.89, 66.33, 1233.60, 146.97, 131.60, 141.95, 168.50, 83.10, 88.50, 149.79, 1056.99, 161.23]
    

Workload: Size = 100,000 Elements (Ascending Keys, Seed 123)

Sorted Maps

Ctidwall/btree.cB-tree44.88103.10109.131.61132.34
CKlib kavlAVL Tree83.55118.45131.152.40161.53
CKlib kbtreeB-tree44.99112.83114.001.56208.50
C++Abseil btree_mapB-tree25.1753.7256.360.4268.28
C++Boost flat_mapFlat Sorted Vector18.1687.5382.770.232618.08
C++std::mapRed-Black Tree46.94156.59147.272.56155.73
Javafastutil AVLTreeMapAVL Tree (primitive long)61.84111.05140.481.66134.50
Javafastutil RBTreeMapRed-Black Tree (primitive long)70.16110.54139.751.63149.11
Javajava.util.TreeMapRed-Black Tree (boxed Long)44.51158.99170.692.55173.67
Ruststd::collections::BTreeMapB-tree39.0971.0672.050.9290.87
Rustindexset::BTreeMapTwo-Level B-tree33.8846.6045.380.28101.54
ZigOrdered BTreeMapB-tree (16-way)16.5353.9457.190.99104.63
ZigOrdered CartesianTreeMapCartesian Tree32.56141.10144.958.89188.33
ZigOrdered SkipListMapSkip List60.14163.87162.641.86184.56
Zigstd.Treap (Map)Treap36.66125.91128.167.36169.82
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 97
    bar [44.88, 83.55, 44.99, 25.17, 18.16, 46.94, 61.84, 70.16, 44.51, 39.09, 33.88, 16.53, 32.56, 60.14, 36.66]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 189
    bar [103.10, 118.45, 112.83, 53.72, 87.53, 156.59, 111.05, 110.54, 158.99, 71.06, 46.60, 53.94, 141.10, 163.87, 125.91]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 197
    bar [109.13, 131.15, 114.00, 56.36, 82.77, 147.27, 140.48, 139.75, 170.69, 72.05, 45.38, 57.19, 144.95, 162.64, 128.16]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 11
    bar [1.61, 2.40, 1.56, 0.42, 0.23, 2.56, 1.66, 1.63, 2.55, 0.92, 0.28, 0.99, 8.89, 1.86, 7.36]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 3011
    bar [132.34, 161.53, 208.50, 68.28, 2618.08, 155.73, 134.50, 149.11, 173.67, 90.87, 101.54, 104.63, 188.33, 184.56, 169.82]
    

Sorted Sets

Ctidwall/btree.cB-tree39.3599.91107.271.61120.23
CKlib kavlAVL Tree81.31113.03126.372.23160.25
CKlib kbtreeB-tree37.36104.87105.461.44194.24
C++Abseil btree_setB-tree26.9146.8344.880.3166.37
C++Boost flat_setFlat Sorted Vector12.2578.1877.580.221238.06
C++std::setRed-Black Tree54.57131.99132.902.50151.10
Javafastutil AVLTreeSetAVL Tree (primitive long)46.16114.31136.141.56131.21
Javafastutil RBTreeSetRed-Black Tree (primitive long)82.06112.02135.021.56142.23
Javajava.util.TreeSetRed-Black Tree (boxed Long)45.59155.12167.182.65171.20
Ruststd::collections::BTreeSetB-tree38.6671.2171.800.7982.88
Rustindexset::BTreeSetTwo-Level B-tree16.4145.8345.990.2888.59
ZigOrdered RedBlackTreeSetRed-Black Tree38.41118.50133.503.19146.81
ZigOrdered SortedSetSorted Vector16.6780.3185.030.221054.69
Zigstd.Treap (Set)Treap37.58119.56118.687.41160.83
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 95
    bar [39.35, 81.31, 37.36, 26.91, 12.25, 54.57, 46.16, 82.06, 45.59, 38.66, 16.41, 38.41, 16.67, 37.58]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 179
    bar [99.91, 113.03, 104.87, 46.83, 78.18, 131.99, 114.31, 112.02, 155.12, 71.21, 45.83, 118.50, 80.31, 119.56]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 193
    bar [107.27, 126.37, 105.46, 44.88, 77.58, 132.90, 136.14, 135.02, 167.18, 71.80, 45.99, 133.50, 85.03, 118.68]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 9
    bar [1.61, 2.23, 1.44, 0.31, 0.22, 2.50, 1.56, 1.56, 2.65, 0.79, 0.28, 3.19, 0.22, 7.41]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 100,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1424
    bar [120.23, 160.25, 194.24, 66.37, 1238.06, 151.10, 131.21, 142.23, 171.20, 82.88, 88.59, 146.81, 1054.69, 160.83]
    

Workload: Size = 100,000 Elements (Ascending Keys, Seed 2026)

Sorted Maps

Ctidwall/btree.cB-tree44.55107.08114.131.61132.63
CKlib kavlAVL Tree83.11116.43129.112.42160.04
CKlib kbtreeB-tree45.00113.74115.111.58213.41
C++Abseil btree_mapB-tree26.0655.2356.120.4270.52
C++Boost flat_mapFlat Sorted Vector18.3088.4083.190.232586.39
C++std::mapRed-Black Tree46.21149.41150.062.58160.04
Javafastutil AVLTreeMapAVL Tree (primitive long)61.72110.68140.131.65135.62
Javafastutil RBTreeMapRed-Black Tree (primitive long)70.02110.67139.851.64148.42
Javajava.util.TreeMapRed-Black Tree (boxed Long)44.24160.33169.732.55173.08
Ruststd::collections::BTreeMapB-tree38.9371.1572.290.9091.05
Rustindexset::BTreeMapTwo-Level B-tree34.0146.9145.630.28101.23
ZigOrdered BTreeMapB-tree (16-way)17.0354.1657.180.99105.01
ZigOrdered CartesianTreeMapCartesian Tree32.57140.57143.828.89186.81
ZigOrdered SkipListMapSkip List60.20160.93161.171.88184.85
Zigstd.Treap (Map)Treap36.62125.28136.267.35174.29
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 96
    bar [44.55, 83.11, 45.00, 26.06, 18.30, 46.21, 61.72, 70.02, 44.24, 38.93, 34.01, 17.03, 32.57, 60.20, 36.62]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 186
    bar [107.08, 116.43, 113.74, 55.23, 88.40, 149.41, 110.68, 110.67, 160.33, 71.15, 46.91, 54.16, 140.57, 160.93, 125.28]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 196
    bar [114.13, 129.11, 115.11, 56.12, 83.19, 150.06, 140.13, 139.85, 169.73, 72.29, 45.63, 57.18, 143.82, 161.17, 136.26]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 11
    bar [1.61, 2.42, 1.58, 0.42, 0.23, 2.58, 1.65, 1.64, 2.55, 0.90, 0.28, 0.99, 8.89, 1.88, 7.35]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 2975
    bar [132.63, 160.04, 213.41, 70.52, 2586.39, 160.04, 135.62, 148.42, 173.08, 91.05, 101.23, 105.01, 186.81, 184.85, 174.29]
    

Sorted Sets

Ctidwall/btree.cB-tree39.2994.08102.021.61119.27
CKlib kavlAVL Tree80.85108.17122.152.21158.52
CKlib kbtreeB-tree37.40104.42105.141.46195.94
C++Abseil btree_setB-tree26.5645.2744.370.3166.34
C++Boost flat_setFlat Sorted Vector12.4478.2977.820.221234.85
C++std::setRed-Black Tree49.71130.56134.142.54145.32
Javafastutil AVLTreeSetAVL Tree (primitive long)45.97114.34135.561.56131.75
Javafastutil RBTreeSetRed-Black Tree (primitive long)81.53113.16135.751.55141.14
Javajava.util.TreeSetRed-Black Tree (boxed Long)44.88154.04166.102.57171.66
Ruststd::collections::BTreeSetB-tree38.4471.1471.660.7982.81
Rustindexset::BTreeSetTwo-Level B-tree16.6645.7645.810.2888.48
ZigOrdered RedBlackTreeSetRed-Black Tree37.53119.11131.853.17149.82
ZigOrdered SortedSetSorted Vector16.6380.3085.310.221052.70
Zigstd.Treap (Set)Treap37.61114.78120.927.54162.48
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 94
    bar [39.29, 80.85, 37.40, 26.56, 12.44, 49.71, 45.97, 81.53, 44.88, 38.44, 16.66, 37.53, 16.63, 37.61]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 178
    bar [94.08, 108.17, 104.42, 45.27, 78.29, 130.56, 114.34, 113.16, 154.04, 71.14, 45.76, 119.11, 80.30, 114.78]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 192
    bar [102.02, 122.15, 105.14, 44.37, 77.82, 134.14, 135.56, 135.75, 166.10, 71.66, 45.81, 131.85, 85.31, 120.92]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 9
    bar [1.61, 2.21, 1.46, 0.31, 0.22, 2.54, 1.56, 1.55, 2.57, 0.79, 0.28, 3.17, 0.22, 7.54]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 100,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1421
    bar [119.27, 158.52, 195.94, 66.34, 1234.85, 145.32, 131.75, 141.14, 171.66, 82.81, 88.48, 149.82, 1052.70, 162.48]
    

Workload: Size = 100,000 Elements (Shuffled Keys, Seed 42)

Sorted Maps

Ctidwall/btree.cB-tree136.25107.61117.061.65130.55
CKlib kavlAVL Tree173.30115.97134.699.27170.46
CKlib kbtreeB-tree199.54119.20120.742.64211.53
C++Abseil btree_mapB-tree70.4957.3460.411.4472.35
C++Boost flat_mapFlat Sorted Vector2594.6288.3881.140.232604.39
C++std::mapRed-Black Tree133.26122.24122.9415.60155.87
Javafastutil AVLTreeMapAVL Tree (primitive long)159.94113.04143.6912.73162.74
Javafastutil RBTreeMapRed-Black Tree (primitive long)171.35113.72146.2512.88167.29
Javajava.util.TreeMapRed-Black Tree (boxed Long)185.01168.72181.9115.07170.37
Ruststd::collections::BTreeMapB-tree76.9671.1671.932.4988.65
Rustindexset::BTreeMapTwo-Level B-tree159.2745.0544.120.27106.80
ZigOrdered BTreeMapB-tree (16-way)80.1956.5058.792.37101.44
ZigOrdered CartesianTreeMapCartesian Tree198.57159.50169.5114.62210.03
ZigOrdered SkipListMapSkip List184.48188.81188.4712.78206.32
Zigstd.Treap (Map)Treap177.33130.59145.8617.35190.88
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 2984
    bar [136.25, 173.30, 199.54, 70.49, 2594.62, 133.26, 159.94, 171.35, 185.01, 76.96, 159.27, 80.19, 198.57, 184.48, 177.33]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 218
    bar [107.61, 115.97, 119.20, 57.34, 88.38, 122.24, 113.04, 113.72, 168.72, 71.16, 45.05, 56.50, 159.50, 188.81, 130.59]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 217
    bar [117.06, 134.69, 120.74, 60.41, 81.14, 122.94, 143.69, 146.25, 181.91, 71.93, 44.12, 58.79, 169.51, 188.47, 145.86]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 20
    bar [1.65, 9.27, 2.64, 1.44, 0.23, 15.60, 12.73, 12.88, 15.07, 2.49, 0.27, 2.37, 14.62, 12.78, 17.35]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 2996
    bar [130.55, 170.46, 211.53, 72.35, 2604.39, 155.87, 162.74, 167.29, 170.37, 88.65, 106.80, 101.44, 210.03, 206.32, 190.88]
    

Sorted Sets

Ctidwall/btree.cB-tree124.6399.73109.711.59120.37
CKlib kavlAVL Tree170.27109.59128.308.67171.20
CKlib kbtreeB-tree180.50105.27105.142.41192.45
C++Abseil btree_setB-tree65.5847.4947.340.7067.43
C++Boost flat_setFlat Sorted Vector1244.4578.1777.490.221234.77
C++std::setRed-Black Tree91.78123.05123.2715.51153.29
Javafastutil AVLTreeSetAVL Tree (primitive long)142.03108.13139.6212.39155.16
Javafastutil RBTreeSetRed-Black Tree (primitive long)143.73109.27142.7412.47167.43
Javajava.util.TreeSetRed-Black Tree (boxed Long)187.29166.25179.3615.96174.72
Ruststd::collections::BTreeSetB-tree73.1068.2672.272.1381.72
Rustindexset::BTreeSetTwo-Level B-tree105.6143.6143.950.2690.22
ZigOrdered RedBlackTreeSetRed-Black Tree140.26119.26139.5410.65150.75
ZigOrdered SortedSetSorted Vector1217.0380.3285.160.221058.00
Zigstd.Treap (Set)Treap161.51119.34123.0917.05174.38
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1432
    bar [124.63, 170.27, 180.50, 65.58, 1244.45, 91.78, 142.03, 143.73, 187.29, 73.10, 105.61, 140.26, 1217.03, 161.51]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 192
    bar [99.73, 109.59, 105.27, 47.49, 78.17, 123.05, 108.13, 109.27, 166.25, 68.26, 43.61, 119.26, 80.32, 119.34]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 207
    bar [109.71, 128.30, 105.14, 47.34, 77.49, 123.27, 139.62, 142.74, 179.36, 72.27, 43.95, 139.54, 85.16, 123.09]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 20
    bar [1.59, 8.67, 2.41, 0.70, 0.22, 15.51, 12.39, 12.47, 15.96, 2.13, 0.26, 10.65, 0.22, 17.05]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 100,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1420
    bar [120.37, 171.20, 192.45, 67.43, 1234.77, 153.29, 155.16, 167.43, 174.72, 81.72, 90.22, 150.75, 1058.00, 174.38]
    

Workload: Size = 100,000 Elements (Shuffled Keys, Seed 123)

Sorted Maps

Ctidwall/btree.cB-tree135.38103.17111.921.59129.96
CKlib kavlAVL Tree173.90116.35135.069.32169.76
CKlib kbtreeB-tree194.17115.33116.802.64207.49
C++Abseil btree_mapB-tree72.7260.7260.941.4674.71
C++Boost flat_mapFlat Sorted Vector2629.7388.5083.020.232631.53
C++std::mapRed-Black Tree126.89122.10121.5815.45151.84
Javafastutil AVLTreeMapAVL Tree (primitive long)162.20110.57142.6112.85162.51
Javafastutil RBTreeMapRed-Black Tree (primitive long)170.64112.54144.0412.89167.71
Javajava.util.TreeMapRed-Black Tree (boxed Long)183.59168.81183.0414.99174.54
Ruststd::collections::BTreeMapB-tree77.3971.2773.242.4789.81
Rustindexset::BTreeMapTwo-Level B-tree159.4445.6644.520.28107.50
ZigOrdered BTreeMapB-tree (16-way)79.5356.8659.082.36102.24
ZigOrdered CartesianTreeMapCartesian Tree194.64160.03168.3814.54205.68
ZigOrdered SkipListMapSkip List186.94196.04196.2412.84208.93
Zigstd.Treap (Map)Treap164.55118.59133.9017.45185.30
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 3025
    bar [135.38, 173.90, 194.17, 72.72, 2629.73, 126.89, 162.20, 170.64, 183.59, 77.39, 159.44, 79.53, 194.64, 186.94, 164.55]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 226
    bar [103.17, 116.35, 115.33, 60.72, 88.50, 122.10, 110.57, 112.54, 168.81, 71.27, 45.66, 56.86, 160.03, 196.04, 118.59]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 226
    bar [111.92, 135.06, 116.80, 60.94, 83.02, 121.58, 142.61, 144.04, 183.04, 73.24, 44.52, 59.08, 168.38, 196.24, 133.90]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 21
    bar [1.59, 9.32, 2.64, 1.46, 0.23, 15.45, 12.85, 12.89, 14.99, 2.47, 0.28, 2.36, 14.54, 12.84, 17.45]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 3027
    bar [129.96, 169.76, 207.49, 74.71, 2631.53, 151.84, 162.51, 167.71, 174.54, 89.81, 107.50, 102.24, 205.68, 208.93, 185.30]
    

Sorted Sets

Ctidwall/btree.cB-tree123.8399.70109.511.59122.41
CKlib kavlAVL Tree170.21110.03128.888.87171.26
CKlib kbtreeB-tree179.47105.24105.882.41193.53
C++Abseil btree_setB-tree65.6648.2947.900.7267.77
C++Boost flat_setFlat Sorted Vector1247.6177.6976.830.221236.86
C++std::setRed-Black Tree89.98122.74122.0715.51151.70
Javafastutil AVLTreeSetAVL Tree (primitive long)140.87108.04139.7212.33157.24
Javafastutil RBTreeSetRed-Black Tree (primitive long)146.07106.74140.9912.46167.58
Javajava.util.TreeSetRed-Black Tree (boxed Long)185.86167.41181.6915.45174.50
Ruststd::collections::BTreeSetB-tree72.0668.0370.102.1480.59
Rustindexset::BTreeSetTwo-Level B-tree105.2543.3443.130.2689.93
ZigOrdered RedBlackTreeSetRed-Black Tree141.08119.64139.5510.74155.36
ZigOrdered SortedSetSorted Vector1219.5680.5785.630.221055.44
Zigstd.Treap (Set)Treap152.97110.36118.4317.30171.48
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1435
    bar [123.83, 170.21, 179.47, 65.66, 1247.61, 89.98, 140.87, 146.07, 185.86, 72.06, 105.25, 141.08, 1219.56, 152.97]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 193
    bar [99.70, 110.03, 105.24, 48.29, 77.69, 122.74, 108.04, 106.74, 167.41, 68.03, 43.34, 119.64, 80.57, 110.36]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 209
    bar [109.51, 128.88, 105.88, 47.90, 76.83, 122.07, 139.72, 140.99, 181.69, 70.10, 43.13, 139.55, 85.63, 118.43]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 20
    bar [1.59, 8.87, 2.41, 0.72, 0.22, 15.51, 12.33, 12.46, 15.45, 2.14, 0.26, 10.74, 0.22, 17.30]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 100,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1423
    bar [122.41, 171.26, 193.53, 67.77, 1236.86, 151.70, 157.24, 167.58, 174.50, 80.59, 89.93, 155.36, 1055.44, 171.48]
    

Workload: Size = 100,000 Elements (Shuffled Keys, Seed 2026)

Sorted Maps

Ctidwall/btree.cB-tree137.25107.84117.141.59131.57
CKlib kavlAVL Tree175.64116.19134.889.62180.74
CKlib kbtreeB-tree199.39118.98122.862.72216.95
C++Abseil btree_mapB-tree71.8460.5461.541.4974.58
C++Boost flat_mapFlat Sorted Vector2615.8688.5384.270.232619.38
C++std::mapRed-Black Tree131.19124.30122.2315.78154.36
Javafastutil AVLTreeMapAVL Tree (primitive long)165.66113.30145.5612.83170.02
Javafastutil RBTreeMapRed-Black Tree (primitive long)186.96125.17155.4313.90167.68
Javajava.util.TreeMapRed-Black Tree (boxed Long)207.96181.02187.1816.20174.14
Ruststd::collections::BTreeMapB-tree78.7571.8371.412.4888.92
Rustindexset::BTreeMapTwo-Level B-tree160.7246.0444.750.28107.05
ZigOrdered BTreeMapB-tree (16-way)81.1555.2057.482.35102.52
ZigOrdered CartesianTreeMapCartesian Tree197.98161.05171.4514.64208.86
ZigOrdered SkipListMapSkip List190.66191.30190.5713.01207.92
Zigstd.Treap (Map)Treap167.94121.16135.7617.50189.42
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 3009
    bar [137.25, 175.64, 199.39, 71.84, 2615.86, 131.19, 165.66, 186.96, 207.96, 78.75, 160.72, 81.15, 197.98, 190.66, 167.94]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 220
    bar [107.84, 116.19, 118.98, 60.54, 88.53, 124.30, 113.30, 125.17, 181.02, 71.83, 46.04, 55.20, 161.05, 191.30, 121.16]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 220
    bar [117.14, 134.88, 122.86, 61.54, 84.27, 122.23, 145.56, 155.43, 187.18, 71.41, 44.75, 57.48, 171.45, 190.57, 135.76]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 21
    bar [1.59, 9.62, 2.72, 1.49, 0.23, 15.78, 12.83, 13.90, 16.20, 2.48, 0.28, 2.35, 14.64, 13.01, 17.50]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 3013
    bar [131.57, 180.74, 216.95, 74.58, 2619.38, 154.36, 170.02, 167.68, 174.14, 88.92, 107.05, 102.52, 208.86, 207.92, 189.42]
    

Sorted Sets

Ctidwall/btree.cB-tree123.73100.13110.211.59120.89
CKlib kavlAVL Tree169.99110.16128.278.70170.80
CKlib kbtreeB-tree180.30105.81105.322.42193.93
C++Abseil btree_setB-tree66.0548.8448.600.7468.66
C++Boost flat_setFlat Sorted Vector1248.5777.9177.130.221235.62
C++std::setRed-Black Tree91.55123.92122.3115.21149.33
Javafastutil AVLTreeSetAVL Tree (primitive long)143.90107.31142.1312.28157.16
Javafastutil RBTreeSetRed-Black Tree (primitive long)147.59109.48142.3812.55169.38
Javajava.util.TreeSetRed-Black Tree (boxed Long)190.09169.08185.9416.19179.64
Ruststd::collections::BTreeSetB-tree72.5768.0970.982.1780.59
Rustindexset::BTreeSetTwo-Level B-tree106.0243.8644.100.2690.25
ZigOrdered RedBlackTreeSetRed-Black Tree138.87120.37140.7010.81156.66
ZigOrdered SortedSetSorted Vector1224.8481.0085.720.221055.69
Zigstd.Treap (Set)Treap155.36110.78121.0717.43172.61
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1436
    bar [123.73, 169.99, 180.30, 66.05, 1248.57, 91.55, 143.90, 147.59, 190.09, 72.57, 106.02, 138.87, 1224.84, 155.36]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 195
    bar [100.13, 110.16, 105.81, 48.84, 77.91, 123.92, 107.31, 109.48, 169.08, 68.09, 43.86, 120.37, 81.00, 110.78]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 214
    bar [110.21, 128.27, 105.32, 48.60, 77.13, 122.31, 142.13, 142.38, 185.94, 70.98, 44.10, 140.70, 85.72, 121.07]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 21
    bar [1.59, 8.70, 2.42, 0.74, 0.22, 15.21, 12.28, 12.55, 16.19, 2.17, 0.26, 10.81, 0.22, 17.43]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 100,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1421
    bar [120.89, 170.80, 193.93, 68.66, 1235.62, 149.33, 157.16, 169.38, 179.64, 80.59, 90.25, 156.66, 1055.69, 172.61]
    

Workload: Size = 1,000 Elements (Ascending Keys, Seed 42)

Sorted Maps

Ctidwall/btree.cB-tree22.0444.5450.291.6360.22
CKlib kavlAVL Tree59.8543.2749.662.5572.11
CKlib kbtreeB-tree27.5649.0551.181.5695.10
C++Abseil btree_mapB-tree19.4121.0619.990.4435.49
C++Boost flat_mapFlat Sorted Vector5.2734.3232.830.2645.99
C++std::mapRed-Black Tree23.7732.6535.142.6352.69
Javafastutil AVLTreeMapAVL Tree (primitive long)57.2488.0264.0740.83111.45
Javafastutil RBTreeMapRed-Black Tree (primitive long)136.6891.9584.2942.00972.17
Javajava.util.TreeMapRed-Black Tree (boxed Long)53.4868.1153.0668.3076.36
Ruststd::collections::BTreeMapB-tree30.2027.0627.170.6449.63
Rustindexset::BTreeMapTwo-Level B-tree21.8611.2910.680.2938.40
ZigOrdered BTreeMapB-tree (16-way)9.2213.6615.000.8631.50
ZigOrdered CartesianTreeMapCartesian Tree25.3237.5735.617.6467.79
ZigOrdered SkipListMapSkip List60.3847.7647.802.2466.10
Zigstd.Treap (Map)Treap34.6942.0048.147.5467.75
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 158
    bar [22.04, 59.85, 27.56, 19.41, 5.27, 23.77, 57.24, 136.68, 53.48, 30.20, 21.86, 9.22, 25.32, 60.38, 34.69]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 106
    bar [44.54, 43.27, 49.05, 21.06, 34.32, 32.65, 88.02, 91.95, 68.11, 27.06, 11.29, 13.66, 37.57, 47.76, 42.00]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 97
    bar [50.29, 49.66, 51.18, 19.99, 32.83, 35.14, 64.07, 84.29, 53.06, 27.17, 10.68, 15.00, 35.61, 47.80, 48.14]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 79
    bar [1.63, 2.55, 1.56, 0.44, 0.26, 2.63, 40.83, 42.00, 68.30, 0.64, 0.29, 0.86, 7.64, 2.24, 7.54]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 1118
    bar [60.22, 72.11, 95.10, 35.49, 45.99, 52.69, 111.45, 972.17, 76.36, 49.63, 38.40, 31.50, 67.79, 66.10, 67.75]
    

Sorted Sets

Ctidwall/btree.cB-tree21.9545.5450.371.6257.51
CKlib kavlAVL Tree60.8039.8545.952.3771.36
CKlib kbtreeB-tree22.2048.7351.531.5691.70
C++Abseil btree_setB-tree19.6419.4919.710.3734.87
C++Boost flat_setFlat Sorted Vector4.9532.7532.740.1536.41
C++std::setRed-Black Tree32.6829.8030.392.4450.37
Javafastutil AVLTreeSetAVL Tree (primitive long)52.8370.8974.1641.89109.19
Javafastutil RBTreeSetRed-Black Tree (primitive long)1634.2959.3470.8042.22879.53
Javajava.util.TreeSetRed-Black Tree (boxed Long)59.2981.8757.9453.19116.94
Ruststd::collections::BTreeSetB-tree29.6829.0026.820.8542.53
Rustindexset::BTreeSetTwo-Level B-tree8.8511.2411.250.2836.54
ZigOrdered RedBlackTreeSetRed-Black Tree25.6031.6739.002.9057.53
ZigOrdered SortedSetSorted Vector8.7532.9338.130.2343.16
Zigstd.Treap (Set)Treap35.9740.7844.477.3465.61
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1880
    bar [21.95, 60.80, 22.20, 19.64, 4.95, 32.68, 52.83, 1634.29, 59.29, 29.68, 8.85, 25.60, 8.75, 35.97]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 95
    bar [45.54, 39.85, 48.73, 19.49, 32.75, 29.80, 70.89, 59.34, 81.87, 29.00, 11.24, 31.67, 32.93, 40.78]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 86
    bar [50.37, 45.95, 51.53, 19.71, 32.74, 30.39, 74.16, 70.80, 57.94, 26.82, 11.25, 39.00, 38.13, 44.47]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 62
    bar [1.62, 2.37, 1.56, 0.37, 0.15, 2.44, 41.89, 42.22, 53.19, 0.85, 0.28, 2.90, 0.23, 7.34]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 1,000, Ascending Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1012
    bar [57.51, 71.36, 91.70, 34.87, 36.41, 50.37, 109.19, 879.53, 116.94, 42.53, 36.54, 57.53, 43.16, 65.61]
    

Workload: Size = 1,000 Elements (Ascending Keys, Seed 123)

Sorted Maps

Ctidwall/btree.cB-tree21.9945.4551.021.6557.49
CKlib kavlAVL Tree59.7143.7051.132.5172.48
CKlib kbtreeB-tree27.6249.7251.021.5497.04
C++Abseil btree_mapB-tree19.6619.7120.400.4635.18
C++Boost flat_mapFlat Sorted Vector5.2334.1832.570.2646.10
C++std::mapRed-Black Tree23.3233.8634.242.6253.88
Javafastutil AVLTreeMapAVL Tree (primitive long)65.7288.0170.5442.07115.64
Javafastutil RBTreeMapRed-Black Tree (primitive long)132.5290.4373.9841.71928.38
Javajava.util.TreeMapRed-Black Tree (boxed Long)72.9467.7651.2869.7876.58
Ruststd::collections::BTreeMapB-tree30.6227.3926.140.6348.79
Rustindexset::BTreeMapTwo-Level B-tree21.8511.3010.680.2939.05
ZigOrdered BTreeMapB-tree (16-way)9.2713.6114.760.8631.05
ZigOrdered CartesianTreeMapCartesian Tree25.6639.6435.587.5966.70
ZigOrdered SkipListMapSkip List60.3847.1047.532.2666.32
Zigstd.Treap (Map)Treap35.6343.2043.237.8670.69
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 153
    bar [21.99, 59.71, 27.62, 19.66, 5.23, 23.32, 65.72, 132.52, 72.94, 30.62, 21.85, 9.27, 25.66, 60.38, 35.63]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 104
    bar [45.45, 43.70, 49.72, 19.71, 34.18, 33.86, 88.01, 90.43, 67.76, 27.39, 11.30, 13.61, 39.64, 47.10, 43.20]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 86
    bar [51.02, 51.13, 51.02, 20.40, 32.57, 34.24, 70.54, 73.98, 51.28, 26.14, 10.68, 14.76, 35.58, 47.53, 43.23]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 81
    bar [1.65, 2.51, 1.54, 0.46, 0.26, 2.62, 42.07, 41.71, 69.78, 0.63, 0.29, 0.86, 7.59, 2.26, 7.86]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 1068
    bar [57.49, 72.48, 97.04, 35.18, 46.10, 53.88, 115.64, 928.38, 76.58, 48.79, 39.05, 31.05, 66.70, 66.32, 70.69]
    

Sorted Sets

Ctidwall/btree.cB-tree21.8841.8947.401.6251.96
CKlib kavlAVL Tree61.8540.5847.362.3372.41
CKlib kbtreeB-tree22.1348.9251.971.5590.36
C++Abseil btree_setB-tree19.5519.9519.230.3834.90
C++Boost flat_setFlat Sorted Vector4.8832.4433.570.1536.55
C++std::setRed-Black Tree32.1029.2730.482.4552.97
Javafastutil AVLTreeSetAVL Tree (primitive long)82.7060.4266.2841.37131.30
Javafastutil RBTreeSetRed-Black Tree (primitive long)1189.4997.3575.7241.58185.16
Javajava.util.TreeSetRed-Black Tree (boxed Long)57.7072.0667.6153.22136.85
Ruststd::collections::BTreeSetB-tree29.0328.3126.190.8741.20
Rustindexset::BTreeSetTwo-Level B-tree8.8511.2511.260.2836.71
ZigOrdered RedBlackTreeSetRed-Black Tree25.9932.9439.752.8858.43
ZigOrdered SortedSetSorted Vector8.8133.0639.210.2343.52
Zigstd.Treap (Set)Treap37.8039.9345.487.4469.05
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1368
    bar [21.88, 61.85, 22.13, 19.55, 4.88, 32.10, 82.70, 1189.49, 57.70, 29.03, 8.85, 25.99, 8.81, 37.80]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 112
    bar [41.89, 40.58, 48.92, 19.95, 32.44, 29.27, 60.42, 97.35, 72.06, 28.31, 11.25, 32.94, 33.06, 39.93]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 88
    bar [47.40, 47.36, 51.97, 19.23, 33.57, 30.48, 66.28, 75.72, 67.61, 26.19, 11.26, 39.75, 39.21, 45.48]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 62
    bar [1.62, 2.33, 1.55, 0.38, 0.15, 2.45, 41.37, 41.58, 53.22, 0.87, 0.28, 2.88, 0.23, 7.44]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 1,000, Ascending Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 213
    bar [51.96, 72.41, 90.36, 34.90, 36.55, 52.97, 131.30, 185.16, 136.85, 41.20, 36.71, 58.43, 43.52, 69.05]
    

Workload: Size = 1,000 Elements (Ascending Keys, Seed 2026)

Sorted Maps

Ctidwall/btree.cB-tree22.0046.0251.431.6258.89
CKlib kavlAVL Tree60.7243.4450.772.4973.30
CKlib kbtreeB-tree27.7148.2251.001.5596.59
C++Abseil btree_mapB-tree19.4920.1520.590.4835.53
C++Boost flat_mapFlat Sorted Vector5.2233.0733.210.2646.78
C++std::mapRed-Black Tree23.4232.8034.412.6153.28
Javafastutil AVLTreeMapAVL Tree (primitive long)57.9083.3165.1239.92111.38
Javafastutil RBTreeMapRed-Black Tree (primitive long)723.00123.2277.4841.94915.44
Javajava.util.TreeMapRed-Black Tree (boxed Long)53.5870.7951.9869.3970.90
Ruststd::collections::BTreeMapB-tree30.1627.3227.490.6647.42
Rustindexset::BTreeMapTwo-Level B-tree21.9311.2710.640.2839.24
ZigOrdered BTreeMapB-tree (16-way)9.1813.7914.920.8731.22
ZigOrdered CartesianTreeMapCartesian Tree25.5337.9736.567.7069.00
ZigOrdered SkipListMapSkip List60.9248.2547.942.2670.03
Zigstd.Treap (Map)Treap34.9342.7945.367.5971.76
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 832
    bar [22.00, 60.72, 27.71, 19.49, 5.22, 23.42, 57.90, 723.00, 53.58, 30.16, 21.93, 9.18, 25.53, 60.92, 34.93]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 142
    bar [46.02, 43.44, 48.22, 20.15, 33.07, 32.80, 83.31, 123.22, 70.79, 27.32, 11.27, 13.79, 37.97, 48.25, 42.79]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 90
    bar [51.43, 50.77, 51.00, 20.59, 33.21, 34.41, 65.12, 77.48, 51.98, 27.49, 10.64, 14.92, 36.56, 47.94, 45.36]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 80
    bar [1.62, 2.49, 1.55, 0.48, 0.26, 2.61, 39.92, 41.94, 69.39, 0.66, 0.28, 0.87, 7.70, 2.26, 7.59]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 1053
    bar [58.89, 73.30, 96.59, 35.53, 46.78, 53.28, 111.38, 915.44, 70.90, 47.42, 39.24, 31.22, 69.00, 70.03, 71.76]
    

Sorted Sets

Ctidwall/btree.cB-tree21.9247.3852.421.6254.99
CKlib kavlAVL Tree61.5840.7146.962.3473.84
CKlib kbtreeB-tree22.0948.3551.211.5289.28
C++Abseil btree_setB-tree24.0120.3719.560.3734.80
C++Boost flat_setFlat Sorted Vector4.9633.8933.930.1538.19
C++std::setRed-Black Tree32.5330.2729.702.5151.34
Javafastutil AVLTreeSetAVL Tree (primitive long)52.3959.8674.6742.51122.58
Javafastutil RBTreeSetRed-Black Tree (primitive long)1250.5366.8775.5942.52279.75
Javajava.util.TreeSetRed-Black Tree (boxed Long)76.5776.2782.3455.22132.96
Ruststd::collections::BTreeSetB-tree29.4128.6927.320.8440.78
Rustindexset::BTreeSetTwo-Level B-tree8.9411.2611.280.2836.67
ZigOrdered RedBlackTreeSetRed-Black Tree25.9934.8939.702.8857.17
ZigOrdered SortedSetSorted Vector8.7834.5138.480.2343.53
Zigstd.Treap (Set)Treap35.4840.0944.957.6169.58
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 1439
    bar [21.92, 61.58, 22.09, 24.01, 4.96, 32.53, 52.39, 1250.53, 76.57, 29.41, 8.94, 25.99, 8.78, 35.48]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 88
    bar [47.38, 40.71, 48.35, 20.37, 33.89, 30.27, 59.86, 66.87, 76.27, 28.69, 11.26, 34.89, 34.51, 40.09]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 95
    bar [52.42, 46.96, 51.21, 19.56, 33.93, 29.70, 74.67, 75.59, 82.34, 27.32, 11.28, 39.70, 38.48, 44.95]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 64
    bar [1.62, 2.34, 1.52, 0.37, 0.15, 2.51, 42.51, 42.52, 55.22, 0.84, 0.28, 2.88, 0.23, 7.61]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 1,000, Ascending Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 322
    bar [54.99, 73.84, 89.28, 34.80, 38.19, 51.34, 122.58, 279.75, 132.96, 40.78, 36.67, 57.17, 43.53, 69.58]
    

Workload: Size = 1,000 Elements (Shuffled Keys, Seed 42)

Sorted Maps

Ctidwall/btree.cB-tree67.0153.0058.311.6266.43
CKlib kavlAVL Tree79.0743.4449.626.5679.88
CKlib kbtreeB-tree97.1656.2055.602.64110.35
C++Abseil btree_mapB-tree42.2123.7723.350.7239.98
C++Boost flat_mapFlat Sorted Vector52.0544.4341.470.2653.08
C++std::mapRed-Black Tree62.7737.1837.496.2760.44
Javafastutil AVLTreeMapAVL Tree (primitive long)97.6582.7878.6140.89119.10
Javafastutil RBTreeMapRed-Black Tree (primitive long)185.6383.1268.9741.63349.02
Javajava.util.TreeMapRed-Black Tree (boxed Long)86.7279.2163.1572.2796.57
Ruststd::collections::BTreeMapB-tree47.1528.5829.621.4549.38
Rustindexset::BTreeMapTwo-Level B-tree62.2511.3110.730.2940.80
ZigOrdered BTreeMapB-tree (16-way)33.0718.9220.152.0846.93
ZigOrdered CartesianTreeMapCartesian Tree73.9840.5040.178.4073.59
ZigOrdered SkipListMapSkip List78.1151.5950.942.9870.24
Zigstd.Treap (Map)Treap57.9132.2435.759.2264.59
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 214
    bar [67.01, 79.07, 97.16, 42.21, 52.05, 62.77, 97.65, 185.63, 86.72, 47.15, 62.25, 33.07, 73.98, 78.11, 57.91]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 96
    bar [53.00, 43.44, 56.20, 23.77, 44.43, 37.18, 82.78, 83.12, 79.21, 28.58, 11.31, 18.92, 40.50, 51.59, 32.24]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 91
    bar [58.31, 49.62, 55.60, 23.35, 41.47, 37.49, 78.61, 68.97, 63.15, 29.62, 10.73, 20.15, 40.17, 50.94, 35.75]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 84
    bar [1.62, 6.56, 2.64, 0.72, 0.26, 6.27, 40.89, 41.63, 72.27, 1.45, 0.29, 2.08, 8.40, 2.98, 9.22]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 402
    bar [66.43, 79.88, 110.35, 39.98, 53.08, 60.44, 119.10, 349.02, 96.57, 49.38, 40.80, 46.93, 73.59, 70.24, 64.59]
    

Sorted Sets

Ctidwall/btree.cB-tree64.5653.0558.971.6264.24
CKlib kavlAVL Tree82.3041.6047.215.9179.15
CKlib kbtreeB-tree92.8955.2954.022.42103.17
C++Abseil btree_setB-tree38.8822.4623.160.5941.99
C++Boost flat_setFlat Sorted Vector44.4442.5541.300.1544.13
C++std::setRed-Black Tree45.9933.9334.465.0056.38
Javafastutil AVLTreeSetAVL Tree (primitive long)77.3367.0472.0542.6199.58
Javafastutil RBTreeSetRed-Black Tree (primitive long)172.5353.3064.5343.28291.78
Javajava.util.TreeSetRed-Black Tree (boxed Long)121.54100.9274.8871.83132.49
Ruststd::collections::BTreeSetB-tree37.0729.0029.031.4342.03
Rustindexset::BTreeSetTwo-Level B-tree38.0411.2411.260.2838.16
ZigOrdered RedBlackTreeSetRed-Black Tree62.8140.6247.266.3661.40
ZigOrdered SortedSetSorted Vector37.5138.3244.230.2345.43
Zigstd.Treap (Set)Treap58.4431.5434.357.5362.12
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 199
    bar [64.56, 82.30, 92.89, 38.88, 44.44, 45.99, 77.33, 172.53, 121.54, 37.07, 38.04, 62.81, 37.51, 58.44]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 117
    bar [53.05, 41.60, 55.29, 22.46, 42.55, 33.93, 67.04, 53.30, 100.92, 29.00, 11.24, 40.62, 38.32, 31.54]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 87
    bar [58.97, 47.21, 54.02, 23.16, 41.30, 34.46, 72.05, 64.53, 74.88, 29.03, 11.26, 47.26, 44.23, 34.35]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 83
    bar [1.62, 5.91, 2.42, 0.59, 0.15, 5.00, 42.61, 43.28, 71.83, 1.43, 0.28, 6.36, 0.23, 7.53]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 1,000, Shuffled Keys, Seed 42)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 336
    bar [64.24, 79.15, 103.17, 41.99, 44.13, 56.38, 99.58, 291.78, 132.49, 42.03, 38.16, 61.40, 45.43, 62.12]
    

Workload: Size = 1,000 Elements (Shuffled Keys, Seed 123)

Sorted Maps

Ctidwall/btree.cB-tree66.0451.8256.711.6268.13
CKlib kavlAVL Tree78.9144.6050.616.1979.53
CKlib kbtreeB-tree97.5056.9256.232.58107.48
C++Abseil btree_mapB-tree40.5722.4422.650.7840.42
C++Boost flat_mapFlat Sorted Vector52.0644.2241.270.2654.11
C++std::mapRed-Black Tree60.2436.5238.446.2259.17
Javafastutil AVLTreeMapAVL Tree (primitive long)104.7485.0072.1041.73116.90
Javafastutil RBTreeMapRed-Black Tree (primitive long)167.4588.2451.9041.60318.86
Javajava.util.TreeMapRed-Black Tree (boxed Long)90.2376.6768.9771.34104.47
Ruststd::collections::BTreeMapB-tree42.0726.9227.721.3146.74
Rustindexset::BTreeMapTwo-Level B-tree60.2911.3110.710.2841.00
ZigOrdered BTreeMapB-tree (16-way)35.7719.3020.822.1246.91
ZigOrdered CartesianTreeMapCartesian Tree76.3642.4141.128.3772.38
ZigOrdered SkipListMapSkip List75.7247.7648.083.0068.86
Zigstd.Treap (Map)Treap58.3332.0636.109.0065.13
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 193
    bar [66.04, 78.91, 97.50, 40.57, 52.06, 60.24, 104.74, 167.45, 90.23, 42.07, 60.29, 35.77, 76.36, 75.72, 58.33]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 102
    bar [51.82, 44.60, 56.92, 22.44, 44.22, 36.52, 85.00, 88.24, 76.67, 26.92, 11.31, 19.30, 42.41, 47.76, 32.06]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 83
    bar [56.71, 50.61, 56.23, 22.65, 41.27, 38.44, 72.10, 51.90, 68.97, 27.72, 10.71, 20.82, 41.12, 48.08, 36.10]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 83
    bar [1.62, 6.19, 2.58, 0.78, 0.26, 6.22, 41.73, 41.60, 71.34, 1.31, 0.28, 2.12, 8.37, 3.00, 9.00]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 367
    bar [68.13, 79.53, 107.48, 40.42, 54.11, 59.17, 116.90, 318.86, 104.47, 46.74, 41.00, 46.91, 72.38, 68.86, 65.13]
    

Sorted Sets

Ctidwall/btree.cB-tree64.4351.7357.181.6364.63
CKlib kavlAVL Tree82.8841.3447.165.7278.76
CKlib kbtreeB-tree92.9657.1355.062.46104.52
C++Abseil btree_setB-tree42.3822.6422.790.6041.79
C++Boost flat_setFlat Sorted Vector43.8742.4841.180.1544.86
C++std::setRed-Black Tree45.4734.6034.144.9954.19
Javafastutil AVLTreeSetAVL Tree (primitive long)83.2366.1464.1142.9894.98
Javafastutil RBTreeSetRed-Black Tree (primitive long)183.0862.1966.0342.99289.85
Javajava.util.TreeSetRed-Black Tree (boxed Long)124.77112.5494.6056.57128.09
Ruststd::collections::BTreeSetB-tree38.4129.1029.051.4240.45
Rustindexset::BTreeSetTwo-Level B-tree34.2611.2511.280.2838.14
ZigOrdered RedBlackTreeSetRed-Black Tree62.7839.9746.346.2059.92
ZigOrdered SortedSetSorted Vector37.8837.2144.840.2347.39
Zigstd.Treap (Set)Treap57.3130.4434.757.4262.70
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 211
    bar [64.43, 82.88, 92.96, 42.38, 43.87, 45.47, 83.23, 183.08, 124.77, 38.41, 34.26, 62.78, 37.88, 57.31]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 130
    bar [51.73, 41.34, 57.13, 22.64, 42.48, 34.60, 66.14, 62.19, 112.54, 29.10, 11.25, 39.97, 37.21, 30.44]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 109
    bar [57.18, 47.16, 55.06, 22.79, 41.18, 34.14, 64.11, 66.03, 94.60, 29.05, 11.28, 46.34, 44.84, 34.75]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 66
    bar [1.63, 5.72, 2.46, 0.60, 0.15, 4.99, 42.98, 42.99, 56.57, 1.42, 0.28, 6.20, 0.23, 7.42]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 1,000, Shuffled Keys, Seed 123)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 334
    bar [64.63, 78.76, 104.52, 41.79, 44.86, 54.19, 94.98, 289.85, 128.09, 40.45, 38.14, 59.92, 47.39, 62.70]
    

Workload: Size = 1,000 Elements (Shuffled Keys, Seed 2026)

Sorted Maps

Ctidwall/btree.cB-tree66.1852.3257.341.6167.14
CKlib kavlAVL Tree79.1243.7248.866.0880.05
CKlib kbtreeB-tree97.4357.2157.312.53107.50
C++Abseil btree_mapB-tree41.7822.0523.250.7139.92
C++Boost flat_mapFlat Sorted Vector52.4042.0141.170.2653.72
C++std::mapRed-Black Tree60.1937.6038.156.1458.93
Javafastutil AVLTreeMapAVL Tree (primitive long)71.8383.4972.7141.50114.67
Javafastutil RBTreeMapRed-Black Tree (primitive long)256.8891.2752.9441.84311.80
Javajava.util.TreeMapRed-Black Tree (boxed Long)84.0482.8378.4471.63106.68
Ruststd::collections::BTreeMapB-tree42.6928.2628.281.4248.82
Rustindexset::BTreeMapTwo-Level B-tree58.1211.3010.600.2941.33
ZigOrdered BTreeMapB-tree (16-way)35.0919.3420.522.0947.03
ZigOrdered CartesianTreeMapCartesian Tree75.4039.8640.168.1373.72
ZigOrdered SkipListMapSkip List76.0649.3349.583.0268.36
Zigstd.Treap (Map)Treap56.7630.6534.149.1064.49
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Insert Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 296
    bar [66.18, 79.12, 97.43, 41.78, 52.40, 60.19, 71.83, 256.88, 84.04, 42.69, 58.12, 35.09, 75.40, 76.06, 56.76]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Hit Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 105
    bar [52.32, 43.72, 57.21, 22.05, 42.01, 37.60, 83.49, 91.27, 82.83, 28.26, 11.30, 19.34, 39.86, 49.33, 30.65]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Miss Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 91
    bar [57.34, 48.86, 57.31, 23.25, 41.17, 38.15, 72.71, 52.94, 78.44, 28.28, 10.60, 20.52, 40.16, 49.58, 34.14]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Iterate Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 83
    bar [1.61, 6.08, 2.53, 0.71, 0.26, 6.14, 41.50, 41.84, 71.63, 1.42, 0.29, 2.09, 8.13, 3.02, 9.10]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Maps Remove Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::map", "Java fastutil AVL", "Java fastutil RB", "Java TreeMap", "Rust std BTree", "Rust indexset", "Zig Ordered BTree", "Zig Cartesian", "Zig SkipList", "Zig Treap Map"]
    y-axis "Time (ns/op)" 0 --> 359
    bar [67.14, 80.05, 107.50, 39.92, 53.72, 58.93, 114.67, 311.80, 106.68, 48.82, 41.33, 47.03, 73.72, 68.36, 64.49]
    

Sorted Sets

Ctidwall/btree.cB-tree64.0553.4958.671.6265.21
CKlib kavlAVL Tree83.0640.9147.035.5778.46
CKlib kbtreeB-tree90.2954.3052.882.38101.79
C++Abseil btree_setB-tree37.9326.9926.890.6041.57
C++Boost flat_setFlat Sorted Vector43.8142.5542.710.1544.72
C++std::setRed-Black Tree45.2835.7133.715.0455.30
Javafastutil AVLTreeSetAVL Tree (primitive long)81.3064.5873.7743.02106.52
Javafastutil RBTreeSetRed-Black Tree (primitive long)169.5059.5767.3943.32185.88
Javajava.util.TreeSetRed-Black Tree (boxed Long)134.86106.2394.3955.90144.29
Ruststd::collections::BTreeSetB-tree38.3829.5529.451.4741.93
Rustindexset::BTreeSetTwo-Level B-tree34.1811.2511.270.2837.89
ZigOrdered RedBlackTreeSetRed-Black Tree62.7841.8547.306.1261.98
ZigOrdered SortedSetSorted Vector37.1536.9243.710.2346.67
Zigstd.Treap (Set)Treap57.9032.2434.667.3561.58
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Insert Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 195
    bar [64.05, 83.06, 90.29, 37.93, 43.81, 45.28, 81.30, 169.50, 134.86, 38.38, 34.18, 62.78, 37.15, 57.90]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Hit Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 123
    bar [53.49, 40.91, 54.30, 26.99, 42.55, 35.71, 64.58, 59.57, 106.23, 29.55, 11.25, 41.85, 36.92, 32.24]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Miss Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 109
    bar [58.67, 47.03, 52.88, 26.89, 42.71, 33.71, 73.77, 67.39, 94.39, 29.45, 11.27, 47.30, 43.71, 34.66]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Iterate Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 65
    bar [1.62, 5.57, 2.38, 0.60, 0.15, 5.04, 43.02, 43.32, 55.90, 1.47, 0.28, 6.12, 0.23, 7.35]
    
%%{init: {"xyChart": {"width": 900, "height": 650, "xAxis": {"labelRotation": 90, "labelPadding": 16}}}}%%
xychart-beta
    title "Sorted Sets Remove Latency (N = 1,000, Shuffled Keys, Seed 2026)"
    x-axis ["C tidwall btree", "C Klib kavl", "C Klib kbtree", "C++ Abseil BTree", "C++ Boost flat", "C++ std::set", "Java fastutil AVL", "Java fastutil RB", "Java TreeSet", "Rust std BTree", "Rust indexset", "Zig RedBlack", "Zig SortedSet", "Zig Treap Set"]
    y-axis "Time (ns/op)" 0 --> 214
    bar [65.21, 78.46, 101.79, 41.57, 44.72, 55.30, 106.52, 185.88, 144.29, 41.93, 37.89, 61.98, 46.67, 61.58]