2024-02-10 Joakim FrostegÄrd # UDP BitTorrent tracker throughput comparison This is a performance comparison of several UDP BitTorrent tracker implementations. Benchmarks were run using [aquatic_bencher](../crates/bencher), with `--cpu-mode subsequent-one-per-pair`. ## Software and hardware ### Tracker implementations | Name | Commit | |---------------|---------| | [aquatic_udp] | 21a5301 | | [opentracker] | 110868e | | [chihaya] | 2f79440 | [aquatic_udp]: ../crates/udp [opentracker]: http://erdgeist.org/arts/software/opentracker/ [chihaya]: https://github.com/chihaya/chihaya ### OS and compilers | Name | Version | |--------|---------| | Debian | 12.4 | | Linux | 6.5.10 | | rustc | 1.76.0 | | GCC | 12.2.0 | | go | 1.19.8 | ### Hardware Hetzner CCX63: 48 dedicated vCPUs (AMD Milan Epyc 7003) ## Results ![UDP BitTorrent tracker throughput](./aquatic-udp-load-test-2024-02-10.png)
UDP BitTorrent tracker troughput

Average responses per second, best result.

CPU cores aquatic_udp (mio) aquatic_udp (io_uring) opentracker chihaya
1 186,939 226,065 190,540 55,989
2 371,478 444,353 379,623 111,226
4 734,709 876,642 748,401 136,983
6 1,034,804 1,267,006 901,600 131,827
8 1,296,693 1,521,113 1,170,928 131,779
12 1,871,353 1,837,223 1,675,059 130,942
16 2,037,713 2,258,321 1,645,828 127,256