From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id EBEE41B36E for ; Tue, 30 Jan 2018 09:13:57 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Jan 2018 00:13:57 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,433,1511856000"; d="scan'208";a="199727168" Received: from dpdk-test47.sh.intel.com ([10.67.118.152]) by fmsmga005.fm.intel.com with ESMTP; 30 Jan 2018 00:13:56 -0800 From: wang fei To: dts@dpdk.org Cc: yulong.pei@intel.com, wang fei Date: Tue, 30 Jan 2018 18:43:25 +0800 Message-Id: <1517309005-25423-1-git-send-email-feix.y.wang@intel.com> X-Mailer: git-send-email 2.7.4 Subject: [dts] [DTS][PATCH V3 2/3]: test_plans/nic_single_core_perf_test_plan.rst: add test plan for nic_single_core_perf 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: , X-List-Received-Date: Tue, 30 Jan 2018 08:13:59 -0000 For next branch: add the test plan for the test suite nic_single_core_perf Signed-off-by: wang fei --- test_plans/nic_single_core_perf_test_plan.rst | 116 ++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 test_plans/nic_single_core_perf_test_plan.rst diff --git a/test_plans/nic_single_core_perf_test_plan.rst b/test_plans/nic_single_core_perf_test_plan.rst new file mode 100644 index 0000000..ec67ad4 --- /dev/null +++ b/test_plans/nic_single_core_perf_test_plan.rst @@ -0,0 +1,116 @@ +.. Copyright (c) <2016>, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + - Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + +========================================================================== +Benchmark the performance of single core forwarding with FVL25G/40G/NNT10G +========================================================================== + +Prerequisites +============= + +1. Hardware: + 1) nic_single_core_perf test for FVL25G: two dual port FVL25G nics , all installed on the same socket, pick one port per nic + 2) nic_single_core_perf test for FVL40G: two dual port FVL40G nics , all installed on the same socket, pick one port per nic + 3) nic_single_core_perf test for NNT10G : four 82599 nics, all installed on the same socket, pick one port per nic + +2. Software: + dpdk: git clone http://dpdk.org/git/dpdk + scapy: http://www.secdev.org/projects/scapy/ + dts (next branch): git clone http://dpdk.org/git/tools/dts, then "git checkout next" + Trex source code: http://trex-tgn.cisco.com/trex/release/v2.26.tar.gz + python-prettytable(uesed to output the test result matrix as a separate .txt file): + apt install python-prettytable (for ubuntu os) + or dnf install python-prettytable (for fedora os). + +3. Connect all the selected nic ports to traffic generator(IXIA,TREX,PKTGEN) ports(TG ports). + 2 TG 25g ports for FVL25G ports + 2 TG 40g ports for FVL40G ports + 4 TG 10g ports for 4 NNT10G ports + +Test Case : nic_single_core_perf +================================== +1) Bind tested ports to igb_uio + +2) Start testpmd:: + + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0x6 -n 4 -- -i --portmask=0xf --txd=128 --rxd=128 + testpmd> start + +3) Configure traffic generator to send traffic + configure one below stream for each TG port + dst mac: peer nic port mac + src ip : random + dst ip : random + packet length : 64 byte + +4) check throughput and compare it with the expected value. + +5) for NNT10G, repeat above step 1-4 for txd=rxd=512,2048 separately. + for FVL25G and FVL40G nic, just test txd=rxd=512,2048 following above steps 1-4. + +6) print out below test results table for NNT10G, FVL25G, FVL40G separately + FVL40G: ++------------+---------+------------+------------+---------------------+ +| Frame Size | txd/rxd | Throughput | Rate | Expected throughput | ++============+=========+============+============+=====================+ +| 64 | 512 | xxxxxx | xxx % | xxx Mpps | ++------------+---------+------------+------------+---------------------+ +| 64 | 2048 | xxxxxx | xxx % | xxx Mpps | ++------------+---------+------------+------------+---------------------+ + + FVL25G: ++------------+---------+-------------+---------+---------------------+ +| Frame Size | TXD/RXD | Throughput | Rate | Expected Throughput | ++------------+---------+-------------+---------+---------------------+ +| 64 | 512 | xxxxxx Mpps | xxx % | xxx Mpps | +| 64 | 2048 | xxxxxx Mpps | xxx % | xxx Mpps | ++------------+---------+-------------+---------+---------------------+ + + for NNT10G: ++------------+---------+-------------+---------+---------------------+ +| Frame Size | TXD/RXD | Throughput | Rate | Expected Throughput | ++------------+---------+-------------+---------+---------------------+ +| 64 | 128 | xxxxxx Mpps | xxx % | xxx Mpps | +| 64 | 512 | xxxxxx Mpps | xxx % | xxx Mpps | +| 64 | 2048 | xxxxxx Mpps | xxx % | xxx Mpps | ++------------+---------+-------------+---------+---------------------+ + +Note : The values for the Expected throughput may vary due to different platform and OS, and traffic generator, + please correct thest values accordingly. (the above FVL 25G and NNT10G expected throughput values + were got from the combination of Purly,Ubuntu 16.04, and traffic generator IXIA, and the FVL40G + expected throughput value was got from the combination of Broadwell,Ubuntu 16.04, and traffic + generator IXIA) + +Case assert failure if the actual throughputs lower exceed 1 Mpps than the expected throughput. + + + -- 2.7.4