Soft Patch Panel
 help / color / mirror / Atom feed
* [spp] [PATCH 0/5] updates for catching up DPDK20.02
@ 2020-06-05  0:28 x-fn-spp-ml
  2020-06-05  0:28 ` [spp] [PATCH 1/5] docs: remove unnecessary usage of ethtool x-fn-spp-ml
                   ` (5 more replies)
  0 siblings, 6 replies; 13+ messages in thread
From: x-fn-spp-ml @ 2020-06-05  0:28 UTC (permalink / raw)
  To: spp, ferruh.yigit, yasufum.o

From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>

To catch up DPDK20.02, some files should be changed.
Also this patch set includes some document fixes
those are pointed out by DPDK Bugzilla.

Hideyuki Yamashita (5):
  docs: remove unnecessary usage of ethtool
  docs: resolve broken reference link
  docs: catch up updates in dpdk-20.02
  makefile: change default build target
  docs: add note regarding NUMA configuration

 GNUmakefile                             |  2 +-
 docs/guides/design/spp.rst              |  4 +--
 docs/guides/gsg/howto_use.rst           | 39 ++++++++++++++-----------
 docs/guides/gsg/install.rst             |  9 ++++--
 docs/guides/tools/sppc/app_launcher.rst |  2 +-
 docs/guides/usecases/spp_mirror.rst     | 10 +++----
 docs/guides/usecases/spp_pcap.rst       |  4 +--
 docs/guides/usecases/spp_vf.rst         |  8 ++---
 8 files changed, 43 insertions(+), 35 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [spp] [PATCH 1/5] docs: remove unnecessary usage of ethtool
  2020-06-05  0:28 [spp] [PATCH 0/5] updates for catching up DPDK20.02 x-fn-spp-ml
@ 2020-06-05  0:28 ` x-fn-spp-ml
  2020-06-05  0:28 ` [spp] [PATCH 2/5] docs: resolve broken reference link x-fn-spp-ml
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 13+ messages in thread
From: x-fn-spp-ml @ 2020-06-05  0:28 UTC (permalink / raw)
  To: spp, ferruh.yigit, yasufum.o

From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>

This patch removes unnecessary usage of ethtool on host side
in how_to_use section.

Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
Signed-off-by: Naoki Takada <ntakada14@gmail.com>
---
 docs/guides/gsg/howto_use.rst | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/docs/guides/gsg/howto_use.rst b/docs/guides/gsg/howto_use.rst
index 2e4be2f..a57813d 100644
--- a/docs/guides/gsg/howto_use.rst
+++ b/docs/guides/gsg/howto_use.rst
@@ -1035,10 +1035,3 @@ On the VMs, add an interface and disable offload.
 
     # Disable offload
     $ sudo ethtool -K IF_NAME tx off
-
-On host machine, it is also required to disable offload.
-
-.. code-block:: console
-
-    # Disable offload for VM
-    $ sudo ethtool -K IF_NAME tx off
-- 
2.25.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [spp] [PATCH 2/5] docs: resolve broken reference link
  2020-06-05  0:28 [spp] [PATCH 0/5] updates for catching up DPDK20.02 x-fn-spp-ml
  2020-06-05  0:28 ` [spp] [PATCH 1/5] docs: remove unnecessary usage of ethtool x-fn-spp-ml
@ 2020-06-05  0:28 ` x-fn-spp-ml
  2020-06-05  0:28 ` [spp] [PATCH 3/5] docs: catch up updates in dpdk-20.02 x-fn-spp-ml
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 13+ messages in thread
From: x-fn-spp-ml @ 2020-06-05  0:28 UTC (permalink / raw)
  To: spp, ferruh.yigit, yasufum.o

From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>

This patch resolves broken link in reference section.
This is pointed out by DPDK bugzilla.

https://bugs.dpdk.org/show_bug.cgi?id=441

Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
Signed-off-by: Naoki Takada <ntakada14@gmail.com>
---
 docs/guides/design/spp.rst | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/docs/guides/design/spp.rst b/docs/guides/design/spp.rst
index 2c3ee46..43da0d4 100644
--- a/docs/guides/design/spp.rst
+++ b/docs/guides/design/spp.rst
@@ -27,11 +27,11 @@ SPP primary process is responsible for resource management, for example,
 initializing ports, mbufs or shared memory. On the other hand,
 secondary processes of ``spp_nfv`` are working for forwarding
 `[1]
-<https://dpdksummit.com/Archive/pdf/2017USA/Implementation%20and%20Testing%20of%20Soft%20Patch%20Panel.pdf>`_.
+<https://www.dpdk.org/wp-content/uploads/sites/35/2018/06/Implementation-and-Testing-of-Soft-Patch-Panel.pdf>`_.
 
 
 Reference
 ---------
 
 * [1] `Implementation and Testing of Soft Patch Panel
-  <https://dpdksummit.com/Archive/pdf/2017USA/Implementation%20and%20Testing%20of%20Soft%20Patch%20Panel.pdf>`_
+  <https://www.dpdk.org/wp-content/uploads/sites/35/2018/06/Implementation-and-Testing-of-Soft-Patch-Panel.pdf>`_
-- 
2.25.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [spp] [PATCH 3/5] docs: catch up updates in dpdk-20.02
  2020-06-05  0:28 [spp] [PATCH 0/5] updates for catching up DPDK20.02 x-fn-spp-ml
  2020-06-05  0:28 ` [spp] [PATCH 1/5] docs: remove unnecessary usage of ethtool x-fn-spp-ml
  2020-06-05  0:28 ` [spp] [PATCH 2/5] docs: resolve broken reference link x-fn-spp-ml
