Merge pull request #34 from greatest-ape/update-udp-benchmark

Add new udp benchmarks, update README
This commit is contained in:
Joakim Frostegård 2021-11-28 13:25:13 +01:00 committed by GitHub
commit abea88dbf8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 4 additions and 9 deletions

View file

@ -125,12 +125,9 @@ Supports IPv4 and IPv6.
#### Performance #### Performance
![UDP BitTorrent tracker throughput comparison](./documents/aquatic-udp-load-test-illustration-2021-11-08.png) ![UDP BitTorrent tracker throughput comparison](./documents/aquatic-udp-load-test-illustration-2021-11-28.png)
More details are available [here](./documents/aquatic-udp-load-test-2021-11-08.pdf). More details are available [here](./documents/aquatic-udp-load-test-2021-11-28.pdf).
Since making this benchmark, I have improved the mio-based implementation
considerably and removed the glommio-based implementation.
#### Optimisation attempts that didn't work out #### Optimisation attempts that didn't work out

View file

@ -17,14 +17,12 @@
* cargo-deny * cargo-deny
* aquatic_udp * aquatic_udp
* consider bounded channels with size 0 meaning unbounded
* check config field and group names, including in load tester
* look at proper cpu pinning (check that one thread gets bound per core) * look at proper cpu pinning (check that one thread gets bound per core)
* then consider so_attach_reuseport_cbpf * then consider so_attach_reuseport_cbpf
* what poll event capacity is actually needed? * what poll event capacity is actually needed?
* stagger connection cleaning intervals? * stagger connection cleaning intervals?
* notes
* load testing shows that with sharded state, mio reaches 1.4M responses per second
with 6 socket and 4 request workers. performance is great overall and faster than
without sharding. io_uring impl is a lot behind mio impl with new load tester
* aquatic_http: * aquatic_http:
* clean out connections regularly * clean out connections regularly

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB