2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-22 18:07:40 +00:00
ovs/lib/dpdk-unixctl.man
David Marchand b84386fa9a dpdk: Support running PMD threads on any core.
Previously in OVS, a PMD thread running on cpu X used lcore X.
This assumption limited OVS to run PMD threads on physical cpu <
RTE_MAX_LCORE.

DPDK 20.08 introduced a new API that associates a non-EAL thread to a free
lcore. This new API does not change the thread characteristics (like CPU
affinity) and let OVS run its PMD threads on any cpu regardless of
RTE_MAX_LCORE.

The DPDK multiprocess feature is not compatible with this new API and is
disabled.

DPDK still limits the number of lcores to RTE_MAX_LCORE (128 on x86_64)
which should be enough for OVS pmd threads (hopefully).

DPDK lcore/OVS pmd threads mapping are logged at threads when trying to
attach a OVS PMD thread, and when detaching.
A new command is added to help get DPDK point of view of the DPDK lcores
at any time:

$ ovs-appctl dpdk/lcore-list
lcore 0, socket 0, role RTE, cpuset 0
lcore 1, socket 0, role NON_EAL, cpuset 1
lcore 2, socket 0, role NON_EAL, cpuset 15

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Kevin Traynor <ktraynor@redhat.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
2022-01-11 21:34:56 +01:00

20 lines
951 B
Groff

.SS "DPDK COMMANDS"
These commands manage DPDK components.
.IP "\fBdpdk/lcore-list\fR"
Lists the DPDK lcores and their cpu affinity.
When RTE_MAX_LCORE lcores are registered, some OVS PMD threads won't appear.
.IP "\fBdpdk/log-list\fR"
Lists all DPDK components that emit logs and their logging levels.
.IP "\fBdpdk/log-set\fR [\fIspec\fR]"
Sets DPDK components logging level. Without any \fIspec\fR, sets the logging
\fBlevel\fR for all DPDK components to \fBdebug\fR. Otherwise, \fIspec\fR is a
list of words separated by spaces: a word can be either a logging \fBlevel\fR
(\fBemergency\fR, \fBalert\fR, \fBcritical\fR, \fBerror\fR, \fBwarning\fR,
\fBnotice\fR, \fBinfo\fR or \fBdebug\fR) or a \fBpattern\fR matching DPDK
components (see \fBdpdk/log-list\fR command on \fBovs\-appctl\fR(8)) separated
by a colon from the logging \fBlevel\fR to apply.
.IP "\fBdpdk/get-malloc-stats\fR"
Prints the heap information statistics about DPDK malloc.
.RE
.