@ 2020-06-05  0:28 ` x-fn-spp-ml
  2020-06-08  8:02   ` Yasufumi Ogawa
  2020-06-05  0:28 ` [spp] [PATCH 4/5] makefile: change default build target x-fn-spp-ml
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 13+ messages in thread
From: x-fn-spp-ml @ 2020-06-05  0:28 UTC (permalink / raw)
  To: spp, ferruh.yigit, yasufum.o

From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>

This patch catch up the following updates in dpdk-20.02.
- new config to generate IGB_UIO module
- change supported target from x86_64-native-linuxapp-gcc to
x86_64_native-linux-gcc

Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
Signed-off-by: Naoki Takada <ntakada14@gmail.com>
---
 docs/guides/gsg/howto_use.rst           | 20 ++++++++++----------
 docs/guides/gsg/install.rst             |  9 ++++++---
 docs/guides/tools/sppc/app_launcher.rst |  2 +-
 docs/guides/usecases/spp_mirror.rst     | 10 +++++-----
 docs/guides/usecases/spp_pcap.rst       |  4 ++--
 docs/guides/usecases/spp_vf.rst         |  8 ++++----
 6 files changed, 28 insertions(+), 25 deletions(-)

diff --git a/docs/guides/gsg/howto_use.rst b/docs/guides/gsg/howto_use.rst
index a57813d..f182198 100644
--- a/docs/guides/gsg/howto_use.rst
+++ b/docs/guides/gsg/howto_use.rst
@@ -120,7 +120,7 @@ It is same as following options launching from terminal.
 
 .. code-block:: console
 
-    $ sudo ./src/nfv/x86_64-native-linuxapp-gcc/spp_nfv \
+    $ sudo ./src/nfv/x86_64-native-linux-gcc/spp_nfv \
         -l 1,2 -n 4 -m 512 \
         --proc-type secondary \
         --file-prefix spp \
@@ -383,7 +383,7 @@ To launch SPP primary, run ``spp_primary`` with specific options.
 .. code-block:: console
 
     # terminal 3
-    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
         -l 0 -n 4 \
         --socket-mem 512,512 \
         --huge-dir /dev/hugepages \
@@ -430,7 +430,7 @@ Here is an example for launching ``spp_primary`` with monitor thread.
 .. code-block:: console
 
     # terminal 3
-    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
         -l 0-1 -n 4 \   # two lcores
         --socket-mem 512,512 \
         --huge-dir /dev/hugepages \
@@ -453,7 +453,7 @@ secondary processes.
 .. code-block:: console
 
     # terminal 3
-    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
         -l 0 -n 4 \
         --socket-mem 512,512 \
         --huge-dir=/dev/hugepages \
@@ -473,7 +473,7 @@ with white list option.
 .. code-block:: console
 
     # terminal 3
-    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
         -l 0 -n 4 \
         -w 0000:03:00.0,dv_flow_en=1 \
         -w 0000:04:00.0,dv_flow_en=1 \
@@ -524,7 +524,7 @@ as ``l2fwd``.
 
     # terminal 4
     $ cd /path/to/spp
-    $ sudo ./src/nfv/x86_64-native-linuxapp-gcc/spp_nfv \
+    $ sudo ./src/nfv/x86_64-native-linux-gcc/spp_nfv \
         -l 2-3 -n 4 \
         --proc-type secondary \
         --file-prefix $SPP_FILE_PREFIX \
@@ -559,7 +559,7 @@ spp_vf
 
 .. code-block:: console
 
-    $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
+    $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
         -l 2-13 -n 4 \
         --proc-type secondary \
         --file-prefix $SPP_FILE_PREFIX \
@@ -584,7 +584,7 @@ and options are same as ``spp_vf``.
 
 .. code-block:: console
 
-    $ sudo ./src/mirror/x86_64-native-linuxapp-gcc/spp_mirror \
+    $ sudo ./src/mirror/x86_64-native-linux-gcc/spp_mirror \
         -l 2,3 -n 4 \
         --proc-type secondary \
         --file-prefix $SPP_FILE_PREFIX \
@@ -611,7 +611,7 @@ SPP provides ``spp_pcap`` for capturing comparatively heavy traffic.
 
 .. code-block:: console
 
-    $ sudo ./src/pcap/x86_64-native-linuxapp-gcc/spp_pcap \
+    $ sudo ./src/pcap/x86_64-native-linux-gcc/spp_pcap \
         -l 2-5 -n 4 \
         --proc-type secondary \
         --file-prefix $SPP_FILE_PREFIX \
@@ -828,7 +828,7 @@ launching DPDK processes.
     # terminal 6
     $ ssh user@192.168.122.100
     $ cd /path/to/spp
-    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
         -l 1 -n 4 \
         -m 1024 \
         --huge-dir=/dev/hugepages \
diff --git a/docs/guides/gsg/install.rst b/docs/guides/gsg/install.rst
index 2abf330..f561f60 100644
--- a/docs/guides/gsg/install.rst
+++ b/docs/guides/gsg/install.rst
@@ -119,8 +119,9 @@ Installing on Ubuntu and CentOS are almost the same, but required packages
 are just bit different.
 
 PCAP is disabled by default in DPDK configuration.
-``CONFIG_RTE_LIBRTE_PMD_PCAP`` and ``CONFIG_RTE_PORT_PCAP`` defined in
-config file ``common_base`` should be changed to ``y`` to enable PCAP.
+``CONFIG_RTE_LIBRTE_PMD_PCAP``, ``CONFIG_RTE_PORT_PCAP`` and
+``CONFIG_RTE_EAL_IGB_UIO`` defined in config file ``common_base`` should be
+changed to ``y`` to enable PCAP.
 
 .. code-block:: console
 
@@ -128,6 +129,8 @@ config file ``common_base`` should be changed to ``y`` to enable PCAP.
     CONFIG_RTE_LIBRTE_PMD_PCAP=y
     ...
     CONFIG_RTE_PORT_PCAP=y
+    ...
+    CONFIG_RTE_EAL_IGB_UIO=y
 
 If you use MLX5 NIC, ``CONFIG_RTE_LIBRTE_MLX5_PMD`` defined in
 config file ``common_base`` should be changed to ``y``.
@@ -143,7 +146,7 @@ Compile DPDK with target environment.
 
     $ cd dpdk
     $ export RTE_SDK=$(pwd)
-    $ export RTE_TARGET=x86_64-native-linuxapp-gcc  # depends on your env
+    $ export RTE_TARGET=x86_64-native-linux-gcc  # depends on your env
     $ make install T=$RTE_TARGET
 
 Pyhton
diff --git a/docs/guides/tools/sppc/app_launcher.rst b/docs/guides/tools/sppc/app_launcher.rst
index b368a15..40f40ca 100644
--- a/docs/guides/tools/sppc/app_launcher.rst
+++ b/docs/guides/tools/sppc/app_launcher.rst
@@ -831,7 +831,7 @@ and three vhost interfaces.
      sudo docker run \
      ...
      sppc/pktgen-ubuntu:latest \
-     /root/dpdk/../pktgen-dpdk/app/x86_64-native-linuxapp-gcc/pktgen \
+     /root/dpdk/../pktgen-dpdk/app/x86_64-native-linux-gcc/pktgen \
      -l 8-14 \
      ...
      -- \
diff --git a/docs/guides/usecases/spp_mirror.rst b/docs/guides/usecases/spp_mirror.rst
index 4164a16..00d6eef 100644
--- a/docs/guides/usecases/spp_mirror.rst
+++ b/docs/guides/usecases/spp_mirror.rst
@@ -70,7 +70,7 @@ three ports ``-p 0x07``.
 .. code-block:: console
 
    # terminal 3
-   $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+   $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
        -l 1 -n 4 \
        --socket-mem 512,512 \
        --huge-dir=/run/hugepages/kvm \
@@ -87,7 +87,7 @@ Run secondary process ``spp_mirror``.
 .. code-block:: console
 
     # terminal 4
-    $ sudo ./src/mirror/x86_64-native-linuxapp-gcc/app/spp_mirror \
+    $ sudo ./src/mirror/x86_64-native-linux-gcc/app/spp_mirror \
      -l 0,2 -n 4 \
      --proc-type secondary \
      -- \
@@ -230,7 +230,7 @@ Start spp_primary with core list option ``-l 1``.
 
     # terminal 3
     # Type the following in different terminal
-    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
         -l 1 -n 4 \
         --socket-mem 512,512 \
         --huge-dir=/run/hugepages/kvm \
@@ -261,7 +261,7 @@ Launch ``VM1``, ``VM2`` and ``spp_vf`` with core list ``-l 0,2-8``.
 .. code-block:: console
 
    # terminal 4
-   $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
+   $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
        -l 0,2-8 \
        -n 4 --proc-type secondary \
        -- \
@@ -329,7 +329,7 @@ Run ``spp_mirror``.
 .. code-block:: console
 
     # terminal 6
-    $ sudo ./src/mirror/x86_64-native-linuxapp-gcc/app/spp_mirror \
+    $ sudo ./src/mirror/x86_64-native-linux-gcc/app/spp_mirror \
       -l 0,9 \
       -n 4 --proc-type secondary \
       -- \
diff --git a/docs/guides/usecases/spp_pcap.rst b/docs/guides/usecases/spp_pcap.rst
index 543538d..e94cfc4 100644
--- a/docs/guides/usecases/spp_pcap.rst
+++ b/docs/guides/usecases/spp_pcap.rst
@@ -59,7 +59,7 @@ Then, run ``spp_primary`` with one physical port.
 .. code-block:: console
 
     # terminal 3
-    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
         -l 0 -n 4 \
         --socket-mem 512,512 \
         --huge-dir /run/hugepages/kvm \
@@ -79,7 +79,7 @@ writer threads.
 .. code-block:: console
 
     # terminal 4
-    $ sudo ./src/pcap/x86_64-native-linuxapp-gcc/spp_pcap \
+    $ sudo ./src/pcap/x86_64-native-linux-gcc/spp_pcap \
        -l 1-6 -n 4 --proc-type=secondary \
        -- \
        --client-id 1 -s 192.168.1.100:6666 \
diff --git a/docs/guides/usecases/spp_vf.rst b/docs/guides/usecases/spp_vf.rst
index c45feb8..6056636 100644
--- a/docs/guides/usecases/spp_vf.rst
+++ b/docs/guides/usecases/spp_vf.rst
@@ -52,7 +52,7 @@ Launch ``spp-ctl`` and SPP CLI before primary and secondary processes.
 .. code-block:: console
 
     # terminal 3
-    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
         -l 1 -n 4 \
         --socket-mem 512,512 \
         --huge-dir=/run/hugepages/kvm \
@@ -68,7 +68,7 @@ worker threads.
 .. code-block:: console
 
      # terminal 4
-     $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
+     $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
         -l 2-6 \
         -n 4 --proc-type=secondary \
         -- \
@@ -281,7 +281,7 @@ Launch ``spp-ctl`` and SPP CLI before primary and secondary processes.
 .. code-block:: console
 
     # terminal 3
-    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
+    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
         -l 1 -n 4 \
         --socket-mem 512,512 \
         --huge-dir=/run/hugepages/kvm \
@@ -295,7 +295,7 @@ to use twelve lcores.
 .. code-block:: console
 
     # terminal 4
-    $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
+    $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
         -l 0,2-13 \
         -n 4 --proc-type=secondary \
         -- \
-- 
2.25.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [spp] [PATCH 4/5] makefile: change default build target
  2020-06-05  0:28 [spp] [PATCH 0/5] updates for catching up DPDK20.02 x-fn-spp-ml
                   ` (2 preceding siblings ...)
  2020-06-05  0:28 ` [spp] [PATCH 3/5] docs: catch up updates in dpdk-20.02 x-fn-spp-ml
@ 2020-06-05  0:28 ` x-fn-spp-ml
  2020-06-05  0:28 ` [spp] [PATCH 5/5] docs: add note regarding NUMA configuration x-fn-spp-ml
  2020-06-05  2:40 ` [spp] [PATCH 0/5] updates for catching up DPDK20.02 Itsuro ODA
  5 siblings, 0 replies; 13+ messages in thread
