edc6391e45
The CQ polling is necessary in order to manage guest notifications when the guest doesn't work with poll mode (callfd != -1). The CQ polling scheduling method can affect the host CPU utilization and the traffic bandwidth. Define 3 modes to control the CQ polling scheduling: 1. A timer thread which automatically adjusts its delays to the coming traffic rate. 2. A timer thread with fixed delay time. 3. Interrupts: Each CQE burst arms the CQ in order to get an interrupt event in the next traffic burst. When traffic becomes off, mode 3 is taken automatically. The interrupt management takes a lot of CPU cycles but forward traffic event to the guest very fast. Timer thread save the interrupt overhead but may add delay for the guest notification. Add device arguments to control on the mode. Signed-off-by: Matan Azrad <matan@mellanox.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> |
||
---|---|---|
.ci | ||
app | ||
buildtools | ||
config | ||
devtools | ||
doc | ||
drivers | ||
examples | ||
kernel | ||
lib | ||
license | ||
mk | ||
usertools | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
ABI_VERSION | ||
GNUmakefile | ||
MAINTAINERS | ||
Makefile | ||
meson_options.txt | ||
meson.build | ||
README | ||
VERSION |
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-3-Clause license for the core libraries and drivers. The kernel components are GPL-2.0 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