On 10/16/24 08:30, Philo Lu wrote:
On 2024/10/14 18:07, Paolo Abeni wrote:
It would be great if you could please share some benchmark showing the
raw max receive PPS performances for unconnected sockets, with and
without this series applied, to ensure this does not cause any real
regression for such workloads.
Tested using sockperf tp with default msgsize (14B), 3 times for w/ and
w/o the patch set, and results show no obvious difference:
[msg/sec] test1 test2 test3 mean
w/o patch 514,664 519,040 527,115 520.3k
w/ patch 516,863 526,337 527,195 523.5k (+0.6%)
Thank you for review, Paolo.
Are the value in packet per seconds, or bytes per seconds? Are you doing a loopback test or over the wire? The most important question is: is the receiver side keeping (at least) 1 CPU fully busy? Otherwise the test is not very relevant.
It looks like you have some setup issue, or you are using a relatively low end H/W: the expected packet rate for reasonable server H/W is well above 1M (possibly much more than that, but I can't put my hands on recent H/W, so I can't provide a more accurate figure).
A single socket, user-space, UDP sender is usually unable to reach such tput without USO, and even with USO you likely need to do an over-the- wire test to really be able to keep the receiver fully busy. AFAICS sockperf does not support USO for the sender.
You could use the udpgso_bench_tx/udpgso_bench_rx pair from the net selftests directory instead.