From: x-fn-spp-ml @ 2020-06-05  0:28 UTC (permalink / raw)
  To: spp, ferruh.yigit, yasufum.o

From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>

This patch changes default build target from x86_64-native-linuxapp-gcc
to x86_64-native-linux-gcc.

From the following link, x86_64-native-linuxapp-gcc is not supported.

https://doc.dpdk.org/guides-20.02/linux_gsg/
build_dpdk.html#compiling-and-installing-dpdk-system-wide

Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
Signed-off-by: Naoki Takada <ntakada14@gmail.com>
---
 GNUmakefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/GNUmakefile b/GNUmakefile
index 0db3aaa..555dbb3 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -5,7 +5,7 @@ VERSION := 19.11
 
 ifneq ($(RTE_SDK),)
 # Default target, can be overriden by command line or environment
-RTE_TARGET ?= x86_64-native-linuxapp-gcc
+RTE_TARGET ?= x86_64-native-linux-gcc
 
 include $(RTE_SDK)/mk/rte.vars.mk
 
-- 
2.25.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [spp] [PATCH 5/5] docs: add note regarding NUMA configuration
  2020-06-05  0:28 [spp] [PATCH 0/5] updates for catching up DPDK20.02 x-fn-spp-ml
                   ` (3 preceding siblings ...)
  2020-06-05  0:28 ` [spp] [PATCH 4/5] makefile: change default build target x-fn-spp-ml
@ 2020-06-05  0:28 ` x-fn-spp-ml
  2020-06-08  8:21   ` Yasufumi Ogawa
  2020-06-05  2:40 ` [spp] [PATCH 0/5] updates for catching up DPDK20.02 Itsuro ODA
  5 siblings, 1 reply; 13+ messages in thread
From: x-fn-spp-ml @ 2020-06-05  0:28 UTC (permalink / raw)
  To: spp, ferruh.yigit, yasufum.o

From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>

This patch adds new notes for NUMA configuration when starting
spp_primary.

This is pointed out by the following DPDK Bugzilla tickets.
https://bugs.dpdk.org/show_bug.cgi?id=457

Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
Signed-off-by: Naoki Takada <ntakada14@gmail.com>
---
 docs/guides/gsg/howto_use.rst | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/docs/guides/gsg/howto_use.rst b/docs/guides/gsg/howto_use.rst
index f182198..4f2e6cd 100644
--- a/docs/guides/gsg/howto_use.rst
+++ b/docs/guides/gsg/howto_use.rst
@@ -422,6 +422,18 @@ if you run the process on single NUMA node.
    If you use DPDK v18.11 or later, ``--base-virtaddr 0x100000000`` is enabled
    in default. You need to use this option only for changing the default value.
 
+.. note::
+
+   ``spp_primary`` tries to create memory pool in the same NUMA node where
+   it is launched. Under NUMA configuration, the NUMA node where ``spp_primary``
+   is launched and the NUMA node where NIC is connected can be different
+   (e.g. spp_primary runs in NUMA node 0 while NIC is connected with NUMA
+   node 1).
+   Such configuration may cause performance degradation. In general, under
+   NUMA configuration, it is best practice to use CPU and NIC which belongs
+   to the same NUMA node for best performance. So user should align those
+   when performance degradation makes the situation critical.
+
 If ``spp_primary`` is launched with two or more lcores, forwarder or monitor
 is activated. The default is forwarder and monitor is optional in this case.
 If you use monitor thread, additional option ``--disp-stat`` is required.
-- 
2.25.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [spp] [PATCH 0/5] updates for catching up DPDK20.02
  2020-06-05  0:28 [spp] [PATCH 0/5] updates for catching up DPDK20.02 x-fn-spp-ml
                   ` (4 preceding siblings ...)
  2020-06-05  0:28 ` [spp] [PATCH 5/5] docs: add note regarding NUMA configuration x-fn-spp-ml
@ 2020-06-05  2:40 ` Itsuro ODA
  5 siblings, 0 replies; 13+ messages in thread
