test suite reviews and discussions
 help / color / mirror / Atom feed
From: han yingya <yingyax.han@intel.com>
To: dts@dpdk.org
Cc: han yingya <yingyax.han@intel.com>
Subject: [dts] [PATCH V2]test_plan/vf_l3fwd: add vf l3fwd performance test plan
Date: Wed,  8 May 2019 09:51:53 +0000	[thread overview]
Message-ID: <20190508095153.30098-1-yingyax.han@intel.com> (raw)

Signed-off-by: han yingya <yingyax.han@intel.com>
---
 test_plans/vf_l3fwd_test_plan.rst | 177 ++++++++++++++++++++++++++++++
 1 file changed, 177 insertions(+)
 create mode 100644 test_plans/vf_l3fwd_test_plan.rst

diff --git a/test_plans/vf_l3fwd_test_plan.rst b/test_plans/vf_l3fwd_test_plan.rst
new file mode 100644
index 0000000..f56a904
--- /dev/null
+++ b/test_plans/vf_l3fwd_test_plan.rst
@@ -0,0 +1,177 @@
+.. Copyright (c) <2019>, 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.
+
+
+==================================
+VF L3 Forwarding Performance Tests
+==================================
+
+This document provides benchmark test for NIC VFs which are created from
+kernel PFs or DPDK PFs. These tests use l3fwd as a simple forwarder
+between NIC vfs. The goal of this test plan is to have a tested benchmark
+between NIC vfs.
+
+
+Prerequisites
+==============
+
+* Hardware requirements:
+
+  * XL710, XXV710: 2 ports from 2 NICs, 1 port per NIC, 2 cores & 2 queues per VF.
+
+    ::
+
+      +------------------------------+
+      |  DUT           |  TESTER     |
+      +==============================+
+      | NIC-1,Port-1  ---  TG,Port-1 |
+      | NIC-2,Port-1  ---  TG,Port-2 |
+      +------------------------------+
+
+
+  * X710: 4 ports from 1 NIC, 1 core 1 queues per port.
+
+    ::
+
+      +------------------------------+
+      |  DUT           |  TESTER     |
+      +==============================+
+      | NIC-1,Port-1  ---  TG,Port-1 |
+      | NIC-1,Port-2  ---  TG,Port-2 |
+      | NIC-1,Port-3  ---  TG,Port-3 |
+      | NIC-1,Port-4  ---  TG,Port-4 |
+      +------------------------------+
+
+  * 825992: 2 ports from 2 NIC, 1 core 1 queues per port.
+
+    ::
+
+      + -----------------------------+
+      |  DUT           |  TESTER     |
+      +==============================+
+      | NIC-1,Port-1  ---  TG,Port-1 |
+      | NIC-2,Port-1  ---  TG,Port-2 |
+      +------------------------------+
+
+==============
+Setup overview
+==============
+
+Set up topology as above based on the NIC used.
+
+Test Case 1: Measure performance with kernel PF & dpdk VF
+========================================================
+
+1, Bind PF ports to kernel driver, i40e or ixgbe, then create 1 VF from each PF,
+take XL710 for example::
+
+  echo 1 > /sys/bus/pci/devices/0000\:18\:00.0/sriov_numvfs
+  echo 1 > /sys/bus/pci/devices/0000\:18\:00.1/sriov_numvfs
+
+2, Set vf mac address::
+
+  ip link set ens5f0 vf 0 mac 00:12:34:56:78:01
+  ip link set ens5f1 vf 0 mac 00:12:34:56:78:02
+
+3, Bind all the created VFs to dpdk driver, igb_uio or vfio-pci::
+
+  ./usertools/dpdk-devbind.py -b igb_uio 18:02.0 18:06.0
+
+4, Start dpdk l3fwd with 1:1 matched cores and queues::
+
+  ./examples/l3fwd/build/l3fwd -c 0xf -n 4 -- -p 0x3 --config '(0,0,0),(1,0,1),(0,1,2),(1,1,3)'
+
+5, Send packet with frame size from 64bytes to 1518bytes with ixia traffic generator,
+make sure your traffic configuration meets LPM rules, and will go to all queues, all ports.
+Fill out this table with results.
+
++-------+------+--------+-----------+
+| Frame | mode | Mpps   | %linerate |
++=======+======+========+===========+
+| 64    | lpm  |        |           |
++-------+------+--------+-----------+
+| 128   | lpm  |        |           |
++-------+------+--------+-----------+
+| 256   | lpm  |        |           |
++-------+------+--------+-----------+
+| 512   | lpm  |        |           |
++-------+------+--------+-----------+
+| 1024  | lpm  |        |           |
++-------+------+--------+-----------+
+| 1518  | lpm  |        |           |
++-------+------+--------+-----------+
+
+
+Test Case 2: Measure performance with dpdk PF & dpdk VF
+======================================================
+
+1, Bind PF ports to igb_uio driver, then create 1 VF from each PF,
+take XL710 for example::
+
+  ./usertools/dpdk-devbind.py -b igb_uio 18:00.0 18:00.1
+  echo 1 > /sys/bus/pci/devices/0000\:18\:00.0/max_vfs
+  echo 1 > /sys/bus/pci/devices/0000\:18\:00.1/max_vfs
+
+2, Bind the two created VFs to dpdk driver, igb_uio or vfio-pci::
+
+  ./usertools/dpdk-devbind.py -b igb_uio 18:02.0 18:06.0
+
+3, Start testpmd and set vfs mac address::
+
+  ./x86_64-native-linuxapp-gcc/app/testpmd -c 0x3 -n 4 --socket-mem=1024,1024 --file-prefix=pf -b 0000:18:02.0 -b 0000:18:06.0 -- -i
+  testpmd>set vf mac addr 0 0 00:12:34:56:78:01
+  testpmd>set vf mac addr 1 0 00:12:34:56:78:02
+
+4, Start dpdk l3fwd with 1:1 matched cores and queues::
+
+  ./examples/l3fwd/build/l3fwd -c 0x3c -n 4 -w 0000:18:02.0 -w 0000:18:06.0 -- -p 0x3 --config '(0,0,2),(1,0,3),(0,1,4),(1,1,5)'
+
+5, Send packet with frame size from 64bytes to 1518bytes with ixia traffic generator,
+make sure your traffic configuration meets LPM rules, and will go to all queues, all ports.
+Fill out this table with results.
+
++-------+------+--------+-----------+
+| Frame | mode | Mpps   | %linerate |
++=======+======+========+===========+
+| 64    | lpm  |        |           |
++-------+------+--------+-----------+
+| 128   | lpm  |        |           |
++-------+------+--------+-----------+
+| 256   | lpm  |        |           |
++-------+------+--------+-----------+
+| 512   | lpm  |        |           |
++-------+------+--------+-----------+
+| 1024  | lpm  |        |           |
++-------+------+--------+-----------+
+| 1518  | lpm  |        |           |
++-------+------+--------+-----------+
+
-- 
2.17.1


             reply	other threads:[~2019-05-08  1:50 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-08  9:51 han yingya [this message]
2019-05-08 10:45 ` Rami Rosen
2019-05-13  9:00 ` Tu, Lijuan

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=20190508095153.30098-1-yingyax.han@intel.com \
    --to=yingyax.han@intel.com \
    --cc=dts@dpdk.org \
    /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).