Skip to content

TEST/PERF: Compare device perftest BW/Lat against the PR base - #11531

Open
Alexey-Rivkin wants to merge 1 commit into
openucx:masterfrom
Alexey-Rivkin:device-perf-regression-compare
Open

TEST/PERF: Compare device perftest BW/Lat against the PR base#11531
Alexey-Rivkin wants to merge 1 commit into
openucx:masterfrom
Alexey-Rivkin:device-perf-regression-compare

Conversation

@Alexey-Rivkin

@Alexey-Rivkin Alexey-Rivkin commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

What?

Add base-vs-head BW/Lat regression check for the GPU device-API (GDA) perftests (test_types_ucp_device_cuda).

Why?

They run in CI but only on the PR, with no comparison, so regressions slip through (e.g. the ~34% GDA bandwidth drop in #11424). The OSU perf pipeline can't cover this: it's host-initiated and its nodes lack GDA.

How?

On a PR build, build the base branch too, run the device config on both the base and head branches interleaved (so both see the same node load on the shared GPU CI nodes), and compare. A regression above the threshold is reported as a build warning - the check is advisory and non-blocking. The threshold is loose (15%) since these nodes are shared; blocking mode can follow once the signal-vs-noise ratio on the shared nodes is known.

@Alexey-Rivkin
Alexey-Rivkin force-pushed the device-perf-regression-compare branch 3 times, most recently from 705f3ba to 76a0752 Compare June 7, 2026 21:19
@Alexey-Rivkin

Copy link
Copy Markdown
Contributor Author

/build

3 similar comments
@Alexey-Rivkin

Copy link
Copy Markdown
Contributor Author

/build

@ntsemah

ntsemah commented Jun 29, 2026

Copy link
Copy Markdown

/build

@Alexey-Rivkin

Copy link
Copy Markdown
Contributor Author

/build

@Alexey-Rivkin
Alexey-Rivkin force-pushed the device-perf-regression-compare branch from 76a0752 to 66236d9 Compare August 5, 2026 13:21
@Alexey-Rivkin
Alexey-Rivkin marked this pull request as ready for review August 5, 2026 13:44
@Alexey-Rivkin
Alexey-Rivkin marked this pull request as draft August 5, 2026 13:52
The GPU device-API (GDA / gdaki) perftests run in CI but only ever ran
once on the PR, with no comparison, so a bandwidth/latency regression
went unnoticed (e.g. the ~34% GDA bandwidth drop in openucx#11424). The OSU
perf pipeline can't cover this: OSU is host-initiated and never enters
the GPU-kernel-initiated path, and its perf nodes lack GDA hardware.

Add a before/after check inside the existing GPU leg: build the PR base
(HEAD^1 of the merge ref) and run test_types_ucp_device_cuda on both the
base and head builds, interleaving the runs (alternating order) so both
see the same node load, then compare per-test BW/Lat. A regression above
the threshold (default 15%, looser than the OSU 5% since the GPU CI
nodes are shared and noisier) is reported as a build warning and marks
the stage SucceededWithIssues. The check is advisory and never fails the
job - base build or base run failures only skip the comparison; blocking
mode can follow once the signal-vs-noise ratio on the shared nodes is
known. master / non-PR builds (no HEAD^2) just run once for coverage,
unchanged.

Signed-off-by: Alexey Rivkin <arivkin@nvidia.com>
@Alexey-Rivkin
Alexey-Rivkin force-pushed the device-perf-regression-compare branch from 66236d9 to 391b9e8 Compare August 5, 2026 13:55
@Alexey-Rivkin
Alexey-Rivkin marked this pull request as ready for review August 6, 2026 10:40
@gleon99

gleon99 commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

@ofirfarjun7 .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants