mozilla
neqo
BlogDocsChangelog

feat(transport/cc): make slow start pluggable and add hystart++

#3278
Comparing
omansfeld:pluggable_slow_start
(
7f543e4
) with
main
(
e74f986
)
CodSpeed Performance Gauge
-4%
Improvements
1
Regressions
2
Untouched
20

Benchmarks

Failed

wallclock-time
neqo-http3/benches/streams.rs::benches::criterion_benchmark::1-streams/each-1000-bytes
Regression
CodSpeed Performance Gauge
-3%
1 ms1.1 ms
coalesce_acked_from_zero 1000+1 entries
neqo-transport/benches/range_tracker.rs::benches::benchmark_coalesce
Regression
CodSpeed Performance Gauge
-4%
2.6 µs2.7 µs

Improved

client
neqo-bin/benches/main.rs::benches::transfer::1-conn/1-100mb-resp (aka. Download)
CodSpeed Performance Gauge
+9%
816.2 ms750.4 ms

Passed

client
neqo-bin/benches/main.rs::benches::transfer::1-conn/1-100mb-req (aka. Upload)
CodSpeed Performance Gauge
+3%
891.3 ms866.5 ms
client
neqo-bin/benches/main.rs::benches::transfer::1-conn/10_000-parallel-1b-resp (aka. RPS)
CodSpeed Performance Gauge
0%
366.6 ms365.6 ms
run
neqo-transport/benches/transfer.rs::transfer::benchmark_transfer_fixed::transfer/pacing-true/same-seed/wallclock-time
CodSpeed Performance Gauge
0%
156.8 ms156.6 ms
take_ranges
neqo-transport/benches/sent_packets.rs::benches::take_ranges::sent::Packets
CodSpeed Performance Gauge
0%
30 µs29.9 µs
run
neqo-transport/benches/transfer.rs::transfer::benchmark_transfer_variable::transfer/pacing-false/varying-seeds/wallclock-time
CodSpeed Performance Gauge
0%
157.9 ms157.8 ms
decode 4096 bytes, mask 3f
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
46.6 µs46.5 µs
decode 1048576 bytes, mask 3f
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
11.8 ms11.8 ms
decode 1048576 bytes, mask 7f
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
9.8 ms9.8 ms
decode 4096 bytes, mask 7f
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
38.6 µs38.6 µs
decode 1048576 bytes, mask ff
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
6.8 ms6.8 ms
decode 4096 bytes, mask ff
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
27 µs27 µs
inbound_frame()
neqo-transport/benches/rx_stream_orderer.rs::benches::criterion_benchmark::RxStreamOrderer
CodSpeed Performance Gauge
0%
125.6 ms125.6 ms
wallclock-time
neqo-http3/benches/streams.rs::benches::criterion_benchmark::1000-streams/each-1000-bytes
CodSpeed Performance Gauge
0%
121.7 ms121.7 ms
client
neqo-bin/benches/main.rs::benches::transfer::1-conn/1-1b-resp (aka. HPS)
CodSpeed Performance Gauge
0%
15.1 ms15.1 ms
run
neqo-transport/benches/transfer.rs::transfer::benchmark_transfer_fixed::transfer/pacing-false/same-seed/wallclock-time
CodSpeed Performance Gauge
0%
156.8 ms157.1 ms
run
neqo-transport/benches/transfer.rs::transfer::benchmark_transfer_variable::transfer/pacing-true/varying-seeds/wallclock-time
CodSpeed Performance Gauge
-1%
155.4 ms156.9 ms
coalesce_acked_from_zero 3+1 entries
neqo-transport/benches/range_tracker.rs::benches::benchmark_coalesce
CodSpeed Performance Gauge
-2%
3 µs3.1 µs
coalesce_acked_from_zero 10+1 entries
neqo-transport/benches/range_tracker.rs::benches::benchmark_coalesce
CodSpeed Performance Gauge
-2%
3 µs3.1 µs
coalesce_acked_from_zero 1+1 entries
neqo-transport/benches/range_tracker.rs::benches::benchmark_coalesce
CodSpeed Performance Gauge
-2%
2.9 µs2.9 µs
wallclock-time
neqo-http3/benches/streams.rs::benches::criterion_benchmark::1000-streams/each-1-bytes
CodSpeed Performance Gauge
-2%
32.3 ms33.1 ms

Commits

Click on a commit to change the comparison range
Base
main
e74f986
-7.32%
make slow start pluggable
36308ef
8 days ago
by omansfeld
+3%
make slow start runtime configurable - and add a hystart placeholder to test it - can be configured using `--ss=hystart` similar to how cc is configured in the CLI
7f543e4
2 days ago
by omansfeld
© 2025 CodSpeed Technology
Home Terms Privacy Docs