From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2C38541CAE; Thu, 16 Feb 2023 09:41:50 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 21F9C410F1; Thu, 16 Feb 2023 09:41:50 +0100 (CET) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mails.dpdk.org (Postfix) with ESMTP id 3412640E0F for ; Thu, 16 Feb 2023 09:41:48 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676536908; x=1708072908; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=4RKDpO+CWycMi75exnWa5ZHNrZjOXQFT/FBRb/5HjFA=; b=L2ZX4FEioNz2RKqXyrwuQLy6DccKiY6tfwUfq6xlsDpz6Nn06uT20kek 0Fv13Kz2p+NhPa7Sk+wctXi0Pi6ETbp3S7LSBFF+yyRa/pFKIhmwjAAXs VQNMMpOMJvgUQkEbRN+Xw0h0emalUVdRxmNdzpH80NTLa0rC6juUnH9fT YTdyDV51/75vZcEMCFs5NHk0Ch9+iK//VC52OkQD1bpfM+XCmVs8f/Leq 4mtjhl53TKtRQRWWb0FKLAcvJveG3hcldeUwEkHm6H9KRg3Ile1OosWeS fLQUqWZ7REGdzts2e2cPkyJRUw3nu1b5gELfqcgawfVnGTmrTFnp79v0W A==; X-IronPort-AV: E=McAfee;i="6500,9779,10622"; a="329382350" X-IronPort-AV: E=Sophos;i="5.97,301,1669104000"; d="scan'208";a="329382350" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 00:41:26 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10622"; a="793948442" X-IronPort-AV: E=Sophos;i="5.97,301,1669104000"; d="scan'208";a="793948442" Received: from unknown (HELO localhost.localdomain) ([10.239.252.222]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 00:41:24 -0800 From: Wei Ling To: dts@dpdk.org Cc: Wei Ling Subject: [dts][PATCH V4 2/4] test_plans/pvp_vhost_async_multi_paths_performance_dsa: add new testplan Date: Thu, 16 Feb 2023 16:27:59 +0800 Message-Id: <20230216082759.1026272-1-weix.ling@intel.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Add pvp_vhost_async_multi_paths_performance_dsa testplan to test pvp vhost/virtio multi-paths async data-path performance use DSA device with dpdk and kernel driver. Signed-off-by: Wei Ling --- ..._multi_paths_performance_dsa_test_plan.rst | 586 ++++++++++++++++++ 1 file changed, 586 insertions(+) create mode 100644 test_plans/pvp_vhost_async_multi_paths_performance_dsa_test_plan.rst diff --git a/test_plans/pvp_vhost_async_multi_paths_performance_dsa_test_plan.rst b/test_plans/pvp_vhost_async_multi_paths_performance_dsa_test_plan.rst new file mode 100644 index 00000000..18535c4a --- /dev/null +++ b/test_plans/pvp_vhost_async_multi_paths_performance_dsa_test_plan.rst @@ -0,0 +1,586 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright(c) 2023 Intel Corporation + +================================================================== +PVP vhost/virtio multi-paths async data-path performance test plan +================================================================== + +Benchmark PVP multi-paths performance with 10 tx/rx paths when vhost uses the asynchronous operation. Includes mergeable, +non-mergeable, vectorized_rx, inorder mergeable, inorder non-mergeable, packed ring mergeable, packed ring non-mergeableļ¼Œ +packed ring inorder mergeable, packed ring inorder non-mergeable, virtio1.1 vectorized path. Give 1 core for vhost and virtio +respectively. Packed ring vectorized path need: + + AVX512 and required extensions are supported by compiler and host + VERSION_1 and IN_ORDER features are negotiated + mergeable feature is not negotiated + LRO offloading is disabled + +Split ring vectorized rx path need: + mergeable and IN_ORDER features are not negotiated + LRO, chksum and vlan strip offloadings are disabled + +Test flow +========= + +TG --> NIC --> Vhost --> Virtio--> Vhost --> NIC --> TG + +Test Case 1: pvp vhost async test with split ring inorder mergeable path using IDXD kernel driver +------------------------------------------------------------------------------------------------- + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,mrg_rxbuf=1,in_order=1 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 2: pvp vhost async test with split ring inorder non-mergeable path using IDXD kernel driver +----------------------------------------------------------------------------------------------------- + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-4 -a 0000:27:00.0 -a wq0.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,in_order=1,mrg_rxbuf=0 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 3: pvp vhost async test with split ring mergeable path using IDXD kernel driver +----------------------------------------------------------------------------------------- + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + rm -rf vhost-net* + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-4 -a 0000:27:00.0 -a wq0.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,in_order=0,mrg_rxbuf=1 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 4: pvp vhost async test with split ring non-mergeable path using IDXD kernel driver +--------------------------------------------------------------------------------------------- + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-4 -a 0000:27:00.0 -a wq0.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,in_order=0,mrg_rxbuf=0,vectorized=1 \ + -- -i --rx-offloads=0x10 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 5: pvp vhost async test with split ring vectorized path using IDXD kernel driver +------------------------------------------------------------------------------------------ + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-4 -a 0000:27:00.0 -a wq0.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,in_order=0,mrg_rxbuf=0,vectorized=1 \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 6: pvp vhost async test with packed ring inorder mergeable path using IDXD kernel driver +-------------------------------------------------------------------------------------------------- + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a wq0.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=1,in_order=1 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 7: pvp vhost async test with packed ring inorder non-mergeable path using IDXD kernel driver +------------------------------------------------------------------------------------------------------ + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a wq0.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=0,in_order=1 \ + -- -i --rx-offloads=0x10 --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 8: pvp vhost async test with packed ring mergeable path using IDXD kernel driver +------------------------------------------------------------------------------------------ + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a wq0.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=1,in_order=0 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 9: pvp vhost async test with packed ring non-mergeable path using IDXD kernel driver +---------------------------------------------------------------------------------------------- + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a wq0.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=0,in_order=0 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 10: pvp vhost async test with packed ring vectorized path using IDXD kernel driver +-------------------------------------------------------------------------------------------- + +1. Bind one nic port to vfio-pci and 1 dsa device to idxd, then generate 1wq by below command:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 + ./usertools/dpdk-devbind.py -b idxd 0000:6a:01.0 + ./drivers/dma/idxd/dpdk_idxd_cfg.py -q 2 0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a wq0.0 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@wq0.0;rxq0@wq0.1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio --force-max-simd-bitwidth=512 \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1 \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 11: pvp vhost async test with split ring inorder mergeable path using vfio-pci driver +----------------------------------------------------------------------------------------------- + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,mrg_rxbuf=1,in_order=1 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 12: pvp vhost async test with split ring inorder non-mergeable path using vfio-pci driver +--------------------------------------------------------------------------------------------------- + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,in_order=1,mrg_rxbuf=0 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 13: pvp vhost async test with split ring mergeable path using vfio-pci driver +--------------------------------------------------------------------------------------- + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,in_order=0,mrg_rxbuf=1 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 14: pvp vhost async test with split ring non-mergeable path using vfio-pci driver +------------------------------------------------------------------------------------------- + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,in_order=0,mrg_rxbuf=0,vectorized=1 \ + -- -i --rx-offloads=0x10 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 15: pvp vhost async test with split ring vectorized_rx path using vfio-pci driver +------------------------------------------------------------------------------------------- + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,in_order=0,mrg_rxbuf=0,vectorized=1 \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 16: pvp vhost async test with packed ring inorder mergeable path using vfio-pci driver +------------------------------------------------------------------------------------------------ + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=1,in_order=1 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 17: pvp vhost async test with packed ring inorder non-mergeable path using vfio-pci driver +---------------------------------------------------------------------------------------------------- + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=0,in_order=1 \ + -- -i --rx-offloads=0x10 --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 18: pvp vhost async test with packed ring mergeable path using vfio-pci driver +---------------------------------------------------------------------------------------- + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=1,in_order=0 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 19: pvp vhost async test with packed ring non-mergeable path using vfio-pci driver +-------------------------------------------------------------------------------------------- + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=0,in_order=0 \ + -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all + +Test Case 20: pvp vhost async test with packed ring vectorized path using vfio-pci driver +----------------------------------------------------------------------------------------- + +1. Bind one nic port and 1 dsa device to vfio-pci:: + + ./usertools/dpdk-devbind.py -b vfio-pci 0000:27:00.0 0000:6f:01.0 + +2. Launch vhost by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 2-3 -a 0000:27:00.0 -a 0000:6f:01.0,max_queues=2 \ + --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,dmas=[txq0@0000:6f:01.0-q0;rxq0@0000:6f:01.0-q1]' \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +3. Launch virtio-user by below command:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio --force-max-simd-bitwidth=512 \ + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1 \ + -- -i --nb-cores=1 --txd=1024 --rxd=1024 + testpmd>set fwd mac + testpmd>start + +4. Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:: + + testpmd>show port stats all -- 2.25.1