▲ | ozgrakkurt 2 days ago | |||||||||||||||||||||||||||||||||||||
You can apparently do 100gbit/sec on a single thread over ethernet with io uring. | ||||||||||||||||||||||||||||||||||||||
▲ | touisteur 2 days ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||
Recently did 400gb/s on a single core / 4x100gb nics (or just the one 400g nic, too) with dpdk. Mind you it's with jumbo frames and constant packet size for hundreds of mostly synchronized streams... You won't process each packet individually, mostly put them in queues for later batch-process by other cores. Amazing for data acquisition applications using UDP streams. I keep watching and trying io_uring and still can't make it work as fast with simple code as consistently for those use cases. AF_XDP gets me partly there but then you're writing ebpf... might as well go full-dpdk. Maybe it's a skill issue on my part, though. Or just a well-fitting niche. | ||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||
▲ | Kamillaova 2 days ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||
Of course, but when working directly with the NIC, such speeds can be achieved with smaller packets, getting even closer to the linerate. |