-
Notifications
You must be signed in to change notification settings - Fork 148
feat: emit event on QUIC datagram sent #3234
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
base: main
Are you sure you want to change the base?
Conversation
Contains: - mozilla/neqo#3176 - mozilla/neqo#3171 - mozilla/neqo#3207 - mozilla/neqo#3234
Contains: - mozilla/neqo#3176 - mozilla/neqo#3171 - mozilla/neqo#3207 - mozilla/neqo#3234
Contains: - mozilla/neqo#3176 - mozilla/neqo#3171 - mozilla/neqo#3207 - mozilla/neqo#3234
Failed Interop TestsQUIC Interop Runner, client vs. server, differences relative to 1830662. 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
|
Client/server transfer resultsPerformance differences relative to 042e684. Transfer of 33554432 bytes over loopback, min. 100 runs. All unit-less numbers are in milliseconds.
Table above only shows statistically significant changes. See all results below. All resultsTransfer of 33554432 bytes over loopback, min. 100 runs. All unit-less numbers are in milliseconds.
Download data for |
Benchmark resultsSignificant performance differences relative to 042e684. 1-conn/1-100mb-resp/mtu-1504 (aka. Download)/client: 💔 Performance has regressed by +4.2150%. time: [211.20 ms 211.50 ms 211.80 ms]
thrpt: [472.14 MiB/s 472.82 MiB/s 473.48 MiB/s]
change:
time: [+4.0308% +4.2150% +4.4128] (p = 0.00 < 0.05)
thrpt: [-4.2263% -4.0446% -3.8746]
Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
1 (1.00%) low mild
1 (1.00%) high mild
1 (1.00%) high severe1-conn/1-100mb-req/mtu-1504 (aka. Upload)/client: 💔 Performance has regressed by +3.4987%. time: [213.15 ms 213.45 ms 213.75 ms]
thrpt: [467.83 MiB/s 468.50 MiB/s 469.15 MiB/s]
change:
time: [+3.2812% +3.4987% +3.7231] (p = 0.00 < 0.05)
thrpt: [-3.5895% -3.3805% -3.1770]
Performance has regressed.
Found 4 outliers among 100 measurements (4.00%)
4 (4.00%) high mildAll results1-conn/1-100mb-resp/mtu-1504 (aka. Download)/client: 💔 Performance has regressed by +4.2150%. time: [211.20 ms 211.50 ms 211.80 ms]
thrpt: [472.14 MiB/s 472.82 MiB/s 473.48 MiB/s]
change:
time: [+4.0308% +4.2150% +4.4128] (p = 0.00 < 0.05)
thrpt: [-4.2263% -4.0446% -3.8746]
Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
1 (1.00%) low mild
1 (1.00%) high mild
1 (1.00%) high severe1-conn/10_000-parallel-1b-resp/mtu-1504 (aka. RPS)/client: Change within noise threshold. time: [281.69 ms 283.45 ms 285.20 ms]
thrpt: [35.064 Kelem/s 35.280 Kelem/s 35.500 Kelem/s]
change:
time: [+0.3438% +1.2568% +2.1516] (p = 0.01 < 0.05)
thrpt: [-2.1063% -1.2412% -0.3426]
Change within noise threshold.1-conn/1-1b-resp/mtu-1504 (aka. HPS)/client: No change in performance detected. time: [38.678 ms 38.853 ms 39.050 ms]
thrpt: [25.608 B/s 25.738 B/s 25.854 B/s]
change:
time: [-0.6781% -0.0356% +0.6023] (p = 0.92 > 0.05)
thrpt: [-0.5987% +0.0356% +0.6827]
No change in performance detected.
Found 8 outliers among 100 measurements (8.00%)
1 (1.00%) high mild
7 (7.00%) high severe1-conn/1-100mb-req/mtu-1504 (aka. Upload)/client: 💔 Performance has regressed by +3.4987%. time: [213.15 ms 213.45 ms 213.75 ms]
thrpt: [467.83 MiB/s 468.50 MiB/s 469.15 MiB/s]
change:
time: [+3.2812% +3.4987% +3.7231] (p = 0.00 < 0.05)
thrpt: [-3.5895% -3.3805% -3.1770]
Performance has regressed.
Found 4 outliers among 100 measurements (4.00%)
4 (4.00%) high milddecode 4096 bytes, mask ff: No change in performance detected. time: [6.9048 µs 6.9157 µs 6.9271 µs]
change: [-0.4305% -0.0393% +0.2889] (p = 0.84 > 0.05)
No change in performance detected.
Found 5 outliers among 100 measurements (5.00%)
4 (4.00%) high mild
1 (1.00%) high severedecode 1048576 bytes, mask ff: No change in performance detected. time: [1.7583 ms 1.7651 ms 1.7761 ms]
change: [-0.7034% -0.2639% +0.5071] (p = 0.43 > 0.05)
No change in performance detected.
Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) high severedecode 4096 bytes, mask 7f: No change in performance detected. time: [9.5276 µs 9.5457 µs 9.5635 µs]
change: [-0.2288% +0.2524% +0.8194] (p = 0.35 > 0.05)
No change in performance detected.
Found 5 outliers among 100 measurements (5.00%)
3 (3.00%) high mild
2 (2.00%) high severedecode 1048576 bytes, mask 7f: No change in performance detected. time: [2.4354 ms 2.4402 ms 2.4453 ms]
change: [-0.0891% +0.2003% +0.4931] (p = 0.18 > 0.05)
No change in performance detected.
Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) high milddecode 4096 bytes, mask 3f: No change in performance detected. time: [11.132 µs 11.154 µs 11.175 µs]
change: [-0.3018% +0.0345% +0.3864] (p = 0.85 > 0.05)
No change in performance detected.
Found 2 outliers among 100 measurements (2.00%)
2 (2.00%) high severedecode 1048576 bytes, mask 3f: Change within noise threshold. time: [2.8517 ms 2.8572 ms 2.8634 ms]
change: [-0.8430% -0.5709% -0.2776] (p = 0.00 < 0.05)
Change within noise threshold.
Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) high severe1-streams/each-1000-bytes/wallclock-time: No change in performance detected. time: [586.66 µs 588.62 µs 590.87 µs]
change: [-1.7551% -0.6234% +0.2320] (p = 0.25 > 0.05)
No change in performance detected.
Found 7 outliers among 100 measurements (7.00%)
1 (1.00%) low mild
6 (6.00%) high severe1-streams/each-1000-bytes/simulated-time: No change in performance detected. time: [119.16 ms 119.37 ms 119.59 ms]
thrpt: [8.1662 KiB/s 8.1810 KiB/s 8.1955 KiB/s]
change:
time: [-0.1843% +0.0776% +0.3339] (p = 0.55 > 0.05)
thrpt: [-0.3328% -0.0776% +0.1846]
No change in performance detected.
Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) high mild1000-streams/each-1-bytes/wallclock-time: No change in performance detected. time: [12.355 ms 12.404 ms 12.458 ms]
change: [-1.0034% -0.3208% +0.2865] (p = 0.34 > 0.05)
No change in performance detected.
Found 2 outliers among 100 measurements (2.00%)
1 (1.00%) high mild
1 (1.00%) high severe1000-streams/each-1-bytes/simulated-time: No change in performance detected. time: [2.3305 s 2.3338 s 2.3371 s]
thrpt: [427.88 B/s 428.49 B/s 429.10 B/s]
change:
time: [-0.2369% -0.0313% +0.1697] (p = 0.77 > 0.05)
thrpt: [-0.1695% +0.0313% +0.2375]
No change in performance detected.1000-streams/each-1000-bytes/wallclock-time: Change within noise threshold. time: [50.492 ms 50.708 ms 51.024 ms]
change: [+0.5075% +1.0515% +1.6362] (p = 0.00 < 0.05)
Change within noise threshold.
Found 3 outliers among 100 measurements (3.00%)
2 (2.00%) high mild
1 (1.00%) high severe1000-streams/each-1000-bytes/simulated-time: No change in performance detected. time: [16.177 s 16.416 s 16.655 s]
thrpt: [58.635 KiB/s 59.490 KiB/s 60.369 KiB/s]
change:
time: [-1.7025% +0.3537% +2.5338] (p = 0.75 > 0.05)
thrpt: [-2.4712% -0.3524% +1.7320]
No change in performance detected.
Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) low mildcoalesce_acked_from_zero 1+1 entries: No change in performance detected. time: [89.120 ns 89.464 ns 89.845 ns]
change: [-2.1093% -0.7815% +0.2284] (p = 0.22 > 0.05)
No change in performance detected.
Found 10 outliers among 100 measurements (10.00%)
8 (8.00%) high mild
2 (2.00%) high severecoalesce_acked_from_zero 3+1 entries: No change in performance detected. time: [105.87 ns 106.27 ns 106.71 ns]
change: [-0.4988% -0.0435% +0.4268] (p = 0.86 > 0.05)
No change in performance detected.
Found 12 outliers among 100 measurements (12.00%)
12 (12.00%) high severecoalesce_acked_from_zero 10+1 entries: No change in performance detected. time: [105.36 ns 105.84 ns 106.38 ns]
change: [-0.9096% -0.3030% +0.2131] (p = 0.32 > 0.05)
No change in performance detected.
Found 13 outliers among 100 measurements (13.00%)
4 (4.00%) low mild
2 (2.00%) high mild
7 (7.00%) high severecoalesce_acked_from_zero 1000+1 entries: Change within noise threshold. time: [91.545 ns 91.632 ns 91.735 ns]
change: [-1.3600% -0.6644% -0.0794] (p = 0.04 < 0.05)
Change within noise threshold.
Found 15 outliers among 100 measurements (15.00%)
4 (4.00%) high mild
11 (11.00%) high severeRxStreamOrderer::inbound_frame(): Change within noise threshold. time: [110.28 ms 110.38 ms 110.50 ms]
change: [+0.4711% +0.5814% +0.7165] (p = 0.00 < 0.05)
Change within noise threshold.
Found 2 outliers among 100 measurements (2.00%)
1 (1.00%) high mild
1 (1.00%) high severesent::Packets::take_ranges: No change in performance detected. time: [4.5555 µs 4.6951 µs 4.8351 µs]
change: [-2.3300% +1.2154% +4.8872] (p = 0.50 > 0.05)
No change in performance detected.
Found 3 outliers among 100 measurements (3.00%)
3 (3.00%) high mildtransfer/pacing-false/varying-seeds/wallclock-time/run: Change within noise threshold. time: [23.533 ms 23.562 ms 23.603 ms]
change: [-0.4257% -0.2315% -0.0064] (p = 0.01 < 0.05)
Change within noise threshold.
Found 3 outliers among 100 measurements (3.00%)
1 (1.00%) low mild
1 (1.00%) high mild
1 (1.00%) high severetransfer/pacing-false/varying-seeds/simulated-time/run: No change in performance detected. time: [23.941 s 23.941 s 23.941 s]
thrpt: [171.09 KiB/s 171.09 KiB/s 171.09 KiB/s]
change:
time: [+0.0000% +0.0000% +0.0000] (p = NaN > 0.05)
thrpt: [+0.0000% +0.0000% +0.0000]
No change in performance detected.transfer/pacing-true/varying-seeds/wallclock-time/run: Change within noise threshold. time: [23.686 ms 23.710 ms 23.740 ms]
change: [-1.4064% -1.1983% -1.0089] (p = 0.00 < 0.05)
Change within noise threshold.
Found 2 outliers among 100 measurements (2.00%)
1 (1.00%) high mild
1 (1.00%) high severetransfer/pacing-true/varying-seeds/simulated-time/run: No change in performance detected. time: [23.676 s 23.676 s 23.676 s]
thrpt: [173.01 KiB/s 173.01 KiB/s 173.01 KiB/s]
change:
time: [+0.0000% +0.0000% +0.0000] (p = NaN > 0.05)
thrpt: [+0.0000% +0.0000% +0.0000]
No change in performance detected.transfer/pacing-false/same-seed/wallclock-time/run: Change within noise threshold. time: [23.853 ms 23.879 ms 23.914 ms]
change: [-0.6697% -0.4367% -0.2322] (p = 0.00 < 0.05)
Change within noise threshold.
Found 2 outliers among 100 measurements (2.00%)
1 (1.00%) high mild
1 (1.00%) high severetransfer/pacing-false/same-seed/simulated-time/run: No change in performance detected. time: [23.941 s 23.941 s 23.941 s]
thrpt: [171.09 KiB/s 171.09 KiB/s 171.09 KiB/s]
change:
time: [+0.0000% +0.0000% +0.0000] (p = NaN > 0.05)
thrpt: [+0.0000% +0.0000% +0.0000]
No change in performance detected.transfer/pacing-true/same-seed/wallclock-time/run: Change within noise threshold. time: [23.953 ms 23.983 ms 24.027 ms]
change: [-1.4335% -1.1972% -0.9596] (p = 0.00 < 0.05)
Change within noise threshold.
Found 3 outliers among 100 measurements (3.00%)
2 (2.00%) high mild
1 (1.00%) high severetransfer/pacing-true/same-seed/simulated-time/run: No change in performance detected. time: [23.676 s 23.676 s 23.676 s]
thrpt: [173.01 KiB/s 173.01 KiB/s 173.01 KiB/s]
change:
time: [+0.0000% +0.0000% +0.0000] (p = NaN > 0.05)
thrpt: [+0.0000% +0.0000% +0.0000]
No change in performance detected.Download data for |
|
| Branch | out-dgram-event |
| Testbed | On-prem |
🚨 2 Alerts
| Benchmark | Measure Units | View | Benchmark Result (Result Δ%) | Upper Boundary (Limit %) |
|---|---|---|---|---|
| decode 1048576 bytes, mask 3f | Latency milliseconds (ms) | 📈 plot 🚷 threshold 🚨 alert (🔔) | 2.86 ms(+68.26%)Baseline: 1.70 ms | 2.11 ms (135.29%) |
| decode 4096 bytes, mask 3f | Latency microseconds (µs) | 📈 plot 🚷 threshold 🚨 alert (🔔) | 11.15 µs(+57.72%)Baseline: 7.07 µs | 10.10 µs (110.46%) |
Click to view all benchmark results
| Benchmark | Latency | Benchmark Result nanoseconds (ns) (Result Δ%) | Upper Boundary nanoseconds (ns) (Limit %) |
|---|---|---|---|
| 1-conn/1-100mb-req/mtu-1504 (aka. Upload)/client | 📈 view plot 🚷 view threshold | 213,450,000.00 ns(+2.72%)Baseline: 207,804,622.82 ns | 217,110,287.35 ns (98.31%) |
| 1-conn/1-100mb-resp/mtu-1504 (aka. Download)/client | 📈 view plot 🚷 view threshold | 211,500,000.00 ns(+4.69%)Baseline: 202,028,239.85 ns | 211,964,427.48 ns (99.78%) |
| 1-conn/1-1b-resp/mtu-1504 (aka. HPS)/client | 📈 view plot 🚷 view threshold | 38,853,000.00 ns(+14.30%)Baseline: 33,992,628.63 ns | 45,983,319.13 ns (84.49%) |
| 1-conn/10_000-parallel-1b-resp/mtu-1504 (aka. RPS)/client | 📈 view plot 🚷 view threshold | 283,450,000.00 ns(-1.98%)Baseline: 289,162,746.62 ns | 302,302,987.93 ns (93.76%) |
| 1-streams/each-1000-bytes/simulated-time | 📈 view plot 🚷 view threshold | 119,370,000.00 ns(+0.47%)Baseline: 118,807,717.60 ns | 120,533,515.08 ns (99.03%) |
| 1-streams/each-1000-bytes/wallclock-time | 📈 view plot 🚷 view threshold | 588,620.00 ns(-0.23%)Baseline: 589,975.55 ns | 610,970.72 ns (96.34%) |
| 1000-streams/each-1-bytes/simulated-time | 📈 view plot 🚷 view threshold | 2,333,800,000.00 ns(-76.13%)Baseline: 9,778,785,493.23 ns | 24,323,371,890.34 ns (9.59%) |
| 1000-streams/each-1-bytes/wallclock-time | 📈 view plot 🚷 view threshold | 12,404,000.00 ns(-7.40%)Baseline: 13,395,663.44 ns | 15,194,294.16 ns (81.64%) |
| 1000-streams/each-1000-bytes/simulated-time | 📈 view plot 🚷 view threshold | 16,416,000,000.00 ns(-8.25%)Baseline: 17,892,659,574.47 ns | 20,893,421,776.35 ns (78.57%) |
| 1000-streams/each-1000-bytes/wallclock-time | 📈 view plot 🚷 view threshold | 50,708,000.00 ns(+0.30%)Baseline: 50,553,858.80 ns | 55,844,320.14 ns (90.80%) |
| RxStreamOrderer::inbound_frame() | 📈 view plot 🚷 view threshold | 110,380,000.00 ns(+0.59%)Baseline: 109,728,897.49 ns | 111,397,093.52 ns (99.09%) |
| coalesce_acked_from_zero 1+1 entries | 📈 view plot 🚷 view threshold | 89.46 ns(+0.42%)Baseline: 89.09 ns | 90.40 ns (98.97%) |
| coalesce_acked_from_zero 10+1 entries | 📈 view plot 🚷 view threshold | 105.84 ns(-0.19%)Baseline: 106.05 ns | 107.12 ns (98.80%) |
| coalesce_acked_from_zero 1000+1 entries | 📈 view plot 🚷 view threshold | 91.63 ns(+0.86%)Baseline: 90.85 ns | 95.18 ns (96.28%) |
| coalesce_acked_from_zero 3+1 entries | 📈 view plot 🚷 view threshold | 106.27 ns(-0.25%)Baseline: 106.54 ns | 107.54 ns (98.82%) |
| decode 1048576 bytes, mask 3f | 📈 view plot 🚷 view threshold 🚨 view alert (🔔) | 2,857,200.00 ns(+68.26%)Baseline: 1,698,125.92 ns | 2,111,870.64 ns (135.29%) |
| decode 1048576 bytes, mask 7f | 📈 view plot 🚷 view threshold | 2,440,200.00 ns(-51.33%)Baseline: 5,014,111.41 ns | 5,817,530.54 ns (41.95%) |
| decode 1048576 bytes, mask ff | 📈 view plot 🚷 view threshold | 1,765,100.00 ns(-41.15%)Baseline: 2,999,304.84 ns | 3,383,268.24 ns (52.17%) |
| decode 4096 bytes, mask 3f | 📈 view plot 🚷 view threshold 🚨 view alert (🔔) | 11,154.00 ns(+57.72%)Baseline: 7,072.04 ns | 10,097.79 ns (110.46%) |
| decode 4096 bytes, mask 7f | 📈 view plot 🚷 view threshold | 9,545.70 ns(-51.23%)Baseline: 19,571.46 ns | 22,744.13 ns (41.97%) |
| decode 4096 bytes, mask ff | 📈 view plot 🚷 view threshold | 6,915.70 ns(-38.72%)Baseline: 11,286.12 ns | 12,941.23 ns (53.44%) |
| sent::Packets::take_ranges | 📈 view plot 🚷 view threshold | 4,695.10 ns(+0.20%)Baseline: 4,685.58 ns | 4,928.87 ns (95.26%) |
| transfer/pacing-false/same-seed/simulated-time/run | 📈 view plot 🚷 view threshold | 23,941,000,000.00 ns(-5.48%)Baseline: 25,328,757,281.55 ns | 26,019,533,293.45 ns (92.01%) |
| transfer/pacing-false/same-seed/wallclock-time/run | 📈 view plot 🚷 view threshold | 23,879,000.00 ns(-5.93%)Baseline: 25,383,720.39 ns | 26,994,644.56 ns (88.46%) |
| transfer/pacing-false/varying-seeds/simulated-time/run | 📈 view plot 🚷 view threshold | 23,941,000,000.00 ns(-4.84%)Baseline: 25,159,322,330.10 ns | 25,541,978,796.27 ns (93.73%) |
| transfer/pacing-false/varying-seeds/wallclock-time/run | 📈 view plot 🚷 view threshold | 23,562,000.00 ns(-7.75%)Baseline: 25,540,671.84 ns | 27,175,525.56 ns (86.70%) |
| transfer/pacing-true/same-seed/simulated-time/run | 📈 view plot 🚷 view threshold | 23,676,000,000.00 ns(-6.77%)Baseline: 25,393,910,679.61 ns | 26,182,012,650.43 ns (90.43%) |
| transfer/pacing-true/same-seed/wallclock-time/run | 📈 view plot 🚷 view threshold | 23,983,000.00 ns(-9.76%)Baseline: 26,578,359.22 ns | 28,670,513.00 ns (83.65%) |
| transfer/pacing-true/varying-seeds/simulated-time/run | 📈 view plot 🚷 view threshold | 23,676,000,000.00 ns(-5.19%)Baseline: 24,970,943,689.32 ns | 25,378,935,914.05 ns (93.29%) |
| transfer/pacing-true/varying-seeds/wallclock-time/run | 📈 view plot 🚷 view threshold | 23,710,000.00 ns(-8.96%)Baseline: 26,044,864.08 ns | 27,753,577.04 ns (85.43%) |
Contains: - mozilla/neqo#3176 - mozilla/neqo#3171 - mozilla/neqo#3207 - mozilla/neqo#3234
Contains: - mozilla/neqo#3176 - mozilla/neqo#3171 - mozilla/neqo#3207 - mozilla/neqo#3234
Work-in-progress
Needed for MASQUE to notify inner connection that it can add more datagrams to the outer connection QUIC datagram queue.