From: Itsuro ODA @ 2020-06-05  2:40 UTC (permalink / raw)
  To: spp; +Cc: ferruh.yigit, yasufum.o

Reviewed-by: Itsuro Oda <oda@valinux.co.jp>

On Fri, 05 Jun 2020 09:28:49 +0900
x-fn-spp-ml@ntt-tx.co.jp wrote:

> From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> 
> To catch up DPDK20.02, some files should be changed.
> Also this patch set includes some document fixes
> those are pointed out by DPDK Bugzilla.
> 
> Hideyuki Yamashita (5):
>   docs: remove unnecessary usage of ethtool
>   docs: resolve broken reference link
>   docs: catch up updates in dpdk-20.02
>   makefile: change default build target
>   docs: add note regarding NUMA configuration
> 
>  GNUmakefile                             |  2 +-
>  docs/guides/design/spp.rst              |  4 +--
>  docs/guides/gsg/howto_use.rst           | 39 ++++++++++++++-----------
>  docs/guides/gsg/install.rst             |  9 ++++--
>  docs/guides/tools/sppc/app_launcher.rst |  2 +-
>  docs/guides/usecases/spp_mirror.rst     | 10 +++----
>  docs/guides/usecases/spp_pcap.rst       |  4 +--
>  docs/guides/usecases/spp_vf.rst         |  8 ++---
>  8 files changed, 43 insertions(+), 35 deletions(-)
> 
> -- 
> 2.25.1

-- 
Itsuro ODA <oda@valinux.co.jp>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [spp] [PATCH 3/5] docs: catch up updates in dpdk-20.02
  2020-06-05  0:28 ` [spp] [PATCH 3/5] docs: catch up updates in dpdk-20.02 x-fn-spp-ml
@ 2020-06-08  8:02   ` Yasufumi Ogawa
  2020-06-16  8:28     ` [spp] (x-fn-spp-ml 781) " Hideyuki Yamashita
  0 siblings, 1 reply; 13+ messages in thread
From: Yasufumi Ogawa @ 2020-06-08  8:02 UTC (permalink / raw)
  To: x-fn-spp-ml; +Cc: spp

Hi,

Thanks for your update. I have three comments.

> From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> 
> This patch catch up the following updates in dpdk-20.02.
> - new config to generate IGB_UIO module
> - change supported target from x86_64-native-linuxapp-gcc to
> x86_64_native-linux-gcc
Plese take care about indenting.

> 
> Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> Signed-off-by: Naoki Takada <ntakada14@gmail.com>
> ---
>   docs/guides/gsg/howto_use.rst           | 20 ++++++++++----------
>   docs/guides/gsg/install.rst             |  9 ++++++---
>   docs/guides/tools/sppc/app_launcher.rst |  2 +-
>   docs/guides/usecases/spp_mirror.rst     | 10 +++++-----
>   docs/guides/usecases/spp_pcap.rst       |  4 ++--
>   docs/guides/usecases/spp_vf.rst         |  8 ++++----
>   6 files changed, 28 insertions(+), 25 deletions(-)
> 

[...]

> diff --git a/docs/guides/gsg/install.rst b/docs/guides/gsg/install.rst
> index 2abf330..f561f60 100644
> --- a/docs/guides/gsg/install.rst
> +++ b/docs/guides/gsg/install.rst
> @@ -119,8 +119,9 @@ Installing on Ubuntu and CentOS are almost the same, but required packages
>   are just bit different.
>   
>   PCAP is disabled by default in DPDK configuration.
> -``CONFIG_RTE_LIBRTE_PMD_PCAP`` and ``CONFIG_RTE_PORT_PCAP`` defined in
> -config file ``common_base`` should be changed to ``y`` to enable PCAP.
> +``CONFIG_RTE_LIBRTE_PMD_PCAP``, ``CONFIG_RTE_PORT_PCAP`` and
> +``CONFIG_RTE_EAL_IGB_UIO`` defined in config file ``common_base`` should be
This sentence is to give a instruction for using PCAP, so should not 
include about IGB_UIO in the same sentence. Could you separate the 
sentence and add an explanation that igb_uio is no longer built as default?

> +changed to ``y`` to enable PCAP.
>   
>   .. code-block:: console
>   
> @@ -128,6 +129,8 @@ config file ``common_base`` should be changed to ``y`` to enable PCAP.
>       CONFIG_RTE_LIBRTE_PMD_PCAP=y
>       ...
>       CONFIG_RTE_PORT_PCAP=y
> +    ...
> +    CONFIG_RTE_EAL_IGB_UIO=y
Please separate as similar to previous one.

>   
>   If you use MLX5 NIC, ``CONFIG_RTE_LIBRTE_MLX5_PMD`` defined in
>   config file ``common_base`` should be changed to ``y``.
> @@ -143,7 +146,7 @@ Compile DPDK with target environment.
>   
>       $ cd dpdk
>       $ export RTE_SDK=$(pwd)
> -    $ export RTE_TARGET=x86_64-native-linuxapp-gcc  # depends on your env
> +    $ export RTE_TARGET=x86_64-native-linux-gcc  # depends on your env
>       $ make install T=$RTE_TARGET
>   
>   Pyhton
> diff --git a/docs/guides/tools/sppc/app_launcher.rst b/docs/guides/tools/sppc/app_launcher.rst
> index b368a15..40f40ca 100644
> --- a/docs/guides/tools/sppc/app_launcher.rst
> +++ b/docs/guides/tools/sppc/app_launcher.rst
> @@ -831,7 +831,7 @@ and three vhost interfaces.
>        sudo docker run \
>        ...
>        sppc/pktgen-ubuntu:latest \
> -     /root/dpdk/../pktgen-dpdk/app/x86_64-native-linuxapp-gcc/pktgen \
> +     /root/dpdk/../pktgen-dpdk/app/x86_64-native-linux-gcc/pktgen \
>        -l 8-14 \
>        ...
>        -- \
> diff --git a/docs/guides/usecases/spp_mirror.rst b/docs/guides/usecases/spp_mirror.rst
> index 4164a16..00d6eef 100644
> --- a/docs/guides/usecases/spp_mirror.rst
> +++ b/docs/guides/usecases/spp_mirror.rst
> @@ -70,7 +70,7 @@ three ports ``-p 0x07``.
>   .. code-block:: console
>   
>      # terminal 3
> -   $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> +   $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
>          -l 1 -n 4 \
>          --socket-mem 512,512 \
>          --huge-dir=/run/hugepages/kvm \
> @@ -87,7 +87,7 @@ Run secondary process ``spp_mirror``.
>   .. code-block:: console
>   
>       # terminal 4
> -    $ sudo ./src/mirror/x86_64-native-linuxapp-gcc/app/spp_mirror \
> +    $ sudo ./src/mirror/x86_64-native-linux-gcc/app/spp_mirror \
>        -l 0,2 -n 4 \
>        --proc-type secondary \
>        -- \
> @@ -230,7 +230,7 @@ Start spp_primary with core list option ``-l 1``.
>   
>       # terminal 3
>       # Type the following in different terminal
> -    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> +    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
>           -l 1 -n 4 \
>           --socket-mem 512,512 \
>           --huge-dir=/run/hugepages/kvm \
> @@ -261,7 +261,7 @@ Launch ``VM1``, ``VM2`` and ``spp_vf`` with core list ``-l 0,2-8``.
>   .. code-block:: console
>   
>      # terminal 4
> -   $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
> +   $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
>          -l 0,2-8 \
>          -n 4 --proc-type secondary \
>          -- \
> @@ -329,7 +329,7 @@ Run ``spp_mirror``.
>   .. code-block:: console
>   
>       # terminal 6
> -    $ sudo ./src/mirror/x86_64-native-linuxapp-gcc/app/spp_mirror \
> +    $ sudo ./src/mirror/x86_64-native-linux-gcc/app/spp_mirror \
>         -l 0,9 \
>         -n 4 --proc-type secondary \
>         -- \
> diff --git a/docs/guides/usecases/spp_pcap.rst b/docs/guides/usecases/spp_pcap.rst
> index 543538d..e94cfc4 100644
> --- a/docs/guides/usecases/spp_pcap.rst
> +++ b/docs/guides/usecases/spp_pcap.rst
> @@ -59,7 +59,7 @@ Then, run ``spp_primary`` with one physical port.
>   .. code-block:: console
>   
>       # terminal 3
> -    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> +    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
>           -l 0 -n 4 \
>           --socket-mem 512,512 \
>           --huge-dir /run/hugepages/kvm \
> @@ -79,7 +79,7 @@ writer threads.
>   .. code-block:: console
>   
>       # terminal 4
> -    $ sudo ./src/pcap/x86_64-native-linuxapp-gcc/spp_pcap \
> +    $ sudo ./src/pcap/x86_64-native-linux-gcc/spp_pcap \
>          -l 1-6 -n 4 --proc-type=secondary \
>          -- \
>          --client-id 1 -s 192.168.1.100:6666 \
> diff --git a/docs/guides/usecases/spp_vf.rst b/docs/guides/usecases/spp_vf.rst
> index c45feb8..6056636 100644
> --- a/docs/guides/usecases/spp_vf.rst
> +++ b/docs/guides/usecases/spp_vf.rst
> @@ -52,7 +52,7 @@ Launch ``spp-ctl`` and SPP CLI before primary and secondary processes.
>   .. code-block:: console
>   
>       # terminal 3
> -    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> +    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
>           -l 1 -n 4 \
>           --socket-mem 512,512 \
>           --huge-dir=/run/hugepages/kvm \
> @@ -68,7 +68,7 @@ worker threads.
>   .. code-block:: console
>   
>        # terminal 4
> -     $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
> +     $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
>           -l 2-6 \
>           -n 4 --proc-type=secondary \
>           -- \
> @@ -281,7 +281,7 @@ Launch ``spp-ctl`` and SPP CLI before primary and secondary processes.
>   .. code-block:: console
>   
>       # terminal 3
> -    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> +    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
>           -l 1 -n 4 \
>           --socket-mem 512,512 \
>           --huge-dir=/run/hugepages/kvm \
> @@ -295,7 +295,7 @@ to use twelve lcores.
>   .. code-block:: console
>   
>       # terminal 4
> -    $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
> +    $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
>           -l 0,2-13 \
>           -n 4 --proc-type=secondary \
>           -- \
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [spp] [PATCH 5/5] docs: add note regarding NUMA configuration
  2020-06-05  0:28 ` [spp] [PATCH 5/5] docs: add note regarding NUMA configuration x-fn-spp-ml
