On 20/02/2024 11.17, Sebastian Andrzej Siewior wrote:
On 2024-02-20 10:17:53 [+0100], Jesper Dangaard Brouer wrote:
On 19/02/2024 20.01, Toke Høiland-Jørgensen wrote:
may be simpler to use pktgen, and at 10G rates that shouldn't become a
bottleneck either. The pktgen_sample03_burst_single_flow.sh script in
samples/pktgen in the kernel source tree is fine for this usage.
Example of running script:
./pktgen_sample03_burst_single_flow.sh -vi mlx5p1 -d 198.18.1.1 -m
ec:0d:9a:db:11:c4 -t 12
Notice the last parameter, which is number threads to start.
If you have a ixgbe NIC driver, then I recommend -t 2 even if you have more
CPUs.
I get
| Summary 8,435,690 rx/s 0 err/s
This seems low...
Have you remembered to disable Ethernet flow-control?
# ethtool -A ixgbe1 rx off tx off
# ethtool -A i40e2 rx off tx off
| Summary 8,436,294 rx/s 0 err/s
You want to see the "extended" info via cmdline (or Ctrl+\)
# xdp-bench drop -e eth1
with "-t 8 -b 64". I started with 2 and then increased until rx/s was
falling again. I have ixgbe on the sending side and i40e on the
With ixgbe on the sending side, my testlab shows I need -t 2.
With -t 2 :
Summary 14,678,170 rx/s 0 err/s
receive total 14,678,170 pkt/s 14,678,170 drop/s
0 error/s
cpu:1 14,678,170 pkt/s 14,678,170 drop/s
0 error/s
xdp_exception 0 hit/s
with -t 4:
Summary 10,255,385 rx/s 0 err/s
receive total 10,255,385 pkt/s 10,255,385 drop/s
0 error/s
cpu:1 10,255,385 pkt/s 10,255,385 drop/s
0 error/s
xdp_exception 0 hit/s
receiving side. I tried to receive on ixgbe but this ended with -ENOMEM
| # xdp-bench drop eth1
| Failed to attach XDP program: Cannot allocate memory
This is v6.8-rc5 on both sides. Let me see where this is coming from…
Another pitfall with ixgbe is that it does a full link reset when
adding/removing XDP prog on device. This can be annoying if connected
back-to-back, because "remote" pktgen will stop on link reset.
--Jesper