Optimize run-end decode kernel with chunked splat stores - #8915
Optimize run-end decode kernel with chunked splat stores#8915joseph-isaacs wants to merge 21 commits into
1 benchmark regressed
⚠️ Different runtime environments detected
Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.
⚡ 52 improved benchmarks
❌ 1 regressed benchmark
✅ 1796 untouched benchmarks
🆕 456 new benchmarks
⏩ 46 skipped benchmarks1
Warning
Please fix the performance issues or acknowledge them on CodSpeed.
Performance Changes
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | decompress[u8, (1000, 16)] |
18 µs | 24.5 µs | -26.75% |
| ⚡ | Simulation | decompress[u16, (100000, 4)] |
950.8 µs | 443.8 µs | ×2.1 |
| ⚡ | Simulation | runend_decompress_u32 |
3 ms | 1.4 ms | ×2.1 |
| ⚡ | Simulation | decompress[u32, (100000, 4)] |
1,054.4 µs | 567.9 µs | +85.66% |
| ⚡ | Simulation | decompress[u16, (10000, 4)] |
110 µs | 59.4 µs | +85.18% |
| ⚡ | Simulation | decompress[u8, (100000, 4)] |
836.9 µs | 461.5 µs | +81.33% |
| ⚡ | Simulation | decompress[u16, (100000, 16)] |
321.2 µs | 190.9 µs | +68.29% |
| ⚡ | Simulation | decompress[u32, (10000, 4)] |
129.2 µs | 80.3 µs | +60.88% |
| ⚡ | Simulation | decompress[u8, (1000, 4)] |
31.5 µs | 19.8 µs | +58.7% |
| ⚡ | Simulation | take_indices[(100000, 4)] |
1,327.7 µs | 841.4 µs | +57.8% |
| ⚡ | Simulation | decompress[u8, (100000, 16)] |
243.3 µs | 156.3 µs | +55.65% |
| ⚡ | Simulation | decompress[u64, (100000, 4)] |
1,278.4 µs | 832.1 µs | +53.64% |
| ⚡ | Simulation | decompress[u64, (1000, 16)] |
31.5 µs | 20.8 µs | +51.59% |
| ⚡ | Simulation | decompress[u8, (10000, 4)] |
111.9 µs | 74.2 µs | +50.79% |
| ⚡ | Simulation | decompress[u32, (100000, 16)] |
435.4 µs | 306.8 µs | +41.93% |
| ⚡ | Simulation | take_indices[(10000, 4)] |
171.6 µs | 122.2 µs | +40.37% |
| ⚡ | Simulation | decompress[u64, (10000, 4)] |
148.7 µs | 106.5 µs | +39.66% |
| ⚡ | Simulation | decompress[u16, (10000, 16)] |
46.3 µs | 33.1 µs | +39.62% |
| ⚡ | Simulation | decode_bool[10000_2_all_true] |
102.7 µs | 77.9 µs | +31.81% |
| ⚡ | Simulation | decode_bool[10000_2_all_false] |
103.1 µs | 78.3 µs | +31.68% |
| ... | ... | ... | ... | ... | ... |
ℹ️ Only the first 20 benchmarks are displayed. Go to the app to view all benchmarks.
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing claude/runend-decompression-perf-5yrfqs (aea62e6) with develop (caedc63)
Footnotes
-
46 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