On 9/26/22 1:08 PM, Pavel Begunkov wrote: > Tried it out, the branch below fixes a small problem, adds a couple > of extra optimisations and now it actually uses registered buffers. > > https://github.com/isilence/iperf iou-sendzc thanks for the patch; will it pull it in. > > Still, the submission loop looked a bit weird, i.e. it submits I/O > to io_uring only when it exhausts sqes instead of sending right > away with some notion of QD and/or sending in batches. The approach > is good for batching (SQ size =16 here), but not so for latency. > > I also see some CPU cycles being burnt in select(2). io_uring wait > would be more natural and perhaps more performant, but I didn't > spend enough time with iperf to say for sure. ok. It will be a while before I have time to come back to it. In the meantime it seems like some io_uring changes happened between your dev branch and what was merged into liburing (compile worked on your branch but fails with upstream). Is the ZC support in liburing now?