@ 2020-06-08  8:21   ` Yasufumi Ogawa
  2020-06-16  8:30     ` [spp] (x-fn-spp-ml 783) " Hideyuki Yamashita
  0 siblings, 1 reply; 13+ messages in thread
From: Yasufumi Ogawa @ 2020-06-08  8:21 UTC (permalink / raw)
  To: x-fn-spp-ml; +Cc: spp

> From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> 
> This patch adds new notes for NUMA configuration when starting
> spp_primary.
> 
> This is pointed out by the following DPDK Bugzilla tickets.
> https://bugs.dpdk.org/show_bug.cgi?id=457
> 
> Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> Signed-off-by: Naoki Takada <ntakada14@gmail.com>
> ---
>   docs/guides/gsg/howto_use.rst | 12 ++++++++++++
>   1 file changed, 12 insertions(+)
> 
> diff --git a/docs/guides/gsg/howto_use.rst b/docs/guides/gsg/howto_use.rst
> index f182198..4f2e6cd 100644
> --- a/docs/guides/gsg/howto_use.rst
> +++ b/docs/guides/gsg/howto_use.rst
> @@ -422,6 +422,18 @@ if you run the process on single NUMA node.
>      If you use DPDK v18.11 or later, ``--base-virtaddr 0x100000000`` is enabled
>      in default. You need to use this option only for changing the default value.
>   
> +.. note::
> +
> +   ``spp_primary`` tries to create memory pool in the same NUMA node where
> +   it is launched. Under NUMA configuration, the NUMA node where ``spp_primary``
> +   is launched and the NUMA node where NIC is connected can be different
> +   (e.g. spp_primary runs in NUMA node 0 while NIC is connected with NUMA
> +   node 1).
> +   Such configuration may cause performance degradation. In general, under
> +   NUMA configuration, it is best practice to use CPU and NIC which belongs
> +   to the same NUMA node for best performance. So user should align those
> +   when performance degradation makes the situation critical.
> +
I have two comments.

1. Could I confirm WHAT should be configured for avoiding such a 
performance loss?

2. It seems something abruptly considering context of this section 
because you start talking about performance suddenly. If it must be 
considered as a mandatory configuration and should be explained this 
section, I agree your update. On the other hand, what do you think to 
move this note to the next "Performance Optimization" section. I think 
no need to be a note if you move it to the next secion.

Thanks

>   If ``spp_primary`` is launched with two or more lcores, forwarder or monitor
>   is activated. The default is forwarder and monitor is optional in this case.
>   If you use monitor thread, additional option ``--disp-stat`` is required.
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [spp] (x-fn-spp-ml 781) Re: [PATCH 3/5] docs: catch up updates in dpdk-20.02
  2020-06-08  8:02   ` Yasufumi Ogawa
@ 2020-06-16  8:28     ` Hideyuki Yamashita
  0 siblings, 0 replies; 13+ messages in thread
From: Hideyuki Yamashita @ 2020-06-16  8:28 UTC (permalink / raw)
  To: Yasufumi Ogawa; +Cc: x-fn-spp-ml, spp

Hi, 
Sorry for delayed reply.
Please see inline comments.

> Hi,
> 
> Thanks for your update. I have three comments.
> 
> > From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> >
> > This patch catch up the following updates in dpdk-20.02.
> > - new config to generate IGB_UIO module
> > - change supported target from x86_64-native-linuxapp-gcc to
> > x86_64_native-linux-gcc
> Plese take care about indenting.

Sure 
I will modify as follwing in next update
> > - new config to generate IGB_UIO module
> > - change supported target from x86_64-native-linuxapp-gcc to
> >   x86_64_native-linux-gcc



