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 ( 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 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