numam-dpdk/lib/librte_pmd_vmxnet3
Yong Wang 2e84937377 vmxnet3: leverage data ring on Tx path
Data_ring is a pre-mapped guest ring buffer that vmxnet3
backend has access to directly without a need for buffer
address mapping and unmapping during packet transmission.
It is useful in reducing device emulation cost on the tx
path.  There are some additional cost though on the guest
driver for packet copy and overall it's a win.

This patch leverages the data_ring for packets with a
length less than or equal to the data_ring entry size
(128B).  For larger packet, we won't use the data_ring
as that requires one extra tx descriptor and it's not
clear if doing this will be beneficial.

Performance results show that this patch significantly
boosts vmxnet3 64B tx performance (pkt rate) for l2fwd
application on a Ivy Bridge server by >20% at which
point we start to hit some bottleneck on the rx side.

Signed-off-by: Yong Wang <yongwang@vmware.com>
2014-11-14 17:32:27 +01:00
..
vmxnet3 remove trailing whitespaces 2014-06-11 00:29:34 +02:00
Makefile vmxnet3/base: disable some clang warnings 2014-07-19 01:54:15 +02:00
vmxnet3_ethdev.c vmxnet3: leverage data ring on Tx path 2014-11-14 17:32:27 +01:00
vmxnet3_ethdev.h vmxnet3: remove useless adapter wrapper 2014-07-22 16:40:55 +02:00
vmxnet3_logs.h remove trailing whitespaces 2014-06-11 00:29:34 +02:00
vmxnet3_ring.h vmxnet3: leverage data ring on Tx path 2014-11-14 17:32:27 +01:00
vmxnet3_rxtx.c vmxnet3: leverage data ring on Tx path 2014-11-14 17:32:27 +01:00