test suite reviews and discussions
 help / color / mirror / Atom feed
From: wang fei <feix.y.wang@intel.com>
To: dts@dpdk.org
Cc: yulong.pei@intel.com, wang fei <feix.y.wang@intel.com>
Subject: [dts] [DTS][PATCH V3 2/3]: test_plans/nic_single_core_perf_test_plan.rst: add test plan for nic_single_core_perf
Date: Tue, 30 Jan 2018 18:43:25 +0800	[thread overview]
Message-ID: <1517309005-25423-1-git-send-email-feix.y.wang@intel.com> (raw)

For next branch: add the test plan for the test suite nic_single_core_perf

Signed-off-by: wang fei <feix.y.wang@intel.com>
---
 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

             reply	other threads:[~2018-01-30  8:13 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-30 10:43 wang fei [this message]
2018-01-31  7:29 ` Liu, Yong

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=1517309005-25423-1-git-send-email-feix.y.wang@intel.com \
    --to=feix.y.wang@intel.com \
    --cc=dts@dpdk.org \
    --cc=yulong.pei@intel.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).