]> git.droids-corp.org - dpdk.git/commit
net/iavf: remove extra copy step in Rx bulk path
authorKathleen Capella <kathleen.capella@arm.com>
Thu, 24 Mar 2022 22:11:32 +0000 (22:11 +0000)
committerQi Zhang <qi.z.zhang@intel.com>
Fri, 22 Apr 2022 12:04:17 +0000 (14:04 +0200)
commitbfb15b04277a9c6afbf72e233b47441bd76cedb1
tree1c449a94f18537c982c585186a891506bbaca1d7
parent848de9572c83142e989394a699064d728eb892c3
net/iavf: remove extra copy step in Rx bulk path

In the Rx bulk path, packets which are taken from the HW ring, are first
copied to the stage data structure and then later copied from the stage
to the rx_pkts array. For the number of packets requested immediately
by the receiving function, this two-step process adds extra overhead
that is not necessary.

Instead, put requested number of packets directly into the rx_pkts array
and only stage excess packets. On N1SDP with 1 core/port, l3fwd saw up
to 4% performance improvement. On x86, no difference in performance was
observed.

Signed-off-by: Kathleen Capella <kathleen.capella@arm.com>
Suggested-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
drivers/net/iavf/iavf_rxtx.c