From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 452FAA0546; Thu, 16 Jul 2020 09:16:11 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 061131BE98; Thu, 16 Jul 2020 09:16:10 +0200 (CEST) Received: from inbox.dpdk.org (xvm-172-178.dc0.ghst.net [95.142.172.178]) by dpdk.org (Postfix) with ESMTP id AB9764F9A for ; Thu, 16 Jul 2020 09:16:08 +0200 (CEST) Received: by inbox.dpdk.org (Postfix, from userid 33) id 8374BA0548; Thu, 16 Jul 2020 09:16:08 +0200 (CEST) From: bugzilla@dpdk.org To: dev@dpdk.org Date: Thu, 16 Jul 2020 07:16:07 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: DPDK X-Bugzilla-Component: vhost/virtio X-Bugzilla-Version: 20.08 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: qimaix.xiao@intel.com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: Normal X-Bugzilla-Assigned-To: dev@dpdk.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform op_sys bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.dpdk.org/ Auto-Submitted: auto-generated X-Auto-Response-Suppress: All MIME-Version: 1.0 Subject: [dpdk-dev] [Bug 507] virtio perf decrease and interrupt abnormal X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" https://bugs.dpdk.org/show_bug.cgi?id=3D507 Bug ID: 507 Summary: virtio perf decrease and interrupt abnormal Product: DPDK Version: 20.08 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: Normal Component: vhost/virtio Assignee: dev@dpdk.org Reporter: qimaix.xiao@intel.com Target Milestone: --- ENV Info: DPDK version: dpdk20.08-rc1 commit fea5a82f5643901f8259bb1250acf53d6be4b9cb Other software versions: qemu/3.0 OS: ubuntu2004 Compiler: gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0 Hardware platform: Intel(R) Xeon(R) Gold 6139 CPU @ 2.30GHz NIC hardware: Fortville Spirit 40G. NIC firmware:=20 driver: i40e version: 2.8.20-k firmware-version: 6.80 0x80003cfb 1.2007.0 Test Steps: 1. Launch testpmd by below command:: rm -rf vhost-net* ./testpmd -l 1-2 -n 4 --socket-mem 1024,1024 --no-pci \ --vdev 'eth_vhost0,iface=3Dvhost-net,queues=3D1' -- \ -i --nb-cores=3D1 --txd=3D1024 --rxd=3D1024 testpmd>set fwd mac 2. Launch virtio-user by below command:: ./testpmd -n 4 -l 5-6 --socket-mem 1024,1024 \ --legacy-mem --no-pci --file-prefix=3Dvirtio \ =20=20=20 --vdev=3Dnet_virtio_user0,mac=3D00:01:02:03:04:05,path=3D./vhost-net,queues= =3D1,packed_vq=3D1,mrg_rxbuf=3D1,in_order=3D0 \ -- -i --nb-cores=3D1 --txd=3D1024 --rxd=3D1024 testpmd>set fwd mac testpmd>start 3. Send packets with vhost-testpmd,[frame_size] is the parameter changs in = [64, 1518]:: testpmd>set txpkts [frame_size] testpmd>start tx_first 32 4. Get throughput 10 times and calculate the average throughput:: testpmd>show port stats all 5. Check each RX/TX queue has packets, then quit testpmd:: testpmd>stop testpmd>quit 6. Launch testpmd by below command:: rm -rf vhost-net* ./testpmd -l 1-9 -n 4 --socket-mem 1024,1024 --no-pci \ --vdev 'eth_vhost0,iface=3Dvhost-net,queues=3D8' -- \ -i --nb-cores=3D8 --rxq=3D8 --txq=3D8 --txd=3D1024 --rxd=3D1024 testpmd>set fwd mac 7. Launch virtio-user by below command:: ./testpmd -n 4 -l 10-18 --socket-mem 1024,1024 \ --legacy-mem --no-pci --file-prefix=3Dvirtio \ =20=20=20 --vdev=3Dnet_virtio_user0,mac=3D00:01:02:03:04:05,path=3D./vhost-net,queues= =3D8,packed_vq=3D1,mrg_rxbuf=3D1,in_order=3D0 \ -- -i --nb-cores=3D8 --rxq=3D8 --txq=3D8 --txd=3D1024 --rxd=3D1024 testpmd>set fwd mac testpmd>start 8. Send packets with vhost-testpmd,[frame_size] is the parameter changs in = [64, 1518]:: testpmd>set txpkts [frame_size] testpmd>start tx_first 32 9. Get throughput 10 times and calculate the average throughput testpmd>show port stats all Test Result: throughput mpps of 8 queues performance decreased more than 15%(from about = 93 to 78), and not reach the 8 times of 1 queue as expected Expected: the throughput of 8 queues should be 8 times of 1 queue Issue introduced by commit: commit d0fcc38f5fa41778968b6f39777a61edb3aef813 Author: Matan Azrad Date: Mon Jun 29 14:08:18 2020 +0000 vhost: improve device readiness notifications Some guest drivers may not configure disabled virtio queues. In this case, the vhost management never notifies the application and the vDPA device readiness because it waits to the device to be ready. The current ready state means that all the virtio queues should be configured regardless the enablement status. In order to support this case, this patch changes the ready state: The device is ready when at least 1 queue pair is configured and enabled. So, now, the application and vDPA driver are notifies when the first queue pair is configured and enabled. Also the queue notifications will be triggered according to the new ready definition. Signed-off-by: Matan Azrad Reviewed-by: Maxime Coquelin Reviewed-by: Chenbo Xia --=20 You are receiving this mail because: You are the assignee for the bug.=