GPU benchmark: add reusable decompression profiling metrics - #9432
GPU benchmark: add reusable decompression profiling metrics#9432joseph-isaacs wants to merge 1 commit into
Conversation
Merging this PR will degrade performance by 11.88%
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | WallTime | words_gather_scalar[65536] |
8.2 µs | 9.4 µs | -12.65% |
| ❌ | WallTime | words_gather_dispatch[1024] |
8 ns | 9 ns | -11.11% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing joe/gpu-decompression-profiling (b6cf956) with develop (b825c4f)
Footnotes
-
89 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. ↩
6bcb083 to
599f86e
Compare
cbfb3e5 to
b5ac292
Compare
a74f5d4 to
f099b79
Compare
b5ac292 to
27d1096
Compare
Signed-off-by: Joe Isaacs <2413449+joseph-isaacs@users.noreply.github.com>
27d1096 to
b6cf956
Compare
Based directly on
develop; it has no dependency on the Parquet benchmark PR.What
VORTEX_GPU_PROFILE=wall|gpudiagnostics to the existing GPU Vortex benchmark.gpumode, bracket field dispatches with CUDA events and report device-stream time.Why this is needed
This is measurement infrastructure, not a speedup. It lets us separate host planning/dispatch, I/O/backpressure, final synchronization, and actual device execution without editing and rebuilding the benchmark for each investigation. Keeping the unprofiled path intact also prevents the measurement tooling from changing normal benchmark results.
Validation
cargo +nightly fmt --allcargo check -p compress-bench --features cuda,unstable_encodingsgit diff --check