XDP redirect max rate on Intel XL710

Federico Parola <[email protected]>
Newsgroups org.kernel.vger.xdp-newbies
Message-ID <[email protected]>
Hello everybody,
when I redirect packets between two ports of an Intel XL710 40Gb card 
(e.g. with the xdp_redirect_map example fo the kernel) I can not achieve 
throughputs higher than ~31 Mpps.
This NIC is not able to reach the theoretical ~60 Mpps with small 
packets ([1] p. 23) but with DPDK I'm able to achieve ~40 Mpps with the 
testpmd application and 2 cores.
In XDP when dropping packets I achieve more or less the same throughput 
with 3 cores, but I'm not able to exceed 31 Mpps when forwarding, no 
matter how many cores I use.
I tried tuning the size of the RX/TX rings and the DDIO occupancy but 
with no success. I can scale with the number of cores more linearly but 
as soon as I reach the 31 threshold cores usage decreases and throughput 
remains the same.
I don't know if this is just related to my setup or my specific NIC (I 
exprimented on kernels 5.11 and 5.9), does anybody know what the reason 
could be?

Best regards,
Federico Parola

[1] 
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&ved=2ahUKEwicv__o6_jvAhWUwQIHHQtpBu8QFjABegQIBhAD&url=https%3A%2F%2Fwww.intel.com%2Fcontent%2Fdam%2Fwww%2Fpublic%2Fus%2Fen%2Fdocuments%2Fspecification-updates%2Fxl710-10-40-controller-spec-update.pdf&usg=AOvVaw27anCuRwRX25h8Dg3epgoy
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.