> >
> > Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> > Signed-off-by: Naoki Takada <ntakada14@gmail.com>
> > ---
> >   docs/guides/gsg/howto_use.rst           | 20 ++++++++++----------
> >   docs/guides/gsg/install.rst             |  9 ++++++---
> >   docs/guides/tools/sppc/app_launcher.rst |  2 +-
> >   docs/guides/usecases/spp_mirror.rst     | 10 +++++-----
> >   docs/guides/usecases/spp_pcap.rst       |  4 ++--
> >   docs/guides/usecases/spp_vf.rst         |  8 ++++----
> >   6 files changed, 28 insertions(+), 25 deletions(-)
> > 
> [...]
> 
> > diff --git a/docs/guides/gsg/install.rst b/docs/guides/gsg/install.rst
> > index 2abf330..f561f60 100644
> > --- a/docs/guides/gsg/install.rst
> > +++ b/docs/guides/gsg/install.rst
> > @@ -119,8 +119,9 @@ Installing on Ubuntu and CentOS are almost the same, but required packages
> >   are just bit different.
> >  >   PCAP is disabled by default in DPDK configuration.
> > -``CONFIG_RTE_LIBRTE_PMD_PCAP`` and ``CONFIG_RTE_PORT_PCAP`` defined in
> > -config file ``common_base`` should be changed to ``y`` to enable PCAP.
> > +``CONFIG_RTE_LIBRTE_PMD_PCAP``, ``CONFIG_RTE_PORT_PCAP`` and
> > +``CONFIG_RTE_EAL_IGB_UIO`` defined in config file ``common_base`` should be
> This sentence is to give a instruction for using PCAP, so should not include about IGB_UIO in the same sentence. Could you separate the sentence and add an explanation that igb_uio is no longer built as default?

Sure.
I will de-couple setting of ``CONFIG_RTE_EAL_IGB_UIO``
from those of PCAP.

 
> > +changed to ``y`` to enable PCAP.
> >  >   .. code-block:: console
> >  > @@ -128,6 +129,8 @@ config file ``common_base`` should be changed to ``y`` to enable PCAP.
> >       CONFIG_RTE_LIBRTE_PMD_PCAP=y
> >       ...
> >       CONFIG_RTE_PORT_PCAP=y
> > +    ...
> > +    CONFIG_RTE_EAL_IGB_UIO=y
> Please separate as similar to previous one.

Sure.

> >  >   If you use MLX5 NIC, ``CONFIG_RTE_LIBRTE_MLX5_PMD`` defined in
> >   config file ``common_base`` should be changed to ``y``.
> > @@ -143,7 +146,7 @@ Compile DPDK with target environment.
> >  >       $ cd dpdk
> >       $ export RTE_SDK=$(pwd)
> > -    $ export RTE_TARGET=x86_64-native-linuxapp-gcc  # depends on your env
> > +    $ export RTE_TARGET=x86_64-native-linux-gcc  # depends on your env
> >       $ make install T=$RTE_TARGET
> >  >   Pyhton
> > diff --git a/docs/guides/tools/sppc/app_launcher.rst b/docs/guides/tools/sppc/app_launcher.rst
> > index b368a15..40f40ca 100644
> > --- a/docs/guides/tools/sppc/app_launcher.rst
> > +++ b/docs/guides/tools/sppc/app_launcher.rst
> > @@ -831,7 +831,7 @@ and three vhost interfaces.
> >        sudo docker run \
> >        ...
> >        sppc/pktgen-ubuntu:latest \
> > -     /root/dpdk/../pktgen-dpdk/app/x86_64-native-linuxapp-gcc/pktgen \
> > +     /root/dpdk/../pktgen-dpdk/app/x86_64-native-linux-gcc/pktgen \
> >        -l 8-14 \
> >        ...
> >        -- \
> > diff --git a/docs/guides/usecases/spp_mirror.rst b/docs/guides/usecases/spp_mirror.rst
> > index 4164a16..00d6eef 100644
> > --- a/docs/guides/usecases/spp_mirror.rst
> > +++ b/docs/guides/usecases/spp_mirror.rst
> > @@ -70,7 +70,7 @@ three ports ``-p 0x07``.
> >   .. code-block:: console
> >  >      # terminal 3
> > -   $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> > +   $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
> >          -l 1 -n 4 \
> >          --socket-mem 512,512 \
> >          --huge-dir=/run/hugepages/kvm \
> > @@ -87,7 +87,7 @@ Run secondary process ``spp_mirror``.
> >   .. code-block:: console
> >  >       # terminal 4
> > -    $ sudo ./src/mirror/x86_64-native-linuxapp-gcc/app/spp_mirror \
> > +    $ sudo ./src/mirror/x86_64-native-linux-gcc/app/spp_mirror \
> >        -l 0,2 -n 4 \
> >        --proc-type secondary \
> >        -- \
> > @@ -230,7 +230,7 @@ Start spp_primary with core list option ``-l 1``.
> >  >       # terminal 3
> >       # Type the following in different terminal
> > -    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> > +    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
> >           -l 1 -n 4 \
> >           --socket-mem 512,512 \
> >           --huge-dir=/run/hugepages/kvm \
> > @@ -261,7 +261,7 @@ Launch ``VM1``, ``VM2`` and ``spp_vf`` with core list ``-l 0,2-8``.
> >   .. code-block:: console
> >  >      # terminal 4
> > -   $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
> > +   $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
> >          -l 0,2-8 \
> >          -n 4 --proc-type secondary \
> >          -- \
> > @@ -329,7 +329,7 @@ Run ``spp_mirror``.
> >   .. code-block:: console
> >  >       # terminal 6
> > -    $ sudo ./src/mirror/x86_64-native-linuxapp-gcc/app/spp_mirror \
> > +    $ sudo ./src/mirror/x86_64-native-linux-gcc/app/spp_mirror \
> >         -l 0,9 \
> >         -n 4 --proc-type secondary \
> >         -- \
> > diff --git a/docs/guides/usecases/spp_pcap.rst b/docs/guides/usecases/spp_pcap.rst
> > index 543538d..e94cfc4 100644
> > --- a/docs/guides/usecases/spp_pcap.rst
> > +++ b/docs/guides/usecases/spp_pcap.rst
> > @@ -59,7 +59,7 @@ Then, run ``spp_primary`` with one physical port.
> >   .. code-block:: console
> >  >       # terminal 3
> > -    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> > +    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
> >           -l 0 -n 4 \
> >           --socket-mem 512,512 \
> >           --huge-dir /run/hugepages/kvm \
> > @@ -79,7 +79,7 @@ writer threads.
> >   .. code-block:: console
> >  >       # terminal 4
> > -    $ sudo ./src/pcap/x86_64-native-linuxapp-gcc/spp_pcap \
> > +    $ sudo ./src/pcap/x86_64-native-linux-gcc/spp_pcap \
> >          -l 1-6 -n 4 --proc-type=secondary \
> >          -- \
> >          --client-id 1 -s 192.168.1.100:6666 \
> > diff --git a/docs/guides/usecases/spp_vf.rst b/docs/guides/usecases/spp_vf.rst
> > index c45feb8..6056636 100644
> > --- a/docs/guides/usecases/spp_vf.rst
> > +++ b/docs/guides/usecases/spp_vf.rst
> > @@ -52,7 +52,7 @@ Launch ``spp-ctl`` and SPP CLI before primary and secondary processes.
> >   .. code-block:: console
> >  >       # terminal 3
> > -    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> > +    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
> >           -l 1 -n 4 \
> >           --socket-mem 512,512 \
> >           --huge-dir=/run/hugepages/kvm \
> > @@ -68,7 +68,7 @@ worker threads.
> >   .. code-block:: console
> >  >        # terminal 4
> > -     $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
> > +     $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
> >           -l 2-6 \
> >           -n 4 --proc-type=secondary \
> >           -- \
> > @@ -281,7 +281,7 @@ Launch ``spp-ctl`` and SPP CLI before primary and secondary processes.
> >   .. code-block:: console
> >  >       # terminal 3
> > -    $ sudo ./src/primary/x86_64-native-linuxapp-gcc/spp_primary \
> > +    $ sudo ./src/primary/x86_64-native-linux-gcc/spp_primary \
> >           -l 1 -n 4 \
> >           --socket-mem 512,512 \
> >           --huge-dir=/run/hugepages/kvm \
> > @@ -295,7 +295,7 @@ to use twelve lcores.
> >   .. code-block:: console
> >  >       # terminal 4
> > -    $ sudo ./src/vf/x86_64-native-linuxapp-gcc/spp_vf \
> > +    $ sudo ./src/vf/x86_64-native-linux-gcc/spp_vf \
> >           -l 0,2-13 \
> >           -n 4 --proc-type=secondary \
> >           -- \
> > 




