In this talk, Nabil Bitar, Jamal Hadi Salim, Victor Nogueira and Pedro Tammela investigate the performance characteristics of two new high-performance application networking mechanisms in Linux: TCP devmem and IOURING zero copy.
While TCP devmem is designed for zero copy to/from network/accelerators (such as GPUs), in order to compare to IOURING, the authors look at it from the perspective of client-server application; in the case of devmem, copying to/from user memory (udmabuf). Both these techniques are new to the Linux world and are still not fully integrated into Linux proper at time of the study - making them both challenging to deal with (kernel bugs popping up for example) and a bit of a mystery to most application writers.
In addition to sharing the comparative results, the authors will shed some light for application writers to use these features.
cheers, jamal