Go to file
Tiwei Bie e5c494a7a2 vhost: batch small guest memory copies
This patch adaptively batches the small guest memory copies.
By batching the small copies, the efficiency of executing the
memory LOAD instructions can be improved greatly, because the
memory LOAD latency can be effectively hidden by the pipeline.
We saw great performance boosts for small packets PVP test.

This patch improves the performance for small packets, and has
distinguished the packets by size. So although the performance
for big packets doesn't change, it makes it relatively easy to
do some special optimizations for the big packets too.

Signed-off-by: Tiwei Bie <tiwei.bie@intel.com>
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Tested-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Acked-by: Yuanhan Liu <yliu@fridaylinux.org>
2017-10-10 15:48:53 +02:00
app app/testpmd: avoid pages being swapped out 2017-10-10 00:30:16 +01:00
buildtools buildtools: zero elf info variable in pmdinfogen 2017-09-14 14:20:41 +02:00
config config: add option to enable asserts 2017-10-09 23:15:45 +02:00
devtools devtools: fix version search with git < 2.7.0 2017-09-22 15:42:24 +02:00
doc doc: add use of mlockall to programmers guide 2017-10-10 00:41:08 +01:00
drivers net/virtio: replace magic number with PCI constant 2017-10-10 15:48:53 +02:00
examples xen: remove dependency in applications 2017-10-09 01:51:58 +02:00
lib vhost: batch small guest memory copies 2017-10-10 15:48:53 +02:00
mk net/xenvirt: remove 2017-10-09 01:11:48 +02:00
pkg eal: remove Xen dom0 support 2017-10-09 01:54:29 +02:00
test mem: fix malloc debug config 2017-10-09 23:15:45 +02:00
usertools update Cavium Inc copyright headers 2017-07-08 17:43:49 +02:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore devtools: add tags and cscope index generation 2017-04-30 12:57:04 +02:00
GNUmakefile mk: do not build tests by default 2017-02-28 16:04:18 +01:00
LICENSE.GPL doc: GPL/LGPL licenses 2013-07-25 14:43:06 +02:00
LICENSE.LGPL doc: fix file format (dos to unix) 2013-09-06 11:43:07 +02:00
MAINTAINERS eal: remove Xen dom0 support 2017-10-09 01:54:29 +02:00
Makefile remove trailing whitespaces 2014-06-11 00:29:34 +02:00
README doc: add readme file 2015-12-13 22:06:58 +01:00

DPDK is a set of libraries and drivers for fast packet processing.
It supports many processor architectures and both FreeBSD and Linux.

The DPDK uses the Open Source BSD license for the core libraries and
drivers. The kernel components are GPLv2 licensed.

Please check the doc directory for release notes,
API documentation, and sample application information.

For questions and usage discussions, subscribe to: users@dpdk.org
Report bugs and issues to the development mailing list: dev@dpdk.org