| CPU | Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz |
|---|---|
| Cores | 8 physical / 16 logical · 3.6 GHz base · 5 GHz max |
| Memory | 62.6 GiB |
| GPU | CoffeeLake-S GT2 [UHD Graphics 630] i915 Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] (8.0 GiB) amdgpu |
| Adapter | amd gcn-4 |
| Browser | chromium 149.0.7827.55 |
| OS | Fedora Linux 43 (Workstation Edition) · 6.19.14-200.fc43.x86_64 · x64 |
| Node | v24.18.0 (v8 13.6.233.17-node.50) |
| Commit | 3c9c3e33 docs(v4): closing sweep for round 55 — record, prose, and the summary |
| Machine id | 5cf3f79c |
Wall frame times are vsync-bound (both sides floor at the display refresh when fast); “gpu (device)” table rows are GPU-pass time via timestamp-query — the unbounded cost metric. init/export rows are one-shot timings. Adapter: amd gcn-4; dpr 2; 1280×800; adaptive render scale pinned to 1.
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| frame: pan fit-all | v3 | 653 ms | 668 ms | 675 ms | 644 ms | 12 |
| frame: pan fit-all | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan fit-all | gpu (device) | 3.40 ms | 3.40 ms | 3.41 ms | 3.39 ms | 120 |
| frame: pan zoomed-in 20× | v3 | 296 ms | 291 ms | 302 ms | 212 ms | 12 |
| frame: pan zoomed-in 20× | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.5 ms | 121 |
| frame: pan zoomed-in 20× | gpu (device) | 4.43 ms | 4.43 ms | 4.45 ms | 4.40 ms | 121 |
| frame: pan far-zoom ÷8 | v3 | 639 ms | 643 ms | 658 ms | 619 ms | 12 |
| frame: pan far-zoom ÷8 | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan far-zoom ÷8 | gpu (device) | 1.37 ms | 1.37 ms | 1.38 ms | 1.36 ms | 120 |
| frame: pan fit-all (labels) | v3 | 777 ms | 796 ms | 838 ms | 760 ms | 11 |
| frame: pan fit-all (labels) | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan fit-all (labels) | gpu (device) | 3.67 ms | 3.67 ms | 3.68 ms | 3.65 ms | 121 |
| frame: pan zoomed-in 20× (labels) | v3 | 316 ms | 308 ms | 320 ms | 226 ms | 12 |
| frame: pan zoomed-in 20× (labels) | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× (labels) | gpu (device) | 4.77 ms | 4.77 ms | 4.79 ms | 4.75 ms | 120 |
| pick: hover while panning | gpu | 17.4 ms | 24.0 ms | 49.3 ms | 4.20 ms | 25 |
| compaction: pan fit-all, 10% live | gpu (peak slots) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| compaction: pan fit-all, 10% live | gpu (compacted) | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 120 |
| compaction: pan fit-all, 10% live | gpu device (peak slots) | 458 µs | 691 µs | 1.16 ms | 456 µs | 118 |
| compaction: pan fit-all, 10% live | gpu device (compacted) | 978 µs | 978 µs | 983 µs | 972 µs | 119 |
| compaction: compact() one-shot | gpu | 20.5 ms | 20.5 ms | 20.5 ms | 20.5 ms | 1 |
| init: create + ready | v3 | 2.66 s | 2.66 s | 2.66 s | 2.66 s | 1 |
| init: create + ready | gpu | 272 ms | 272 ms | 272 ms | 272 ms | 1 |
| init: create + ready (labels) | v3 | 3.97 s | 3.97 s | 3.97 s | 3.97 s | 1 |
| init: create + ready (labels) | gpu | 357 ms | 357 ms | 357 ms | 357 ms | 1 |
| init: columnar form (gpu-only) | gpu | 140 ms | 140 ms | 140 ms | 140 ms | 1 |
| init: columnar form (gpu-only) | convert (toColumnarElements) | 23.1 ms | 23.1 ms | 23.1 ms | 23.1 ms | 1 |
| export: png full (≤2048 px) | v3 | 1.46 s | 1.46 s | 1.46 s | 1.46 s | 1 |
| export: png full (≤2048 px) | gpu | 291 ms | 291 ms | 291 ms | 291 ms | 1 |
Wall frame times are vsync-bound (both sides floor at the display refresh when fast); “gpu (device)” table rows are GPU-pass time via timestamp-query — the unbounded cost metric. init/export rows are one-shot timings. Adapter: amd gcn-4; dpr 2; 1280×800; adaptive render scale pinned to 1.
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| frame: pan fit-all | v3 | 659 ms | 673 ms | 681 ms | 650 ms | 12 |
| frame: pan fit-all | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan fit-all | gpu (device) | 9.90 ms | 9.90 ms | 9.94 ms | 9.84 ms | 121 |
| frame: pan zoomed-in 20× | v3 | 285 ms | 280 ms | 292 ms | 206 ms | 12 |
| frame: pan zoomed-in 20× | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× | gpu (device) | 3.83 ms | 3.83 ms | 3.87 ms | 3.79 ms | 121 |
| frame: pan far-zoom ÷8 | v3 | 642 ms | 658 ms | 702 ms | 626 ms | 12 |
| frame: pan far-zoom ÷8 | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan far-zoom ÷8 | gpu (device) | 6.39 ms | 6.39 ms | 6.40 ms | 6.38 ms | 119 |
| frame: pan fit-all (labels) | v3 | 819 ms | 838 ms | 880 ms | 802 ms | 10 |
| frame: pan fit-all (labels) | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.5 ms | 122 |
| frame: pan fit-all (labels) | gpu (device) | 10.2 ms | 10.2 ms | 10.2 ms | 10.1 ms | 120 |
| frame: pan zoomed-in 20× (labels) | v3 | 328 ms | 320 ms | 331 ms | 232 ms | 12 |
| frame: pan zoomed-in 20× (labels) | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.3 ms | 121 |
| frame: pan zoomed-in 20× (labels) | gpu (device) | 4.17 ms | 4.16 ms | 4.19 ms | 4.13 ms | 121 |
| pick: hover while panning | gpu | 18.0 ms | 17.4 ms | 19.6 ms | 4.00 ms | 25 |
| compaction: pan fit-all, 10% live | gpu (peak slots) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 120 |
| compaction: pan fit-all, 10% live | gpu (compacted) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| compaction: pan fit-all, 10% live | gpu device (peak slots) | 560 µs | 556 µs | 563 µs | 492 µs | 118 |
| compaction: pan fit-all, 10% live | gpu device (compacted) | 1.32 ms | 1.32 ms | 1.33 ms | 1.31 ms | 120 |
| compaction: compact() one-shot | gpu | 26.3 ms | 26.3 ms | 26.3 ms | 26.3 ms | 1 |
| init: create + ready | v3 | 3.24 s | 3.24 s | 3.24 s | 3.24 s | 1 |
| init: create + ready | gpu | 252 ms | 252 ms | 252 ms | 252 ms | 1 |
| init: create + ready (labels) | v3 | 4.35 s | 4.35 s | 4.35 s | 4.35 s | 1 |
| init: create + ready (labels) | gpu | 314 ms | 314 ms | 314 ms | 314 ms | 1 |
| init: columnar form (gpu-only) | gpu | 167 ms | 167 ms | 167 ms | 167 ms | 1 |
| init: columnar form (gpu-only) | convert (toColumnarElements) | 18.4 ms | 18.4 ms | 18.4 ms | 18.4 ms | 1 |
| export: png full (≤2048 px) | v3 | 2.03 s | 2.03 s | 2.03 s | 2.03 s | 1 |
| export: png full (≤2048 px) | gpu | 277 ms | 277 ms | 277 ms | 277 ms | 1 |
Wall frame times are vsync-bound (both sides floor at the display refresh when fast); “gpu (device)” table rows are GPU-pass time via timestamp-query — the unbounded cost metric. init/export rows are one-shot timings. Adapter: amd gcn-4; dpr 2; 1280×800; adaptive render scale pinned to 1.
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| frame: pan fit-all | v3 | 2.10 s | 2.12 s | 2.11 s | 2.08 s | 4 |
| frame: pan fit-all | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan fit-all | gpu (device) | 3.00 ms | 3.00 ms | 3.01 ms | 2.99 ms | 118 |
| frame: pan zoomed-in 20× | v3 | 245 ms | 246 ms | 249 ms | 240 ms | 12 |
| frame: pan zoomed-in 20× | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× | gpu (device) | 4.16 ms | 4.16 ms | 4.19 ms | 4.12 ms | 121 |
| frame: pan far-zoom ÷8 | v3 | 2.12 s | 2.17 s | 2.12 s | 2.12 s | 4 |
| frame: pan far-zoom ÷8 | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan far-zoom ÷8 | gpu (device) | 1.34 ms | 1.34 ms | 1.35 ms | 1.33 ms | 121 |
| frame: pan fit-all (labels) | v3 | 2.09 s | 2.11 s | 2.10 s | 2.08 s | 4 |
| frame: pan fit-all (labels) | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan fit-all (labels) | gpu (device) | 2.34 ms | 2.35 ms | 2.39 ms | 2.34 ms | 119 |
| frame: pan zoomed-in 20× (labels) | v3 | 259 ms | 270 ms | 272 ms | 252 ms | 12 |
| frame: pan zoomed-in 20× (labels) | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× (labels) | gpu (device) | 4.50 ms | 4.50 ms | 4.52 ms | 4.46 ms | 119 |
| pick: hover while panning | gpu | 17.0 ms | 9.74 ms | 18.4 ms | 400 µs | 25 |
| compaction: pan fit-all, 10% live | gpu (peak slots) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| compaction: pan fit-all, 10% live | gpu (compacted) | 16.7 ms | 16.7 ms | 16.9 ms | 16.5 ms | 121 |
| compaction: pan fit-all, 10% live | gpu device (peak slots) | 1.08 ms | 1.08 ms | 1.10 ms | 1.07 ms | 119 |
| compaction: pan fit-all, 10% live | gpu device (compacted) | 958 µs | 958 µs | 963 µs | 950 µs | 117 |
| compaction: compact() one-shot | gpu | 18.8 ms | 18.8 ms | 18.8 ms | 18.8 ms | 1 |
| init: create + ready | v3 | 5.38 s | 5.38 s | 5.38 s | 5.38 s | 1 |
| init: create + ready | gpu | 293 ms | 293 ms | 293 ms | 293 ms | 1 |
| init: create + ready (labels) | v3 | 6.76 s | 6.76 s | 6.76 s | 6.76 s | 1 |
| init: create + ready (labels) | gpu | 465 ms | 465 ms | 465 ms | 465 ms | 1 |
| init: columnar form (gpu-only) | gpu | 185 ms | 185 ms | 185 ms | 185 ms | 1 |
| init: columnar form (gpu-only) | convert (toColumnarElements) | 28.9 ms | 28.9 ms | 28.9 ms | 28.9 ms | 1 |
| export: png full (≤2048 px) | v3 | 1.36 s | 1.36 s | 1.36 s | 1.36 s | 1 |
| export: png full (≤2048 px) | gpu | 310 ms | 310 ms | 310 ms | 310 ms | 1 |
Wall frame times are vsync-bound (both sides floor at the display refresh when fast); “gpu (device)” table rows are GPU-pass time via timestamp-query — the unbounded cost metric. init/export rows are one-shot timings. Adapter: amd gcn-4; dpr 2; 1280×800; adaptive render scale pinned to 1.
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| frame: pan fit-all | v3 | 678 ms | 681 ms | 696 ms | 670 ms | 11 |
| frame: pan fit-all | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.3 ms | 121 |
| frame: pan fit-all | gpu (device) | 3.44 ms | 3.44 ms | 3.45 ms | 3.43 ms | 121 |
| frame: pan zoomed-in 20× | v3 | 383 ms | 400 ms | 423 ms | 361 ms | 12 |
| frame: pan zoomed-in 20× | gpu | 16.7 ms | 16.7 ms | 17.9 ms | 14.7 ms | 121 |
| frame: pan zoomed-in 20× | gpu (device) | 4.46 ms | 4.46 ms | 4.48 ms | 4.45 ms | 119 |
| frame: pan far-zoom ÷8 | v3 | 715 ms | 718 ms | 747 ms | 686 ms | 12 |
| frame: pan far-zoom ÷8 | gpu | 16.7 ms | 16.7 ms | 17.1 ms | 15.7 ms | 121 |
| frame: pan far-zoom ÷8 | gpu (device) | 1.42 ms | 1.42 ms | 1.43 ms | 1.41 ms | 118 |
| frame: pan fit-all (labels) | v3 | 798 ms | 802 ms | 822 ms | 771 ms | 10 |
| frame: pan fit-all (labels) | gpu | 16.7 ms | 16.7 ms | 17.0 ms | 16.2 ms | 121 |
| frame: pan fit-all (labels) | gpu (device) | 3.70 ms | 3.71 ms | 3.72 ms | 3.69 ms | 119 |
| frame: pan zoomed-in 20× (labels) | v3 | 371 ms | 377 ms | 391 ms | 351 ms | 12 |
| frame: pan zoomed-in 20× (labels) | gpu | 16.7 ms | 16.7 ms | 17.0 ms | 16.3 ms | 121 |
| frame: pan zoomed-in 20× (labels) | gpu (device) | 4.80 ms | 4.80 ms | 4.82 ms | 4.79 ms | 121 |
| pick: hover while panning | gpu | 18.0 ms | 22.5 ms | 45.3 ms | 7.40 ms | 25 |
| compaction: pan fit-all, 10% live | gpu (peak slots) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 120 |
| compaction: pan fit-all, 10% live | gpu (compacted) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 120 |
| compaction: pan fit-all, 10% live | gpu device (peak slots) | 1.16 ms | 983 µs | 1.17 ms | 458 µs | 116 |
| compaction: pan fit-all, 10% live | gpu device (compacted) | 979 µs | 979 µs | 984 µs | 972 µs | 116 |
| compaction: compact() one-shot | gpu | 17.4 ms | 17.4 ms | 17.4 ms | 17.4 ms | 1 |
| init: create + ready | v3 | 4.42 s | 4.42 s | 4.42 s | 4.42 s | 1 |
| init: create + ready | gpu | 277 ms | 277 ms | 277 ms | 277 ms | 1 |
| init: create + ready (labels) | v3 | 4.96 s | 4.96 s | 4.96 s | 4.96 s | 1 |
| init: create + ready (labels) | gpu | 382 ms | 382 ms | 382 ms | 382 ms | 1 |
| init: columnar form (gpu-only) | gpu | 153 ms | 153 ms | 153 ms | 153 ms | 1 |
| init: columnar form (gpu-only) | convert (toColumnarElements) | 23.7 ms | 23.7 ms | 23.7 ms | 23.7 ms | 1 |
| export: png full (≤2048 px) | v3 | 5.47 s | 5.47 s | 5.47 s | 5.47 s | 1 |
| export: png full (≤2048 px) | gpu | 301 ms | 301 ms | 301 ms | 301 ms | 1 |
Wall frame times are vsync-bound (both sides floor at the display refresh when fast); “gpu (device)” table rows are GPU-pass time via timestamp-query — the unbounded cost metric. init/export rows are one-shot timings. Adapter: amd gcn-4; dpr 2; 1280×800; adaptive render scale pinned to 1.
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| frame: pan fit-all | v3 | 704 ms | 714 ms | 723 ms | 678 ms | 12 |
| frame: pan fit-all | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.3 ms | 121 |
| frame: pan fit-all | gpu (device) | 3.40 ms | 3.40 ms | 3.41 ms | 3.39 ms | 120 |
| frame: pan zoomed-in 20× | v3 | 323 ms | 318 ms | 330 ms | 230 ms | 12 |
| frame: pan zoomed-in 20× | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× | gpu (device) | 4.43 ms | 4.43 ms | 4.45 ms | 4.41 ms | 119 |
| frame: pan far-zoom ÷8 | v3 | 690 ms | 696 ms | 725 ms | 671 ms | 12 |
| frame: pan far-zoom ÷8 | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan far-zoom ÷8 | gpu (device) | 1.38 ms | 1.38 ms | 1.38 ms | 1.36 ms | 118 |
| frame: pan fit-all (labels) | v3 | 767 ms | 783 ms | 776 ms | 761 ms | 11 |
| frame: pan fit-all (labels) | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan fit-all (labels) | gpu (device) | 4.55 ms | 4.55 ms | 4.57 ms | 4.54 ms | 121 |
| frame: pan zoomed-in 20× (labels) | v3 | 348 ms | 338 ms | 352 ms | 236 ms | 12 |
| frame: pan zoomed-in 20× (labels) | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× (labels) | gpu (device) | 5.94 ms | 5.94 ms | 5.97 ms | 5.88 ms | 121 |
| pick: hover while panning | gpu | 17.3 ms | 16.9 ms | 17.4 ms | 6.60 ms | 25 |
| compaction: pan fit-all, 10% live | gpu (peak slots) | 16.7 ms | 16.7 ms | 16.9 ms | 16.3 ms | 121 |
| compaction: pan fit-all, 10% live | gpu (compacted) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| compaction: pan fit-all, 10% live | gpu device (peak slots) | 459 µs | 474 µs | 636 µs | 456 µs | 117 |
| compaction: pan fit-all, 10% live | gpu device (compacted) | 980 µs | 980 µs | 986 µs | 969 µs | 120 |
| compaction: compact() one-shot | gpu | 10.2 ms | 10.2 ms | 10.2 ms | 10.2 ms | 1 |
| init: create + ready | v3 | 3.34 s | 3.34 s | 3.34 s | 3.34 s | 1 |
| init: create + ready | gpu | 243 ms | 243 ms | 243 ms | 243 ms | 1 |
| init: create + ready (labels) | v3 | 4.51 s | 4.51 s | 4.51 s | 4.51 s | 1 |
| init: create + ready (labels) | gpu | 323 ms | 323 ms | 323 ms | 323 ms | 1 |
| init: columnar form (gpu-only) | gpu | 147 ms | 147 ms | 147 ms | 147 ms | 1 |
| init: columnar form (gpu-only) | convert (toColumnarElements) | 27.5 ms | 27.5 ms | 27.5 ms | 27.5 ms | 1 |
| export: png full (≤2048 px) | v3 | 1.49 s | 1.49 s | 1.49 s | 1.49 s | 1 |
| export: png full (≤2048 px) | gpu | 315 ms | 315 ms | 315 ms | 315 ms | 1 |
Wall frame times are vsync-bound (both sides floor at the display refresh when fast); “gpu (device)” table rows are GPU-pass time via timestamp-query — the unbounded cost metric. init/export rows are one-shot timings. Adapter: amd gcn-4; dpr 2; 1280×800; adaptive render scale pinned to 1.
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| frame: pan fit-all | v3 | 585 ms | 604 ms | 605 ms | 563 ms | 12 |
| frame: pan fit-all | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 122 |
| frame: pan fit-all | gpu (device) | 1.65 ms | 1.65 ms | 1.66 ms | 1.64 ms | 120 |
| frame: pan zoomed-in 20× | v3 | 310 ms | 305 ms | 320 ms | 220 ms | 12 |
| frame: pan zoomed-in 20× | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.3 ms | 121 |
| frame: pan zoomed-in 20× | gpu (device) | 1.43 ms | 1.43 ms | 1.44 ms | 1.41 ms | 121 |
| frame: pan far-zoom ÷8 | v3 | 583 ms | 587 ms | 595 ms | 571 ms | 12 |
| frame: pan far-zoom ÷8 | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan far-zoom ÷8 | gpu (device) | 1.12 ms | 1.12 ms | 1.13 ms | 1.11 ms | 121 |
| frame: pan fit-all (labels) | v3 | 641 ms | 663 ms | 693 ms | 627 ms | 12 |
| frame: pan fit-all (labels) | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan fit-all (labels) | gpu (device) | 1.96 ms | 1.96 ms | 1.97 ms | 1.95 ms | 119 |
| frame: pan zoomed-in 20× (labels) | v3 | 340 ms | 331 ms | 344 ms | 238 ms | 12 |
| frame: pan zoomed-in 20× (labels) | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.5 ms | 121 |
| frame: pan zoomed-in 20× (labels) | gpu (device) | 1.63 ms | 1.63 ms | 1.66 ms | 1.62 ms | 118 |
| pick: hover while panning | gpu | 17.5 ms | 16.7 ms | 17.8 ms | 3.80 ms | 25 |
| compaction: pan fit-all, 10% live | gpu (peak slots) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| compaction: pan fit-all, 10% live | gpu (compacted) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| compaction: pan fit-all, 10% live | gpu device (peak slots) | 1.15 ms | 1.15 ms | 1.16 ms | 1.14 ms | 120 |
| compaction: pan fit-all, 10% live | gpu device (compacted) | 979 µs | 979 µs | 984 µs | 973 µs | 118 |
| compaction: compact() one-shot | gpu | 9.20 ms | 9.20 ms | 9.20 ms | 9.20 ms | 1 |
| init: create + ready | v3 | 2.97 s | 2.97 s | 2.97 s | 2.97 s | 1 |
| init: create + ready | gpu | 263 ms | 263 ms | 263 ms | 263 ms | 1 |
| init: create + ready (labels) | v3 | 4.09 s | 4.09 s | 4.09 s | 4.09 s | 1 |
| init: create + ready (labels) | gpu | 339 ms | 339 ms | 339 ms | 339 ms | 1 |
| init: columnar form (gpu-only) | gpu | 150 ms | 150 ms | 150 ms | 150 ms | 1 |
| init: columnar form (gpu-only) | convert (toColumnarElements) | 26.0 ms | 26.0 ms | 26.0 ms | 26.0 ms | 1 |
| export: png full (≤2048 px) | v3 | 704 ms | 704 ms | 704 ms | 704 ms | 1 |
| export: png full (≤2048 px) | gpu | 260 ms | 260 ms | 260 ms | 260 ms | 1 |
Wall frame times are vsync-bound (both sides floor at the display refresh when fast); “gpu (device)” table rows are GPU-pass time via timestamp-query — the unbounded cost metric. init/export rows are one-shot timings. Adapter: amd gcn-4; dpr 2; 1280×800; adaptive render scale pinned to 1.
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| frame: pan fit-all | v3 | 1.96 s | 1.98 s | 2.06 s | 1.90 s | 5 |
| frame: pan fit-all | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.3 ms | 121 |
| frame: pan fit-all | gpu (device) | 3.55 ms | 3.55 ms | 3.56 ms | 3.54 ms | 118 |
| frame: pan zoomed-in 20× | v3 | 501 ms | 495 ms | 509 ms | 422 ms | 12 |
| frame: pan zoomed-in 20× | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× | gpu (device) | 4.67 ms | 4.67 ms | 4.69 ms | 4.66 ms | 120 |
| frame: pan far-zoom ÷8 | v3 | 1.97 s | 2.03 s | 2.06 s | 1.93 s | 4 |
| frame: pan far-zoom ÷8 | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan far-zoom ÷8 | gpu (device) | 1.41 ms | 1.41 ms | 1.42 ms | 1.40 ms | 119 |
| frame: pan fit-all (labels) | v3 | 2.23 s | 2.20 s | 2.26 s | 2.04 s | 4 |
| frame: pan fit-all (labels) | gpu | 16.7 ms | 16.7 ms | 16.8 ms | 16.5 ms | 121 |
| frame: pan fit-all (labels) | gpu (device) | 3.82 ms | 3.82 ms | 3.83 ms | 3.80 ms | 116 |
| frame: pan zoomed-in 20× (labels) | v3 | 538 ms | 537 ms | 557 ms | 446 ms | 12 |
| frame: pan zoomed-in 20× (labels) | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× (labels) | gpu (device) | 5.02 ms | 5.02 ms | 5.04 ms | 5.00 ms | 121 |
| pick: hover while panning | gpu | 18.0 ms | 17.6 ms | 18.3 ms | 7.50 ms | 25 |
| compaction: pan fit-all, 10% live | gpu (peak slots) | 16.7 ms | 16.7 ms | 16.9 ms | 16.5 ms | 121 |
| compaction: pan fit-all, 10% live | gpu (compacted) | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| compaction: pan fit-all, 10% live | gpu device (peak slots) | 1.16 ms | 1.07 ms | 1.17 ms | 461 µs | 117 |
| compaction: pan fit-all, 10% live | gpu device (compacted) | 986 µs | 986 µs | 990 µs | 980 µs | 117 |
| compaction: compact() one-shot | gpu | 8.60 ms | 8.60 ms | 8.60 ms | 8.60 ms | 1 |
| init: create + ready | v3 | 3.77 s | 3.77 s | 3.77 s | 3.77 s | 1 |
| init: create + ready | gpu | 265 ms | 265 ms | 265 ms | 265 ms | 1 |
| init: create + ready (labels) | v3 | 4.75 s | 4.75 s | 4.75 s | 4.75 s | 1 |
| init: create + ready (labels) | gpu | 324 ms | 324 ms | 324 ms | 324 ms | 1 |
| init: columnar form (gpu-only) | gpu | 152 ms | 152 ms | 152 ms | 152 ms | 1 |
| init: columnar form (gpu-only) | convert (toColumnarElements) | 26.3 ms | 26.3 ms | 26.3 ms | 26.3 ms | 1 |
| export: png full (≤2048 px) | v3 | 2.41 s | 2.41 s | 2.41 s | 2.41 s | 1 |
| export: png full (≤2048 px) | gpu | 326 ms | 326 ms | 326 ms | 326 ms | 1 |
Wall frame times are vsync-bound (both sides floor at the display refresh when fast); “gpu (device)” table rows are GPU-pass time via timestamp-query — the unbounded cost metric. init/export rows are one-shot timings. Adapter: amd gcn-4; dpr 2; 1280×800; adaptive render scale pinned to 1.
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| frame: pan fit-all | v3 | 2.22 s | 2.27 s | 2.25 s | 2.13 s | 4 |
| frame: pan fit-all | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan fit-all | gpu (device) | 3.56 ms | 3.56 ms | 3.57 ms | 3.54 ms | 121 |
| frame: pan zoomed-in 20× | v3 | 518 ms | 515 ms | 524 ms | 448 ms | 12 |
| frame: pan zoomed-in 20× | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× | gpu (device) | 4.68 ms | 4.68 ms | 4.70 ms | 4.67 ms | 120 |
| frame: pan far-zoom ÷8 | v3 | 2.42 s | 2.55 s | 2.67 s | 2.33 s | 4 |
| frame: pan far-zoom ÷8 | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan far-zoom ÷8 | gpu (device) | 1.41 ms | 1.41 ms | 1.42 ms | 1.40 ms | 121 |
| frame: pan fit-all (labels) | v3 | 2.44 s | 2.46 s | 2.47 s | 2.39 s | 4 |
| frame: pan fit-all (labels) | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan fit-all (labels) | gpu (device) | 3.82 ms | 3.82 ms | 3.83 ms | 3.80 ms | 120 |
| frame: pan zoomed-in 20× (labels) | v3 | 535 ms | 530 ms | 547 ms | 443 ms | 12 |
| frame: pan zoomed-in 20× (labels) | gpu | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| frame: pan zoomed-in 20× (labels) | gpu (device) | 5.03 ms | 5.03 ms | 5.04 ms | 5.00 ms | 119 |
| pick: hover while panning | gpu | 17.4 ms | 17.0 ms | 17.5 ms | 8.70 ms | 25 |
| compaction: pan fit-all, 10% live | gpu (peak slots) | 16.7 ms | 16.7 ms | 16.9 ms | 16.4 ms | 121 |
| compaction: pan fit-all, 10% live | gpu (compacted) | 16.7 ms | 16.7 ms | 16.8 ms | 16.4 ms | 121 |
| compaction: pan fit-all, 10% live | gpu device (peak slots) | 460 µs | 465 µs | 636 µs | 458 µs | 112 |
| compaction: pan fit-all, 10% live | gpu device (compacted) | 985 µs | 985 µs | 991 µs | 980 µs | 119 |
| compaction: compact() one-shot | gpu | 8.40 ms | 8.40 ms | 8.40 ms | 8.40 ms | 1 |
| init: create + ready | v3 | 3.55 s | 3.55 s | 3.55 s | 3.55 s | 1 |
| init: create + ready | gpu | 259 ms | 259 ms | 259 ms | 259 ms | 1 |
| init: create + ready (labels) | v3 | 4.44 s | 4.44 s | 4.44 s | 4.44 s | 1 |
| init: create + ready (labels) | gpu | 340 ms | 340 ms | 340 ms | 340 ms | 1 |
| init: columnar form (gpu-only) | gpu | 151 ms | 151 ms | 151 ms | 151 ms | 1 |
| init: columnar form (gpu-only) | convert (toColumnarElements) | 23.2 ms | 23.2 ms | 23.2 ms | 23.2 ms | 1 |
| export: png full (≤2048 px) | v3 | 4.97 s | 4.97 s | 4.97 s | 4.97 s | 1 |
| export: png full (≤2048 px) | gpu | 348 ms | 348 ms | 348 ms | 348 ms | 1 |