^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [spp] (x-fn-spp-ml 783) Re: [PATCH 5/5] docs: add note regarding NUMA configuration
  2020-06-08  8:21   ` Yasufumi Ogawa
@ 2020-06-16  8:30     ` Hideyuki Yamashita
  2020-06-16 16:18       ` Yasufumi Ogawa
  0 siblings, 1 reply; 13+ messages in thread
From: Hideyuki Yamashita @ 2020-06-16  8:30 UTC (permalink / raw)
  To: Yasufumi Ogawa; +Cc: x-fn-spp-ml, spp

Hi.
Sorry for delayed response.
Please see my comments inline.



> > From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> >
> > This patch adds new notes for NUMA configuration when starting
> > spp_primary.
> >
> > This is pointed out by the following DPDK Bugzilla tickets.
> > https://bugs.dpdk.org/show_bug.cgi?id=457
> >
> > Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> > Signed-off-by: Naoki Takada <ntakada14@gmail.com>
> > ---
> >   docs/guides/gsg/howto_use.rst | 12 ++++++++++++
> >   1 file changed, 12 insertions(+)
> >
> > diff --git a/docs/guides/gsg/howto_use.rst b/docs/guides/gsg/howto_use.rst
> > index f182198..4f2e6cd 100644
> > --- a/docs/guides/gsg/howto_use.rst
> > +++ b/docs/guides/gsg/howto_use.rst
> > @@ -422,6 +422,18 @@ if you run the process on single NUMA node.
> >      If you use DPDK v18.11 or later, ``--base-virtaddr 0x100000000`` is enabled
> >      in default. You need to use this option only for changing the default value.
> >  > +.. note::
> > +
> > +   ``spp_primary`` tries to create memory pool in the same NUMA node where
> > +   it is launched. Under NUMA configuration, the NUMA node where ``spp_primary``
> > +   is launched and the NUMA node where NIC is connected can be different
> > +   (e.g. spp_primary runs in NUMA node 0 while NIC is connected with NUMA
> > +   node 1).
> > +   Such configuration may cause performance degradation. In general, under
> > +   NUMA configuration, it is best practice to use CPU and NIC which belongs
> > +   to the same NUMA node for best performance. So user should align those
> > +   when performance degradation makes the situation critical.
> > +
> I have two comments.
> 
> 1. Could I confirm WHAT should be configured for avoiding such a performance loss?

NUMA node 
- primary process will run (that can be specified with -l parameter)
- NIC belongs
should be the same to avoid performance loss.

In general, topology regarding with NUMA node
(e.g. CPU core, NIC which is connected with specific NUMA node)
can be found in lstopo command.


> 2. It seems something abruptly considering context of this section because you start talking about performance suddenly. 
> If it must be considered as a mandatory configuration and should be explained this section, I agree your update. 
> On the other hand, what do you think to move this note to the next "Performance Optimization" section. 
> I think no need to be a note if you move it to the next secion.

I agree with your idea.
I think it is NOT mandatory, thus should be moved to next section
'without' note.

> 
> Thanks
> 
> >   If ``spp_primary`` is launched with two or more lcores, forwarder or monitor
> >   is activated. The default is forwarder and monitor is optional in this case.
> >   If you use monitor thread, additional option ``--disp-stat`` is required.



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [spp] (x-fn-spp-ml 783) Re: [PATCH 5/5] docs: add note regarding NUMA configuration
  2020-06-16  8:30     ` [spp] (x-fn-spp-ml 783) " Hideyuki Yamashita
@ 2020-06-16 16:18       ` Yasufumi Ogawa
  2020-06-18  3:14         ` [spp] (x-fn-spp-ml 796) " Hideyuki Yamashita
  0 siblings, 1 reply; 13+ messages in thread
From: Yasufumi Ogawa @ 2020-06-16 16:18 UTC (permalink / raw)
  To: Hideyuki Yamashita; +Cc: x-fn-spp-ml, spp

> Hi.
> Sorry for delayed response.
> Please see my comments inline.
> 
>>> From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
>>>
>>> This patch adds new notes for NUMA configuration when starting
>>> spp_primary.
>>>
>>> This is pointed out by the following DPDK Bugzilla tickets.
>>> https://bugs.dpdk.org/show_bug.cgi?id=457
>>>
>>> Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
>>> Signed-off-by: Naoki Takada <ntakada14@gmail.com>
>>> ---
>>>    docs/guides/gsg/howto_use.rst | 12 ++++++++++++
>>>    1 file changed, 12 insertions(+)
>>>
>>> diff --git a/docs/guides/gsg/howto_use.rst b/docs/guides/gsg/howto_use.rst
>>> index f182198..4f2e6cd 100644
>>> --- a/docs/guides/gsg/howto_use.rst
>>> +++ b/docs/guides/gsg/howto_use.rst
>>> @@ -422,6 +422,18 @@ if you run the process on single NUMA node.
>>>       If you use DPDK v18.11 or later, ``--base-virtaddr 0x100000000`` is enabled
>>>       in default. You need to use this option only for changing the default value.
>>>   > +.. note::
>>> +
>>> +   ``spp_primary`` tries to create memory pool in the same NUMA node where
>>> +   it is launched. Under NUMA configuration, the NUMA node where ``spp_primary``
>>> +   is launched and the NUMA node where NIC is connected can be different
>>> +   (e.g. spp_primary runs in NUMA node 0 while NIC is connected with NUMA
>>> +   node 1).
>>> +   Such configuration may cause performance degradation. In general, under
>>> +   NUMA configuration, it is best practice to use CPU and NIC which belongs
>>> +   to the same NUMA node for best performance. So user should align those
>>> +   when performance degradation makes the situation critical.
>>> +
>> I have two comments.
>>
>> 1. Could I confirm WHAT should be configured for avoiding such a performance loss?
> 
> NUMA node
> - primary process will run (that can be specified with -l parameter)
> - NIC belongs
> should be the same to avoid performance loss.
> 
> In general, topology regarding with NUMA node
> (e.g. CPU core, NIC which is connected with specific NUMA node)
> can be found in lstopo command.
I would like to make it clear as an instruction for users. From my 
understanding, users should confirm that
- Understand layout of hardware architecture of NICs and CPUs.
- Assign lcores while launching spp_primary by considering the layout 
identified before.

