All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [Bug 1212] [dpdk-21.11.8]pvp_qemu_multi_paths_port_restart:perf_pvp_qemu_vector_rx_mac: performance drop about 23.5% when send small packets
Date: Fri, 07 Apr 2023 09:14:56 +0000	[thread overview]
Message-ID: <bug-1212-3@http.bugs.dpdk.org/> (raw)

[-- Attachment #1: Type: text/plain, Size: 6762 bytes --]

https://bugs.dpdk.org/show_bug.cgi?id=1212

            Bug ID: 1212
           Summary: [dpdk-21.11.8]pvp_qemu_multi_paths_port_restart:perf_p
                    vp_qemu_vector_rx_mac: performance drop about 23.5%
                    when send small packets
           Product: DPDK
           Version: 20.11
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: vhost/virtio
          Assignee: dev@dpdk.org
          Reporter: weix.ling@intel.com
  Target Milestone: ---

[Environment]

DPDK version: Use make showversion or for a non-released version: git remote -v
&& git show-ref --heads
 20.11.8-rc1
Other software versions: QEMU-7.0.0.
OS: Ubuntu 22.04.1 LTS/Linux 5.15.45-051545-generic
Compiler: gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04)
Hardware platform: Intel(R) Xeon(R) Platinum 8280M CPU @ 2.70GHz
NIC hardware: Intel Ethernet Controller XL710 for 40GbE QSFP+ 1583
NIC firmware: i40e-2.22.18/9.20 0x8000d893 1.3353.0

[Test Setup]
Steps to reproduce
List the steps to reproduce the issue.

1.Bind 1 NIC port to vfio-pci

dpdk-devbind.py --force --bind=vfio-pci 0000:af:00.0

2.Start vhost-user:

x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 28,29,30 -n 4 -a 0000:af:00.0 
--file-prefix=vhost_2352949_20230407162534  --vdev
'net_vhost0,iface=vhost-net,queues=1' -- -i --nb-cores=1 --txd=1024 --rxd=1024

testpmd>set fwd mac
testpmd>start

3.Start VM0 with QEMU-7.0.0

taskset -c 20,21,22,23,24,25,26,27 /home/QEMU/qemu-7.0.0/bin/qemu-system-x86_64
 -name vm0 -enable-kvm -pidfile /tmp/.vm0.pid -daemonize -monitor
unix:/tmp/vm0_monitor.sock,server,nowait -netdev
user,id=nttsip1,hostfwd=tcp:10.239.252.220:6000-:22 -device
e1000,netdev=nttsip1  -chardev socket,id=char0,path=./vhost-net -netdev
type=vhost-user,id=netdev0,chardev=char0,vhostforce -device
virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,disable-modern=true,mrg_rxbuf=off,rx_queue_size=1024,tx_queue_size=1024
-cpu host -smp 8 -m 16384 -object
memory-backend-file,id=mem,size=16384M,mem-path=/mnt/huge,share=on -numa
node,memdev=mem -mem-prealloc -chardev
socket,path=/tmp/vm0_qga0.sock,server,nowait,id=vm0_qga0 -device virtio-serial
-device virtserialport,chardev=vm0_qga0,name=org.qemu.guest_agent.0 -vnc :4
-drive file=/home/image/ubuntu2004.img

4.SSH VM0 and bind virtio-net to vfio-pci:

echo 0 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
echo 1024 >
/sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages
mkdir -p /mnt/huge
mount -t hugetlbfs nodev /mnt/hugemodprobe vfio-pci
echo 1 > /sys/module/vfio/parameters/enable_unsafe_noiommu_mode
dpdk-devbind.py --force --bind=vfio-pci 0000:00:04.0

5.Start testpmd in VM0:

x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x3 -n 3 -- -i --nb-cores=1
--txd=1024 --rxd=1024

testpmd>set fwd mac
testpmd>start

6.Use pktgen to send packets, and record the throughput.

Show the output from the previous commands.

+--------------+----------------------+------------------+------------+----------------+
| FrameSize(B) |         Mode         | Throughput(Mpps) | % linerate |    
Cycle      |
+==============+======================+==================+============+================+
| 64           | virtio0.95 vector_rx | 4.314            | 7.247      | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 128          | virtio0.95 vector_rx | 4.244            | 12.563     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 256          | virtio0.95 vector_rx | 4.576            | 25.262     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 512          | virtio0.95 vector_rx | 3.435            | 36.544     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 1024         | virtio0.95 vector_rx | 2.695            | 56.268     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 1280         | virtio0.95 vector_rx | 2.490            | 64.731     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 1518         | virtio0.95 vector_rx | 2.248            | 69.140     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+ 

[Expected Result]
Explain what is the expected result in text or as an example output:

+--------------+----------------------+------------------+------------+----------------+
| FrameSize(B) |         Mode         | Throughput(Mpps) | % linerate |    
Cycle      |
+==============+======================+==================+============+================+
| 64           | virtio0.95 vector_rx | 5.642            | 9.478      | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 128          | virtio0.95 vector_rx | 5.493            | 16.259     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 256          | virtio0.95 vector_rx | 5.004            | 27.620     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 512          | virtio0.95 vector_rx | 3.343            | 35.565     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 1024         | virtio0.95 vector_rx | 2.664            | 55.629     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 1280         | virtio0.95 vector_rx | 2.500            | 64.990     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+
| 1518         | virtio0.95 vector_rx | 2.309            | 71.028     | Before
Restart |
+--------------+----------------------+------------------+------------+----------------+ 
Regression
Is this issue a regression: (Y/N) Y

Version the regression was introduced: Specify git id if known.

Bad commit id:

commit abfe2cb0b40b3ceeb44df642c9d28a06bdfc9fb4 (HEAD)
Author: Luca Boccassi <bluca@debian.org>
Date:   Mon Nov 28 14:11:25 2022 +0000

    Revert "mempool: fix get objects from mempool with cache"

    As requested by the author

    This reverts commit 26cb4c81b552594292f7c744afb904f01700dfe8.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #2: Type: text/html, Size: 8771 bytes --]

             reply	other threads:[~2023-04-07  9:14 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-07  9:14 bugzilla [this message]
2023-04-11 15:53 ` [Bug 1212] [dpdk-20.11.8]pvp_qemu_multi_paths_port_restart:perf_pvp_qemu_vector_rx_mac: performance drop about 23.5% when send small packets bugzilla

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-1212-3@http.bugs.dpdk.org/ \
    --to=bugzilla@dpdk.org \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.