vortex
vortex copied to clipboard
feat: impl canonicalize_into for SparseArray
Timer precision: 41 ns
canonical fastest │ slowest │ median │ mean │ samples │ iters
├─ canonicalize_into │ │ │ │ │
│ ├─ 0.001 8.207 µs │ 553 µs │ 11.77 µs │ 12.59 µs │ 1000 │ 1000
│ ├─ 0.01 12.04 µs │ 121.5 µs │ 13.2 µs │ 13.42 µs │ 1000 │ 1000
│ ├─ 0.05 15.99 µs │ 38.08 µs │ 18.41 µs │ 18.43 µs │ 1000 │ 1000
│ ╰─ 0.1 20.41 µs │ 140.4 µs │ 23.29 µs │ 23.35 µs │ 1000 │ 1000
╰─ into_canonical │ │ │ │ │
├─ 0.001 8.874 µs │ 154.9 µs │ 12.24 µs │ 12.88 µs │ 1000 │ 1000
├─ 0.01 11.91 µs │ 129.2 µs │ 13.12 µs │ 13.38 µs │ 1000 │ 1000
├─ 0.05 13.74 µs │ 117.8 µs │ 18.24 µs │ 17.31 µs │ 1000 │ 1000
╰─ 0.1 17.08 µs │ 118.9 µs │ 20.22 µs │ 20.3 µs │ 1000 │ 1000
Did sparse show up as slow to canonicalize?
Moving to draft to clean things up.
@joseph-isaacs We use Sparse as a standalone compressor in vortex-btrblocks so I'd expect it to be more frequent in our encoding trees
CodSpeed Performance Report
Merging #2420 will degrade performances by 23.33%
Comparing aduffy/sparse-canonicalize-into (ad9eb84) with develop (174e5b5)
Summary
❌ 1 regressions
✅ 764 untouched benchmarks
🆕 8 new benchmarks
:warning: Please fix the performance issues or acknowledge them on CodSpeed.
Benchmarks breakdown
| Benchmark | BASE |
HEAD |
Change | |
|---|---|---|---|---|
| 🆕 | canonicalize_into[0.001] |
N/A | 309.9 µs | N/A |
| 🆕 | canonicalize_into[0.01] |
N/A | 329 µs | N/A |
| 🆕 | canonicalize_into[0.05] |
N/A | 410.8 µs | N/A |
| 🆕 | canonicalize_into[0.1] |
N/A | 509.7 µs | N/A |
| 🆕 | into_canonical[0.001] |
N/A | 310.4 µs | N/A |
| 🆕 | into_canonical[0.01] |
N/A | 325.2 µs | N/A |
| 🆕 | into_canonical[0.05] |
N/A | 387.4 µs | N/A |
| 🆕 | into_canonical[0.1] |
N/A | 474.3 µs | N/A |
| ❌ | compress[(ALPRDCompressor, F32)] |
35.4 ms | 46.2 ms | -23.33% |