-
Notifications
You must be signed in to change notification settings - Fork 128
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
Revert "perf(udp): multi-message receive on apple (#2302)" #2352
Conversation
This reverts commit 3c48567.
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2352 +/- ##
==========================================
+ Coverage 95.29% 95.30% +0.01%
==========================================
Files 114 114
Lines 36844 36858 +14
Branches 36844 36858 +14
==========================================
+ Hits 35110 35128 +18
+ Misses 1728 1724 -4
Partials 6 6 ☔ View full report in Codecov by Sentry. |
Failed Interop TestsQUIC Interop Runner, client vs. server, differences relative to 085fa62. 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 085fa62. decode 4096 bytes, mask ff: No change in performance detected.time: [11.176 µs 11.223 µs 11.282 µs] change: [-0.0450% +0.6787% +1.4128%] (p = 0.08 > 0.05) decode 1048576 bytes, mask ff: No change in performance detected.time: [3.0161 ms 3.0258 ms 3.0369 ms] change: [-1.0595% -0.3860% +0.2125%] (p = 0.26 > 0.05) decode 4096 bytes, mask 7f: No change in performance detected.time: [19.534 µs 19.587 µs 19.644 µs] change: [-0.3124% +0.0163% +0.3351%] (p = 0.93 > 0.05) decode 1048576 bytes, mask 7f: No change in performance detected.time: [5.1607 ms 5.1723 ms 5.1854 ms] change: [-1.3430% -0.4242% +0.2013%] (p = 0.35 > 0.05) decode 4096 bytes, mask 3f: No change in performance detected.time: [5.5291 µs 5.5529 µs 5.5830 µs] change: [-0.5999% +1.5931% +5.3857%] (p = 0.59 > 0.05) decode 1048576 bytes, mask 3f: No change in performance detected.time: [1.7580 ms 1.7596 ms 1.7625 ms] change: [-0.0153% +0.0744% +0.2459%] (p = 0.52 > 0.05) coalesce_acked_from_zero 1+1 entries: No change in performance detected.time: [99.329 ns 99.656 ns 99.989 ns] change: [-0.0878% +0.3087% +0.7104%] (p = 0.13 > 0.05) coalesce_acked_from_zero 3+1 entries: No change in performance detected.time: [117.27 ns 117.69 ns 118.17 ns] change: [-0.1934% +0.3516% +0.8787%] (p = 0.22 > 0.05) coalesce_acked_from_zero 10+1 entries: No change in performance detected.time: [116.58 ns 116.91 ns 117.34 ns] change: [-0.2761% +0.2147% +0.7272%] (p = 0.42 > 0.05) coalesce_acked_from_zero 1000+1 entries: No change in performance detected.time: [97.317 ns 97.433 ns 97.564 ns] change: [-1.0142% -0.1978% +0.5591%] (p = 0.65 > 0.05) RxStreamOrderer::inbound_frame(): Change within noise threshold.time: [111.04 ms 111.10 ms 111.16 ms] change: [-0.3343% -0.1769% -0.0504%] (p = 0.01 < 0.05) SentPackets::take_ranges: No change in performance detected.time: [5.5160 µs 5.6975 µs 5.8932 µs] change: [-1.9785% +0.7002% +3.5085%] (p = 0.64 > 0.05) transfer/pacing-false/varying-seeds: Change within noise threshold.time: [41.575 ms 41.668 ms 41.772 ms] change: [-0.7369% -0.4437% -0.1270%] (p = 0.00 < 0.05) transfer/pacing-true/varying-seeds: No change in performance detected.time: [42.042 ms 42.123 ms 42.212 ms] change: [-0.1417% +0.1567% +0.4511%] (p = 0.30 > 0.05) transfer/pacing-false/same-seed: Change within noise threshold.time: [41.552 ms 41.628 ms 41.712 ms] change: [-1.1799% -0.9313% -0.6763%] (p = 0.00 < 0.05) transfer/pacing-true/same-seed: Change within noise threshold.time: [41.659 ms 41.726 ms 41.801 ms] change: [+0.3295% +0.5793% +0.8316%] (p = 0.00 < 0.05) 1-conn/1-100mb-resp/mtu-1504 (aka. Download)/client: 💚 Performance has improved.time: [891.10 ms 899.58 ms 908.39 ms] thrpt: [110.08 MiB/s 111.16 MiB/s 112.22 MiB/s] change: time: [-4.2354% -2.8237% -1.2988%] (p = 0.00 < 0.05) thrpt: [+1.3159% +2.9057% +4.4227%] 1-conn/10_000-parallel-1b-resp/mtu-1504 (aka. RPS)/client: No change in performance detected.time: [314.87 ms 316.53 ms 318.19 ms] thrpt: [31.428 Kelem/s 31.593 Kelem/s 31.759 Kelem/s] change: time: [-1.5746% -0.7046% +0.1574%] (p = 0.11 > 0.05) thrpt: [-0.1571% +0.7096% +1.5998%] 1-conn/1-1b-resp/mtu-1504 (aka. HPS)/client: No change in performance detected.time: [33.933 ms 34.142 ms 34.372 ms] thrpt: [29.093 elem/s 29.289 elem/s 29.470 elem/s] change: time: [-1.3486% -0.4978% +0.2746%] (p = 0.24 > 0.05) thrpt: [-0.2739% +0.5003% +1.3670%] 1-conn/1-100mb-resp/mtu-1504 (aka. Upload)/client: Change within noise threshold.time: [1.6633 s 1.6825 s 1.7014 s] thrpt: [58.774 MiB/s 59.435 MiB/s 60.122 MiB/s] change: time: [-3.1501% -1.5471% -0.1051%] (p = 0.04 < 0.05) thrpt: [+0.1052% +1.5714% +3.2526%] Client/server transfer resultsTransfer of 33554432 bytes over loopback.
|
I wonder if I messed something up on the quinn-udp side. Off-by-one error on TX or RX when dealing with the buffer vector? Hm. |
@larseggert but that would not explain why it is failing for me on Linux, right? |
Debugging this further, the neqo/neqo-transport/src/streams.rs Lines 420 to 422 in 8bc926a
|
Ah, I believe neqo/neqo-transport/src/streams.rs Lines 416 to 422 in 8bc926a
Say that the stream is remote initiated, then I will create a pull request. Edit: #2358 |
Closing here in favor of #2358. |
This reverts commit 3c48567.
RPS
benchmark sometimes fails withTransportError(PeerError(5)
. Git bisect shows 3c48567 introduced the regression.Until I figure out the reason, let's revert.