Joakim Frostegård
|
af16a9e682
|
udp: fix io_uring soundness issues
|
2023-11-23 18:52:13 +01:00 |
|
Joakim Frostegård
|
2e67f11caf
|
udp: add experimental io_uring implementation (#131)
* WIP: add udp uring support
* WIP: fix udp uring address parsing
* WIP: udp uring: resubmit recv when needed
* WIP: udp uring: add OutMessageStorage, send swarm responses
* WIP: udp uring: increase ring entries to 1024
* WIP: udp uring: add constants
* WIP: udp uring: use sqpoll, avoid kernel calls
* WIP: udp uring: disable sqpoll
* WIP: udp uring: use VecDeque for local responses
* udp uring: enable setup_coop_taskrun
* udp uring: add RecvMsgStorage
* udp: improve split of uring and mio implementations
* udp uring: clean up
* udp uring: initial ipv6 support
* udp uring: improve helper structs
* udp uring: clean up, use constants for important data
* udp: share create_socket fn between implementations
* udp uring: improve send buffer free index finding
* udp uring: work on SendBuffers.try_add
* udp uring: split into modules
* udp uring: Rename RecvMsgMultiHelper to RecvHelper
* udp uring: improve SendBuffers
* udp uring: fix copyright attribution in buf_ring module
* udp uring: stop always consuming 100% cpu
* udp uring: clean up
* udp uring: add handle_recv_cqe
* udp uring: move local_responses into SocketWorker
* udp uring: move timeout_timespec into SocketWorker
* Update TODO
* udp: make io-uring optional
* Update TODO
* udp uring: enqueue timeout before sends
* udp uring: move likely empty buffer tracking logic into SendBuffers
* udp uring: improve error handling and logging
* udp uring: keep one timeout submitted at a time
* udp uring: update pending_scrape_valid_until
* udp uring: add second timeout for cleaning
* Update TODO
* udp uring: store resubmittable squeue entries in a Vec
* udp uring: add comment, remove a log statement
* Update TODO
* Update TODO
* udp: io_uring: fall back to mio if io_uring support not recent enough
* udp: uring: add bytes_received statistics
* udp: uring: add bytes_sent statistics
* udp: uring: add more statistics
* Update TODO
* udp: uring: improve SendBuffers code
* udp: uring: remove unneeded squeue sync calls
* udp: uring: replace buf_ring impl with one from tokio-uring
* udp: uring: store ring in TLS so it can be used in Drop impls
* udp: uring: store BufRing in SocketWorker
* udp: uring: silence buf_ring dead code warnings, improve comment
* Update TODO
* udp: uring: improve CurrentRing docs, use anonymous struct field
* udp: uring: improve ring setup
* udp: uring: get ipv6 working
* udp: uring: make ring entry count configurable, use more send entries
* udp: uring: log number of pending responses (info level)
* udp: uring: improve comment on send_buffer_entries calculation
* udp: improve config comments
* udp: uring: add to responses stats when they are confirmed as sent
* Update TODO
* udp: uring: enable IoUring setup_submit_all
* Update README
|
2023-03-07 19:01:37 +01:00 |
|
Joakim Frostegård
|
8beb13db29
|
In scripts, explicitly choose what workspace member to build
Otherwise, building aquatic_udp fails on other OS:es than Linux
|
2022-09-18 18:05:21 +02:00 |
|
Joakim Frostegård
|
44b50204e2
|
Switch to thin LTO; add Cargo profile release-debug
|
2022-04-04 12:32:42 +02:00 |
|
Joakim Frostegård
|
138ae710ef
|
udp: remove io_uring version, it is slower than mio version
|
2021-11-18 22:42:37 +01:00 |
|
Joakim Frostegård
|
4641dd29f2
|
udp: remove glommio implementation
|
2021-11-18 22:42:36 +01:00 |
|
Joakim Frostegård
|
ce1c0b24c3
|
udp: fix build failure; fix scripts/run-aquatic-udp.sh
|
2021-11-18 22:42:36 +01:00 |
|
Joakim Frostegård
|
03192d2afb
|
scripts: improve run-aquatic-udp.sh and run-aquatic-ws.sh
|
2021-11-07 13:30:42 +01:00 |
|
Joakim Frostegård
|
cff9b44a7f
|
move RUSTFLAGS gen to own file instead of setting in each script
|
2020-08-12 00:28:03 +02:00 |
|
Joakim Frostegård
|
118c2e446b
|
scripts: don't print RUSTFLAGS, causes issues when printing configs
|
2020-08-01 23:23:10 +02:00 |
|
Joakim Frostegård
|
0d8b6f6cc4
|
build scripts: disable avx512, since it decreases performance
|
2020-07-31 01:34:13 +02:00 |
|
Joakim Frostegård
|
1b8d74e26d
|
rename aquatic to aquatic_udp, same for bench and load test crates
|
2020-05-11 16:55:46 +02:00 |
|