-
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
wrappers for common usage of test_frame_writer #2159
Conversation
This reduces boilerplate and encapsulates a good pattern of usage. I wasn't able to make `test_frame_writer` private, but this is close enough.
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2159 +/- ##
==========================================
- Coverage 95.39% 95.38% -0.01%
==========================================
Files 112 112
Lines 36364 36373 +9
==========================================
+ Hits 34688 34696 +8
- Misses 1676 1677 +1 ☔ View full report in Codecov by Sentry. |
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.
Neat.
More generally, I wasn't aware of Connection::test_frame_writer
. Great for #2150!
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
|
Benchmark resultsPerformance differences relative to 9d12a1f. coalesce_acked_from_zero 1+1 entries: 💔 Performance has regressed.time: [129.50 ns 129.85 ns 130.20 ns] change: [+30.564% +31.203% +31.830%] (p = 0.00 < 0.05) coalesce_acked_from_zero 3+1 entries: 💔 Performance has regressed.time: [168.56 ns 169.04 ns 169.55 ns] change: [+43.940% +44.577% +45.149%] (p = 0.00 < 0.05) coalesce_acked_from_zero 10+1 entries: 💔 Performance has regressed.time: [165.72 ns 166.25 ns 166.90 ns] change: [+42.734% +43.382% +44.024%] (p = 0.00 < 0.05) coalesce_acked_from_zero 1000+1 entries: 💔 Performance has regressed.time: [134.52 ns 134.87 ns 135.26 ns] change: [+37.097% +38.484% +39.683%] (p = 0.00 < 0.05) RxStreamOrderer::inbound_frame(): No change in performance detected.time: [111.01 ms 111.07 ms 111.12 ms] change: [-0.0744% +0.0012% +0.0754%] (p = 0.98 > 0.05) transfer/pacing-false/varying-seeds: No change in performance detected.time: [26.373 ms 27.489 ms 28.604 ms] change: [-3.2191% +2.6600% +8.7712%] (p = 0.38 > 0.05) transfer/pacing-true/varying-seeds: Change within noise threshold.time: [32.886 ms 34.551 ms 36.200 ms] change: [-13.873% -7.9117% -1.5853%] (p = 0.02 < 0.05) transfer/pacing-false/same-seed: No change in performance detected.time: [25.524 ms 26.263 ms 26.999 ms] change: [-4.0952% -0.1179% +3.9947%] (p = 0.95 > 0.05) transfer/pacing-true/same-seed: No change in performance detected.time: [40.993 ms 43.076 ms 45.195 ms] change: [-2.7810% +4.3778% +11.841%] (p = 0.21 > 0.05) 1-conn/1-100mb-resp (aka. Download)/client: Change within noise threshold.time: [112.72 ms 113.24 ms 113.71 ms] thrpt: [879.43 MiB/s 883.12 MiB/s 887.12 MiB/s] change: time: [-1.8685% -1.3054% -0.7594%] (p = 0.00 < 0.05) thrpt: [+0.7652% +1.3227% +1.9040%] 1-conn/10_000-parallel-1b-resp (aka. RPS)/client: No change in performance detected.time: [310.29 ms 313.87 ms 317.37 ms] thrpt: [31.509 Kelem/s 31.861 Kelem/s 32.227 Kelem/s] change: time: [-2.7113% -1.1398% +0.6215%] (p = 0.17 > 0.05) thrpt: [-0.6177% +1.1530% +2.7869%] 1-conn/1-1b-resp (aka. HPS)/client: No change in performance detected.time: [33.956 ms 34.184 ms 34.430 ms] thrpt: [29.045 elem/s 29.254 elem/s 29.450 elem/s] change: time: [-0.4136% +0.4710% +1.4149%] (p = 0.29 > 0.05) thrpt: [-1.3952% -0.4688% +0.4153%] Client/server transfer resultsTransfer of 33554432 bytes over loopback.
|
This reduces boilerplate and encapsulates a good pattern of usage. I wasn't able to make
test_frame_writer
private, but this is close enough.