I understand your update for explanation is collect, but not so clear 
the purpose as instruction. I think it could be more agreeable if you 
start to explaining WHAT can be happened if you do not care about the 
layout (performance degradation actually), then HOW you get the layout 
by using `lstopo` and HOW you configure lcores by using `-l` option.

Thanks,
Yasufumi

> 
> 
>> 2. It seems something abruptly considering context of this section because you start talking about performance suddenly.
>> If it must be considered as a mandatory configuration and should be explained this section, I agree your update.
>> On the other hand, what do you think to move this note to the next "Performance Optimization" section.
>> I think no need to be a note if you move it to the next secion.
> 
> I agree with your idea.
> I think it is NOT mandatory, thus should be moved to next section
> 'without' note.
> 
>>
>> Thanks
>>
>>>    If ``spp_primary`` is launched with two or more lcores, forwarder or monitor
>>>    is activated. The default is forwarder and monitor is optional in this case.
>>>    If you use monitor thread, additional option ``--disp-stat`` is required.
> 
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [spp] (x-fn-spp-ml 796) Re: (x-fn-spp-ml 783) Re: [PATCH 5/5] docs: add note regarding NUMA configuration
  2020-06-16 16:18       ` Yasufumi Ogawa
@ 2020-06-18  3:14         ` Hideyuki Yamashita
  0 siblings, 0 replies; 13+ messages in thread
From: Hideyuki Yamashita @ 2020-06-18  3:14 UTC (permalink / raw)
  To: Yasufumi Ogawa; +Cc: x-fn-spp-ml, spp

Hello, 

Thanks for your comments.
Please see inline.

> > Hi.
> > Sorry for delayed response.
> > Please see my comments inline.
> >
> >>> From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> >>>
> >>> This patch adds new notes for NUMA configuration when starting
> >>> spp_primary.
> >>>
> >>> This is pointed out by the following DPDK Bugzilla tickets.
> >>> https://bugs.dpdk.org/show_bug.cgi?id=457
> >>>
> >>> Signed-off-by: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> >>> Signed-off-by: Naoki Takada <ntakada14@gmail.com>
> >>> ---
> >>>    docs/guides/gsg/howto_use.rst | 12 ++++++++++++
> >>>    1 file changed, 12 insertions(+)
> >>>
> >>> diff --git a/docs/guides/gsg/howto_use.rst b/docs/guides/gsg/howto_use.rst
> >>> index f182198..4f2e6cd 100644
> >>> --- a/docs/guides/gsg/howto_use.rst
> >>> +++ b/docs/guides/gsg/howto_use.rst
> >>> @@ -422,6 +422,18 @@ if you run the process on single NUMA node.
> >>>       If you use DPDK v18.11 or later, ``--base-virtaddr 0x100000000`` is enabled
> >>>       in default. You need to use this option only for changing the default value.
> >>>   > +.. note::
> >>> +
> >>> +   ``spp_primary`` tries to create memory pool in the same NUMA node where
> >>> +   it is launched. Under NUMA configuration, the NUMA node where ``spp_primary``
> >>> +   is launched and the NUMA node where NIC is connected can be different
> >>> +   (e.g. spp_primary runs in NUMA node 0 while NIC is connected with NUMA
> >>> +   node 1).
> >>> +   Such configuration may cause performance degradation. In general, under
> >>> +   NUMA configuration, it is best practice to use CPU and NIC which belongs
> >>> +   to the same NUMA node for best performance. So user should align those
> >>> +   when performance degradation makes the situation critical.
> >>> +
> >> I have two comments.
> >>
> >> 1. Could I confirm WHAT should be configured for avoiding such a performance loss?
> >
> > NUMA node
> > - primary process will run (that can be specified with -l parameter)
> > - NIC belongs
> > should be the same to avoid performance loss.
> >
> > In general, topology regarding with NUMA node
> > (e.g. CPU core, NIC which is connected with specific NUMA node)
> > can be found in lstopo command.
> I would like to make it clear as an instruction for users. From my understanding, users should confirm that
> - Understand layout of hardware architecture of NICs and CPUs.
> - Assign lcores while launching spp_primary by considering the layout identified before.
> 
> I understand your update for explanation is collect, but not so clear the purpose as instruction.
>I think it could be more agreeable if you start to explaining WHAT can
>be happened if you do not care about the layout (performance
>degradation actually), then HOW you get the layout by using `lstopo`
>and HOW you configure lcores by using `-l` option.

OK.
I think in general we can agree on the concept of the change.
I think it might be better that 
- I add description in the "Performance Optimization" section because it
is highly related with "Performance"!
- Firstly I should explain "what will happen" if such consideration
   is NOT taken into account by users
- Secondary I should describe "how" users can avoid such
performance degradations (e.g. use lstopo command, specify appropriate
lcore when starting up spp_primary process)

Anyway I think it is better to discuss above over "actual" changes.

Thanks
I will send revised version of the patch when it got available.

BR,
Hideyuki Yamashita

> Thanks,
> Yasufumi
> 
> >
> >
> >> 2. It seems something abruptly considering context of this section because you start talking about performance suddenly.
> >> If it must be considered as a mandatory configuration and should be explained this section, I agree your update.
> >> On the other hand, what do you think to move this note to the next "Performance Optimization" section.
> >> I think no need to be a note if you move it to the next secion.
> >
> > I agree with your idea.
> > I think it is NOT mandatory, thus should be moved to next section
> > 'without' note.
> >
> >>
> >> Thanks
> >>
> >>>    If ``spp_primary`` is launched with two or more lcores, forwarder or monitor
> >>>    is activated. The default is forwarder and monitor is optional in this case.
> >>>    If you use monitor thread, additional option ``--disp-stat`` is required.
> >
> > 


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2020-06-18  3:16 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-05  0:28 [spp] [PATCH 0/5] updates for catching up DPDK20.02 x-fn-spp-ml
2020-06-05  0:28 ` [spp] [PATCH 1/5] docs: remove unnecessary usage of ethtool x-fn-spp-ml
2020-06-05  0:28 ` [spp] [PATCH 2/5] docs: resolve broken reference link x-fn-spp-ml
2020-06-05  0:28 ` [spp] [PATCH 3/5] docs: catch up updates in dpdk-20.02 x-fn-spp-ml
2020-06-08  8:02   ` Yasufumi Ogawa
2020-06-16  8:28     ` [spp] (x-fn-spp-ml 781) " Hideyuki Yamashita
2020-06-05  0:28 ` [spp] [PATCH 4/5] makefile: change default build target x-fn-spp-ml
2020-06-05  0:28 ` [spp] [PATCH 5/5] docs: add note regarding NUMA configuration x-fn-spp-ml
2020-06-08  8:21   ` Yasufumi Ogawa
2020-06-16  8:30     ` [spp] (x-fn-spp-ml 783) " Hideyuki Yamashita
2020-06-16 16:18       ` Yasufumi Ogawa
2020-06-18  3:14         ` [spp] (x-fn-spp-ml 796) " Hideyuki Yamashita
2020-06-05  2:40 ` [spp] [PATCH 0/5] updates for catching up DPDK20.02 Itsuro ODA

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).