-
Notifications
You must be signed in to change notification settings - Fork 127
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ci: Run benchmarks with Ethernet and max MTUs #2183
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2183 +/- ##
=======================================
Coverage 95.39% 95.39%
=======================================
Files 112 112
Lines 36373 36373
=======================================
Hits 34697 34697
Misses 1676 1676 ☔ View full report in Codecov by Sentry. |
Failed Interop TestsQUIC Interop Runner, client vs. server neqo-latest as client
neqo-latest as server
All resultsSucceeded Interop TestsQUIC Interop Runner, client vs. server neqo-latest as client
neqo-latest as server
Unsupported Interop TestsQUIC Interop Runner, client vs. server neqo-latest as client
neqo-latest as server
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
apart from msquic failures, looks good to me. Thanks for tackling this so quickly!
Benchmark resultsPerformance differences relative to 5d53446. coalesce_acked_from_zero 1+1 entries: No change in performance detected.time: [99.427 ns 99.723 ns 100.03 ns] change: [-0.1628% +0.2891% +0.6946%] (p = 0.19 > 0.05) coalesce_acked_from_zero 3+1 entries: No change in performance detected.time: [117.72 ns 118.09 ns 118.49 ns] change: [-0.2594% +0.4170% +0.9909%] (p = 0.20 > 0.05) coalesce_acked_from_zero 10+1 entries: Change within noise threshold.time: [117.02 ns 117.18 ns 117.48 ns] change: [+0.1757% +0.5170% +0.7762%] (p = 0.00 < 0.05) coalesce_acked_from_zero 1000+1 entries: Change within noise threshold.time: [98.463 ns 98.609 ns 98.775 ns] change: [+0.1056% +0.9109% +1.7502%] (p = 0.02 < 0.05) RxStreamOrderer::inbound_frame(): Change within noise threshold.time: [111.34 ms 111.39 ms 111.44 ms] change: [-0.8531% -0.7807% -0.7114%] (p = 0.00 < 0.05) transfer/pacing-false/varying-seeds: No change in performance detected.time: [25.773 ms 26.783 ms 27.817 ms] change: [-6.6224% -1.6982% +3.3100%] (p = 0.51 > 0.05) transfer/pacing-true/varying-seeds: No change in performance detected.time: [34.655 ms 36.281 ms 37.912 ms] change: [-3.4768% +2.6763% +9.3032%] (p = 0.42 > 0.05) transfer/pacing-false/same-seed: No change in performance detected.time: [25.083 ms 25.812 ms 26.537 ms] change: [-5.6425% -1.9667% +1.8305%] (p = 0.31 > 0.05) transfer/pacing-true/same-seed: No change in performance detected.time: [40.973 ms 42.931 ms 44.925 ms] change: [-6.3326% +0.0162% +6.6075%] (p = 0.99 > 0.05) 1-conn/1-100mb-resp/mtu-1500 (aka. Download)/client:time: [892.33 ms 901.06 ms 909.89 ms] thrpt: [109.90 MiB/s 110.98 MiB/s 112.07 MiB/s] 1-conn/10_000-parallel-1b-resp/mtu-1500 (aka. RPS)/client:time: [311.42 ms 314.39 ms 317.43 ms] thrpt: [31.503 Kelem/s 31.808 Kelem/s 32.111 Kelem/s] 1-conn/1-1b-resp/mtu-1500 (aka. HPS)/client:time: [33.555 ms 33.763 ms 33.987 ms] thrpt: [29.423 elem/s 29.618 elem/s 29.802 elem/s] Found 6 outliers among 100 measurements (6.00%) 5 (5.00%) high mild 1 (1.00%) high severe 1-conn/1-100mb-resp/mtu-65536 (aka. Download)/client:time: [112.62 ms 113.23 ms 113.81 ms] thrpt: [878.67 MiB/s 883.16 MiB/s 887.91 MiB/s] Found 3 outliers among 100 measurements (3.00%) 3 (3.00%) low mild 1-conn/10_000-parallel-1b-resp/mtu-65536 (aka. RPS)/client:time: [314.15 ms 317.92 ms 321.74 ms] thrpt: [31.081 Kelem/s 31.455 Kelem/s 31.832 Kelem/s] Found 1 outliers among 100 measurements (1.00%) 1 (1.00%) high mild 1-conn/1-1b-resp/mtu-65536 (aka. HPS)/client:time: [33.810 ms 34.008 ms 34.220 ms] thrpt: [29.223 elem/s 29.405 elem/s 29.577 elem/s] Found 6 outliers among 100 measurements (6.00%) 1 (1.00%) low mild 3 (3.00%) high mild 2 (2.00%) high severe Client/server transfer resultsTransfer of 33554432 bytes over loopback.
|
cat step.md >> steps.md | ||
# Sanity check the size of the last retrieved file. | ||
[ "$(wc -c <"$SIZE")" -eq "$SIZE" ] || exit 1 | ||
# See https://github.com/microsoft/msquic/issues/4618#issuecomment-2422611592 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this giant thing not a shell script?
} | ||
|
||
fn benchmark_transfer_fixed(c: &mut Criterion) { | ||
benchmark_transfer( | ||
c, | ||
"same-seed", | ||
&Some("62df6933ba1f543cece01db8f27fb2025529b27f93df39e19f006e1db3b8c843"), | ||
Some(&"62df6933ba1f543cece01db8f27fb2025529b27f93df39e19f006e1db3b8c843"), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So you are passing &&str
and changing the signature to &impl AsRef
? That seems a bit "wat" to me.
impl AsRef<str>
matches String
and &str
. Why does it need an extra &
? That only reduces ergonomics.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Clippy wants it
No description provided.