From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id 164A3A045E for ; Fri, 31 May 2019 08:54:11 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DACFC2C60; Fri, 31 May 2019 08:54:10 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 6C1AF2C55 for ; Fri, 31 May 2019 08:54:09 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x4V6oSra018493 for ; Thu, 30 May 2019 23:54:08 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : mime-version : content-type; s=pfpt0818; bh=P1scUwzbuqEOYhIN3vtxrQwbmj0bQaGVUszYy2SMY2g=; b=wQF3zuNKLiMkb9qhzOaNXJCHje7SAo2BkkAsaEmTF5CyN9/rtFifvANYOqDyb6EMNYMP 9m6crH6Qr2ezh07S+Gidms9/OecyNl4RhnVB7oOYVeK1VwYbWUGMBDhOovtAeIIoJse2 HZ2YmTpXJtmS2XvHhiRo2wzxxd8kCy3T+d4clXRPTMUN24OsmwVFssIw3edj7MAh+Ih2 BRnshMlRB1I6b6zEB4GnFb3AS+WwVQKXFWzjYAVmSKThHB5L6bOIbsVasO9yF7qoADah OKC6HpS5ps500Ty49bv01Rrds61UWYa/bM5lAEO8KM9g8rH2nOFccofMp+YaHTs+reo+ Kw== Received: from sc-exch04.marvell.com ([199.233.58.184]) by mx0a-0016f401.pphosted.com with ESMTP id 2sttf112k7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Thu, 30 May 2019 23:54:07 -0700 Received: from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Thu, 30 May 2019 23:54:07 -0700 Received: from maili.marvell.com (10.93.176.43) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server id 15.0.1367.3 via Frontend Transport; Thu, 30 May 2019 23:54:07 -0700 Received: from thaq.marvell.com (unknown [10.28.10.232]) by maili.marvell.com (Postfix) with ESMTP id 00D223F7043; Thu, 30 May 2019 23:54:05 -0700 (PDT) From: To: CC: , , , Thanseerulhaq Date: Fri, 31 May 2019 12:23:35 +0530 Message-ID: <1559285615-15090-1-git-send-email-thaq@marvell.com> X-Mailer: git-send-email 1.8.3.1 MIME-Version: 1.0 Content-Type: text/plain X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-05-31_03:, , signatures=0 Subject: [dts] [PATCH] eventdev_perf_test_plan.rst: Adding Eventdev feature performance Testplan X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 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 Sender: "dts" From: Thanseerulhaq Adding testcase for 1/2/4 NIC ports for eventdev features atomic, parallel, order stages. Signed-off-by: Thanseerulhaq --- test_plans/eventdev_perf_test_plan.rst | 276 +++++++++++++++++++++++++++++++++ 1 file changed, 276 insertions(+) create mode 100644 test_plans/eventdev_perf_test_plan.rst diff --git a/test_plans/eventdev_perf_test_plan.rst b/test_plans/eventdev_perf_test_plan.rst new file mode 100644 index 0000000..ed1312a --- /dev/null +++ b/test_plans/eventdev_perf_test_plan.rst @@ -0,0 +1,276 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright (C) 2019 Marvell International Ltd. + +============== +Eventdev Tests +============== + +Prerequisites +============== + +Each of the 10Gb/25Gb/40Gb/100Gb Ethernet* ports of the DUT is directly connected in +full-duplex to a different port of the peer Ixia ports(traffic generator). + +Using TCL commands, the Ixia can be configured to send and receive traffic on a given set of ports. + +If using vfio the kernel must be >= 3.6+ and VT-d must be enabled in bios.When +using vfio, use the following commands to load the vfio driver and bind it +to the device under test :: + + modprobe vfio + modprobe vfio-pci + usertools/dpdk-devbind.py --bind=vfio-pci device_bus_id + usertools/dpdk-devbind.py --bind=vfio-pci eventdev_device_bus_id + +Create huge pages +================= +mkdir -p /dev/huge +mount -t hugetlbfs none /dev/huge +echo 24 > /proc/sys/vm/nr_hugepages + +Configure limits of Eventdev devices +==================================== +Set all eventdev devices sso and ssow limits to zero. Then set eventdev device under tests sso and ssow limits to non-zero values as per cores/queues requriments :: + echo 0 > /sys/bus/pci/devices/eventdev_device_bus_id/limits/sso + echo 0 > /sys/bus/pci/devices/eventdev_device_bus_id/limits/ssow + +Example :: + echo 0 > /sys/bus/pci/devices/eventdev_device_bus_id/limits/tim + echo 1 > /sys/bus/pci/devices/eventdev_device_bus_id/limits/npa + echo 16 > /sys/bus/pci/devices/eventdev_device_bus_id/limits/sso + echo 32 > /sys/bus/pci/devices/eventdev_device_bus_id/limits/ssow + +- ``eventdev_device_bus_id/limits/sso`` : Max limit `256` +- ``eventdev_device_bus_id/limits/ssow``: Max limit `52` + +Test Case: Performance 1port atomic_atq test +============================================= +Description: Execute performance test with Atomic_atq type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=A --wlcores=23 + + Parameters: + -l CORELIST : List of cores to run on + The argument format is [-c2][,c3[-c4],...] + where c1, c2, etc are core indexes between 0 and 24 + -w --pci-whitelist : Add a PCI device in white list. + Only use the specified PCI devices. The argument format + is <[domain:]bus:devid.func>. This option can be present + several times (once per device). + --prod_type_ethdev : use ethernet device as producer. + --nb_pkts : number of packets to produce, 0 implies no limit + --test : name of the test application to run + --stlist : list of scheduled types of the stages + --wlcores : list of lcore ids for workers + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 1port parallel_atq test +============================================== +Description: Execute performance test with Parallel_atq type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=P --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 1port ordered_atq test +============================================= +Description: Execute performance test with Ordered_atq type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=O --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 1port atomic_queue test +============================================== +Description: Execute performance test with Atomic_queue type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=A --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 1port parallel_queue test +================================================ +Description: Execute performance test with Parallel_queue type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=P --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 1port ordered_queue test +=============================================== +Description: Execute performance test with Ordered_queue type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=O --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 2port atomic_atq test +============================================= +Description: Execute performance test with Atomic_atq type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=A --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 2port parallel_atq test +============================================== +Description: Execute performance test with Parallel_atq type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=P --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 2port ordered_atq test +============================================= +Description: Execute performance test with Ordered_atq type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=O --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 2port atomic_queue test +============================================== +Description: Execute performance test with Atomic_queue type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=A --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 2port parallel_queue test +================================================ +Description: Execute performance test with Parallel_queue type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=P --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 2port ordered_queue test +=============================================== +Description: Execute performance test with Ordered_queue type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=O --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + + +Test Case: Performance 4port atomic_atq test +============================================= +Description: Execute performance test with Atomic_atq type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -w device2_bus_id -w device3_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=A --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 4port parallel_atq test +============================================== +Description: Execute performance test with Parallel_atq type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -w device2_bus_id -w device3_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=P --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 4port ordered_atq test +============================================= +Description: Execute performance test with Ordered_atq type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -w device2_bus_id -w device3_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=O --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 4port atomic_queue test +============================================== +Description: Execute performance test with Atomic_queue type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -w device2_bus_id -w device3_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=A --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 4port parallel_queue test +================================================ +Description: Execute performance test with Parallel_queue type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -w device2_bus_id -w device3_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=P --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + +Test Case: Performance 4port ordered_queue test +=============================================== +Description: Execute performance test with Ordered_queue type of stage in multi-flow situation for various cores. + +1. Run the sample with below command:: + + # ./build/dpdk-test-eventdev -l 22-23 -w eventdev_device_bus_id -w device0_bus_id -w device1_bus_id -w device2_bus_id -w device3_bus_id -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_queue --stlist=O --wlcores=23 + +2. Use Ixia to send huge number of packets(with same 5-tuple and different 5-tuple) + +3. Observe the speed of packets received(Rx-rate) on Ixia. + -- 1.8.3.1