DPDK with OVS cannot allocate CPU on different socket/processor
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
dpdk (Ubuntu) |
Expired
|
Undecided
|
Unassigned |
Bug Description
Procedure is almost same as https:/
OS: Ubuntu 17.10 , update to latest version
Hardware : ThunderX 2S System (Gigabyte R150)
Reproduce procedure
====
DPDKDEV1=
DPDKDEV2=
dpdk-devbind -b vfio-pci $DPDKDEV1
dpdk-devbind -b vfio-pci $DPDKDEV2
sysctl -w vm.nr_hugepages=24
umount /dev/hugepages
mount -t hugetlbfs none /dev/hugepages
grep HugePages_ /proc/meminfo
pkill ovs
sleep 5
rm -rf /etc/openvswitch/*
rm -rf /var/run/
rm -rf /var/log/
ovsdb-tool create /etc/openvswitc
ovsdb-server --remote=
ovs-vsctl --no-wait set Open_vSwitch . other_config:
ovs-vsctl --no-wait set Open_vSwitch . other_config:
ovs-vsctl --no-wait init
TXQ=2 ovs-vswitchd --pidfile --detach --log-file
ovs-vsctl del-br br0
ovs-vsctl --log-file=
ovs-vsctl add-port br0 dpdk0 -- set Interface dpdk0 type=dpdk options:
ovs-vsctl add-port br0 dpdk1 -- set Interface dpdk1 type=dpdk options:
ovs-ofctl add-flow br0 in_port=
ovs-ofctl add-flow br0 in_port=
ovs-vsctl set Open_vSwitch . other_config:
ovs-vsctl set Interface dpdk0 options:n_rxq=2
ovs-vsctl set Interface dpdk1 options:n_rxq=2
====
if replace pmd-cpu-mask=0x6 with pmd-cpu-
Only two CPU works
example htop result. it should have two 100% loading CPU on 5/6. but only have two CPUs totally.
https:/
Hi,
that is most interesting.
I never tried to go across a node on PMD assignments.
Are you able to check the cpu masks of the processes/threads it spawned?
I need to reproduce this to fully check this, but this will need a while as I'm soon on vacation and likely don't get to this before.
If you have that cgroup data that would be great.