vortex icon indicating copy to clipboard operation
vortex copied to clipboard

feat: impl canonicalize_into for SparseArray

Open a10y opened this issue 9 months ago • 3 comments

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

a10y avatar Feb 19 '25 03:02 a10y

Did sparse show up as slow to canonicalize?

joseph-isaacs avatar Feb 19 '25 09:02 joseph-isaacs

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

a10y avatar Feb 19 '25 14:02 a10y

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%

codspeed-hq[bot] avatar Feb 20 '25 23:02 codspeed-hq[bot]