Report: Add 2n-icx 08/32008/5
authorTibor Frank <tifrank@cisco.com>
Fri, 16 Apr 2021 12:21:38 +0000 (14:21 +0200)
committerTibor Frank <tifrank@cisco.com>
Fri, 16 Apr 2021 12:40:15 +0000 (14:40 +0200)
Change-Id: I22e089ebb343bbb3fd057c1f1638942ea03f65fa
Signed-off-by: Tibor Frank <tifrank@cisco.com>
30 files changed:
docs/report/detailed_test_results/vpp_mrr_results/index.rst
docs/report/detailed_test_results/vpp_mrr_results_2n_icx/index.rst [new file with mode: 0644]
docs/report/detailed_test_results/vpp_performance_results/index.rst
docs/report/detailed_test_results/vpp_performance_results_2n_icx/index.rst [new file with mode: 0644]
docs/report/test_configuration/vpp_mrr_configuration/index.rst
docs/report/test_configuration/vpp_mrr_configuration_2n_icx/index.rst [new file with mode: 0644]
docs/report/test_configuration/vpp_performance_configuration/index.rst
docs/report/test_configuration/vpp_performance_configuration_2n_icx/index.rst [new file with mode: 0644]
docs/report/test_operational_data/vpp_performance_operational_data/index.rst
docs/report/test_operational_data/vpp_performance_operational_data_2n_icx/index.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/comparisons/2n-clx_vs_2n-icx_testbeds.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/comparisons/index.rst
docs/report/vpp_performance_tests/csit_release_notes.rst
docs/report/vpp_performance_tests/hdrh_packet_latency_by_percentile_graphs/2n_icx.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/packet_throughput_graphs/ip4-2n-icx-e810cq.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/packet_throughput_graphs/ip4.rst
docs/report/vpp_performance_tests/packet_throughput_graphs/ip6-2n-icx-e810cq.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/packet_throughput_graphs/ip6.rst
docs/report/vpp_performance_tests/packet_throughput_graphs/l2-2n-icx-e810cq.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/packet_throughput_graphs/l2.rst
docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip4-2n-icx-e810cq.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip4.rst
docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip6-2n-icx-e810cq.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip6.rst
docs/report/vpp_performance_tests/throughput_speedup_multi_core/l2-2n-icx-e810cq.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/throughput_speedup_multi_core/l2.rst
resources/tools/presentation/conf.py
resources/tools/presentation/generator_plots.py
resources/tools/presentation/input_data_files.py
resources/tools/presentation/specification.yaml

index 2e8f3aa..df9a55e 100644 (file)
@@ -7,6 +7,7 @@ VPP MRR
     i) `FD.io test executor vpp performance job 2n-skx`_,
     `FD.io test executor vpp performance job 3n-skx`_,
     `FD.io test executor vpp performance job 2n-clx`_,
+    `FD.io test executor vpp performance job 2n-icx`_,
     `FD.io test executor vpp performance job 2n-zn2`_,
     `FD.io test executor vpp performance job 3n-hsw`_,
     `FD.io test executor vpp performance job 3n-tsh`_,
diff --git a/docs/report/detailed_test_results/vpp_mrr_results_2n_icx/index.rst b/docs/report/detailed_test_results/vpp_mrr_results_2n_icx/index.rst
new file mode 100644 (file)
index 0000000..120fe86
--- /dev/null
@@ -0,0 +1,11 @@
+2n-icx
+------
+
+.. note::
+
+    Data sources for reported test results: i) `FD.io test executor vpp
+    performance job 2n-icx`_, ii) archived FD.io jobs test result `output files
+    <../../_static/archive/>`_.
+
+.. toctree::
+
index 054b9be..bcd8659 100644 (file)
@@ -7,6 +7,7 @@ VPP Throughput
     i) `FD.io test executor vpp performance job 2n-skx`_,
     `FD.io test executor vpp performance job 3n-skx`_,
     `FD.io test executor vpp performance job 2n-clx`_,
+    `FD.io test executor vpp performance job 2n-icx`_,
     `FD.io test executor vpp performance job 2n-zn2`_,
     `FD.io test executor vpp performance job 3n-hsw`_,
     `FD.io test executor vpp performance job 3n-tsh`_,
diff --git a/docs/report/detailed_test_results/vpp_performance_results_2n_icx/index.rst b/docs/report/detailed_test_results/vpp_performance_results_2n_icx/index.rst
new file mode 100644 (file)
index 0000000..120fe86
--- /dev/null
@@ -0,0 +1,11 @@
+2n-icx
+------
+
+.. note::
+
+    Data sources for reported test results: i) `FD.io test executor vpp
+    performance job 2n-icx`_, ii) archived FD.io jobs test result `output files
+    <../../_static/archive/>`_.
+
+.. toctree::
+
index 2e8f3aa..df9a55e 100644 (file)
@@ -7,6 +7,7 @@ VPP MRR
     i) `FD.io test executor vpp performance job 2n-skx`_,
     `FD.io test executor vpp performance job 3n-skx`_,
     `FD.io test executor vpp performance job 2n-clx`_,
+    `FD.io test executor vpp performance job 2n-icx`_,
     `FD.io test executor vpp performance job 2n-zn2`_,
     `FD.io test executor vpp performance job 3n-hsw`_,
     `FD.io test executor vpp performance job 3n-tsh`_,
diff --git a/docs/report/test_configuration/vpp_mrr_configuration_2n_icx/index.rst b/docs/report/test_configuration/vpp_mrr_configuration_2n_icx/index.rst
new file mode 100644 (file)
index 0000000..42f14fa
--- /dev/null
@@ -0,0 +1,11 @@
+2n-icx
+------
+
+.. note::
+
+    Data sources for reported test configurations: i) `FD.io test executor vpp
+    performance job 2n-icx`_, ii) archived FD.io jobs test result `output files
+    <../../_static/archive/>`_.
+
+.. toctree::
+
index 054b9be..bcd8659 100644 (file)
@@ -7,6 +7,7 @@ VPP Throughput
     i) `FD.io test executor vpp performance job 2n-skx`_,
     `FD.io test executor vpp performance job 3n-skx`_,
     `FD.io test executor vpp performance job 2n-clx`_,
+    `FD.io test executor vpp performance job 2n-icx`_,
     `FD.io test executor vpp performance job 2n-zn2`_,
     `FD.io test executor vpp performance job 3n-hsw`_,
     `FD.io test executor vpp performance job 3n-tsh`_,
diff --git a/docs/report/test_configuration/vpp_performance_configuration_2n_icx/index.rst b/docs/report/test_configuration/vpp_performance_configuration_2n_icx/index.rst
new file mode 100644 (file)
index 0000000..42f14fa
--- /dev/null
@@ -0,0 +1,11 @@
+2n-icx
+------
+
+.. note::
+
+    Data sources for reported test configurations: i) `FD.io test executor vpp
+    performance job 2n-icx`_, ii) archived FD.io jobs test result `output files
+    <../../_static/archive/>`_.
+
+.. toctree::
+
index 1f75069..fb8cc37 100644 (file)
@@ -3,8 +3,8 @@ VPP Throughput
 
 VPP operational data is generated by |csit-release| NDR-PDR throughput tests
 executed across physical testbeds hosted in LF FD.io labs: 3n-hsw, 3n-skx,
-2n-skx, 2n-clx, 3n-dnv, 2n-dnv, 3n-tsh, 2n-tx2. The data is collected at 100%
-PDR.
+2n-skx, 2n-clx, 2n-icx, 3n-dnv, 2n-dnv, 3n-tsh, 2n-tx2. The data is collected
+at 100% PDR.
 
 .. note::
 
@@ -12,6 +12,7 @@ PDR.
     i) `FD.io test executor vpp performance job 2n-skx`_,
     `FD.io test executor vpp performance job 3n-skx`_,
     `FD.io test executor vpp performance job 2n-clx`_,
+    `FD.io test executor vpp performance job 2n-icx`_,
     `FD.io test executor vpp performance job 2n-zn2`_,
     `FD.io test executor vpp performance job 3n-hsw`_,
     `FD.io test executor vpp performance job 3n-tsh`_,
diff --git a/docs/report/test_operational_data/vpp_performance_operational_data_2n_icx/index.rst b/docs/report/test_operational_data/vpp_performance_operational_data_2n_icx/index.rst
new file mode 100644 (file)
index 0000000..e71abf8
--- /dev/null
@@ -0,0 +1,11 @@
+2n-icx
+------
+
+.. note::
+
+    Data sources for reported test operational data: i) `FD.io test executor vpp
+    performance job 2n-icx`_, ii) archived FD.io jobs test result `output files
+    <../../_static/archive/>`_.
+
+.. toctree::
+
diff --git a/docs/report/vpp_performance_tests/comparisons/2n-clx_vs_2n-icx_testbeds.rst b/docs/report/vpp_performance_tests/comparisons/2n-clx_vs_2n-icx_testbeds.rst
new file mode 100644 (file)
index 0000000..dac691e
--- /dev/null
@@ -0,0 +1,55 @@
+2n-Clx vs 2n-Icx Testbeds
+-------------------------
+
+Relative comparison of |vpp-release| packet throughput (NDR, PDR and
+MRR) is calculated for the same tests executed on 2-Node Cascadelake (2n-
+clx) and 2-Node Icelake (2n-icx) physical testbed types, in 1-core,
+2-core and 4-core configurations.
+
+.. note::
+
+    Test results have been generated by
+    `FD.io test executor vpp performance job 2n-icx`_ and
+    `FD.io test executor vpp performance job 2n-clx`_
+    with RF result
+    files csit-vpp-perf-|srelease|-\*.zip
+    `archived here <../../_static/archive/>`_.
+
+NDR Comparison
+~~~~~~~~~~~~~~
+
+Comparison tables in HTML, ASCII and CSV formats:
+
+  - `HTML 1c NDR comparison <performance-compare-testbeds-2n-clx-2n-icx-1c-ndr.html>`_
+  - `HTML 2c NDR comparison <performance-compare-testbeds-2n-clx-2n-icx-2c-ndr.html>`_
+  - `ASCII 1c NDR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-1c-ndr.txt>`_
+  - `ASCII 2c NDR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-2c-ndr.txt>`_
+  - `CSV 1c NDR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-1c-ndr-csv.csv>`_
+  - `CSV 2c NDR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-2c-ndr-csv.csv>`_
+
+PDR Comparison
+~~~~~~~~~~~~~~
+
+Comparison tables in HTML, ASCII and CSV formats:
+
+  - `HTML 1c PDR comparison <performance-compare-testbeds-2n-clx-2n-icx-1c-pdr.html>`_
+  - `HTML 2c PDR comparison <performance-compare-testbeds-2n-clx-2n-icx-2c-pdr.html>`_
+  - `ASCII 1c PDR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-1c-pdr.txt>`_
+  - `ASCII 2c PDR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-2c-pdr.txt>`_
+  - `CSV 1c PDR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-1c-pdr-csv.csv>`_
+  - `CSV 2c PDR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-2c-pdr-csv.csv>`_
+
+MRR Comparison
+~~~~~~~~~~~~~~
+
+Comparison tables in HTML, ASCII and CSV formats:
+
+  - `HTML 1c MRR comparison <performance-compare-testbeds-2n-clx-2n-icx-1c-mrr.html>`_
+  - `HTML 2c MRR comparison <performance-compare-testbeds-2n-clx-2n-icx-2c-mrr.html>`_
+  - `HTML 4c MRR comparison <performance-compare-testbeds-2n-clx-2n-icx-4c-mrr.html>`_
+  - `ASCII 1c MRR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-1c-mrr.txt>`_
+  - `ASCII 2c MRR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-2c-mrr.txt>`_
+  - `ASCII 4c MRR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-4c-mrr.txt>`_
+  - `CSV 1c MRR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-1c-mrr-csv.csv>`_
+  - `CSV 2c MRR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-2c-mrr-csv.csv>`_
+  - `CSV 4c MRR comparison <../../_static/vpp/performance-compare-testbeds-2n-clx-2n-icx-4c-mrr-csv.csv>`_
index 9370d56..c9d7325 100644 (file)
@@ -15,5 +15,6 @@ Comparisons
     2n-skx_vs_2n-clx_testbeds
     2n-clx_vs_3n-hsw_testbeds
     3n-skx_vs_2n-skx_testbeds
+    2n-clx_vs_2n-skx_testbeds
     nic_comparison
     soak_vs_ndr
index eff392d..a70061d 100644 (file)
@@ -99,5 +99,5 @@ List of RCAs in |csit-release| for VPP performance changes:
 | #  | JiraID                                  | Issue Description                                                                                         |
 +====+=========================================+===========================================================================================================+
 |  1 | `VPP-1972                               | One VPP change has decreased performance of NAT44ed processing, both slow path and fast path.             |
-|    | <https://jira.fd.io/browse/VPP-1972>`   |                                                                                                           |
+|    | <https://jira.fd.io/browse/VPP-1972>`_  |                                                                                                           |
 +----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_by_percentile_graphs/2n_icx.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_by_percentile_graphs/2n_icx.rst
new file mode 100644 (file)
index 0000000..4e6f59b
--- /dev/null
@@ -0,0 +1,3 @@
+2n-icx
+======
+
diff --git a/docs/report/vpp_performance_tests/packet_throughput_graphs/ip4-2n-icx-e810cq.rst b/docs/report/vpp_performance_tests/packet_throughput_graphs/ip4-2n-icx-e810cq.rst
new file mode 100644 (file)
index 0000000..e19c44f
--- /dev/null
@@ -0,0 +1,114 @@
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <script type="text/javascript">
+
+        function getDocHeight(doc) {
+            doc = doc || document;
+            var body = doc.body, html = doc.documentElement;
+            var height = Math.max( body.scrollHeight, body.offsetHeight,
+                html.clientHeight, html.scrollHeight, html.offsetHeight );
+            return height;
+        }
+
+        function setIframeHeight(id) {
+            var ifrm = document.getElementById(id);
+            var doc = ifrm.contentDocument? ifrm.contentDocument:
+                ifrm.contentWindow.document;
+            ifrm.style.visibility = 'hidden';
+            ifrm.style.height = "10px"; // reset to minimal height ...
+            // IE opt. for bing/msn needs a bit added or scrollbar appears
+            ifrm.style.height = getDocHeight( doc ) + 4 + "px";
+            ifrm.style.visibility = 'visible';
+        }
+
+    </script>
+
+2n-icx-e810cq
+~~~~~~~~~~~~~
+
+64b-2t1c-ip4routing-base-scale-avf
+----------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-avf-ndr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-avf-ndr}
+            \label{fig:2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-avf-ndr}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-avf-pdr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-avf-pdr}
+            \label{fig:2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-avf-pdr}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+64b-2t1c-ip4routing-base-scale-dpdk
+-----------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-dpdk-ndr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-dpdk-ndr}
+            \label{fig:2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-dpdk-ndr}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-dpdk-pdr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-dpdk-pdr}
+            \label{fig:2n-icx-e810cq-64b-2t1c-ip4routing-base-scale-dpdk-pdr}
+    \end{figure}
index e788488..2cf68af 100644 (file)
@@ -24,6 +24,7 @@ CSIT source code for the test cases used for plots can be found in
     ip4-2n-clx-xxv710
     ip4-2n-clx-x710
     ip4-2n-clx-cx556a
+    ip4-2n-icx-e810cq
     ip4-2n-zn2-xxv710
     ip4-2n-zn2-x710
     ip4-3n-hsw-xl710
diff --git a/docs/report/vpp_performance_tests/packet_throughput_graphs/ip6-2n-icx-e810cq.rst b/docs/report/vpp_performance_tests/packet_throughput_graphs/ip6-2n-icx-e810cq.rst
new file mode 100644 (file)
index 0000000..92e168d
--- /dev/null
@@ -0,0 +1,114 @@
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <script type="text/javascript">
+
+        function getDocHeight(doc) {
+            doc = doc || document;
+            var body = doc.body, html = doc.documentElement;
+            var height = Math.max( body.scrollHeight, body.offsetHeight,
+                html.clientHeight, html.scrollHeight, html.offsetHeight );
+            return height;
+        }
+
+        function setIframeHeight(id) {
+            var ifrm = document.getElementById(id);
+            var doc = ifrm.contentDocument? ifrm.contentDocument:
+                ifrm.contentWindow.document;
+            ifrm.style.visibility = 'hidden';
+            ifrm.style.height = "10px"; // reset to minimal height ...
+            // IE opt. for bing/msn needs a bit added or scrollbar appears
+            ifrm.style.height = getDocHeight( doc ) + 4 + "px";
+            ifrm.style.visibility = 'visible';
+        }
+
+    </script>
+
+2n-icx-e810cq
+~~~~~~~~~~~~~
+
+78b-2t1c-ip6routing-base-scale-avf
+----------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="101" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-avf-ndr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-avf-ndr}
+            \label{fig:2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-avf-ndr}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="102" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-avf-pdr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-avf-pdr}
+            \label{fig:2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-avf-pdr}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+78b-2t1c-ip6routing-base-scale-dpdk
+-----------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-dpdk-ndr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-dpdk-ndr}
+            \label{fig:2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-dpdk-ndr}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-dpdk-pdr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-dpdk-pdr}
+            \label{fig:2n-icx-e810cq-78b-2t1c-ip6routing-base-scale-dpdk-pdr}
+    \end{figure}
index 13b0dbe..e715010 100644 (file)
@@ -24,6 +24,7 @@ CSIT source code for the test cases used for plots can be found in
     ip6-2n-clx-xxv710
     ip6-2n-clx-x710
     ip6-2n-clx-cx556a
+    ip6-2n-icx-e810cq
     ip6-2n-zn2-xxv710
     ip6-2n-zn2-x710
     ip6-3n-hsw-xl710
diff --git a/docs/report/vpp_performance_tests/packet_throughput_graphs/l2-2n-icx-e810cq.rst b/docs/report/vpp_performance_tests/packet_throughput_graphs/l2-2n-icx-e810cq.rst
new file mode 100644 (file)
index 0000000..22829a3
--- /dev/null
@@ -0,0 +1,114 @@
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <script type="text/javascript">
+
+        function getDocHeight(doc) {
+            doc = doc || document;
+            var body = doc.body, html = doc.documentElement;
+            var height = Math.max( body.scrollHeight, body.offsetHeight,
+                html.clientHeight, html.scrollHeight, html.offsetHeight );
+            return height;
+        }
+
+        function setIframeHeight(id) {
+            var ifrm = document.getElementById(id);
+            var doc = ifrm.contentDocument? ifrm.contentDocument:
+                ifrm.contentWindow.document;
+            ifrm.style.visibility = 'hidden';
+            ifrm.style.height = "10px"; // reset to minimal height ...
+            // IE opt. for bing/msn needs a bit added or scrollbar appears
+            ifrm.style.height = getDocHeight( doc ) + 4 + "px";
+            ifrm.style.visibility = 'visible';
+        }
+
+    </script>
+
+2n-icx-e810cq
+~~~~~~~~~~~~~
+
+64b-2t1c-l2switching-base-scale-avf
+-----------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="121" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-2t1c-l2switching-base-scale-avf-ndr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-2t1c-l2switching-base-scale-avf-ndr}
+            \label{fig:2n-icx-e810cq-64b-2t1c-l2switching-base-scale-avf-ndr}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="122" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-2t1c-l2switching-base-scale-avf-pdr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-2t1c-l2switching-base-scale-avf-pdr}
+            \label{fig:2n-icx-e810cq-64b-2t1c-l2switching-base-scale-avf-pdr}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+64b-2t1c-l2switching-base-scale-dpdk
+------------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-2t1c-l2switching-base-scale-dpdk-ndr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-2t1c-l2switching-base-scale-dpdk-ndr}
+            \label{fig:2n-icx-e810cq-64b-2t1c-l2switching-base-scale-dpdk-ndr}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-2t1c-l2switching-base-scale-dpdk-pdr.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-2t1c-l2switching-base-scale-dpdk-pdr}
+            \label{fig:2n-icx-e810cq-64b-2t1c-l2switching-base-scale-dpdk-pdr}
+    \end{figure}
index ce6a3f1..d126910 100644 (file)
@@ -24,6 +24,7 @@ CSIT source code for the test cases used for plots can be found in
     l2-2n-clx-xxv710
     l2-2n-clx-x710
     l2-2n-clx-cx556a
+    l2-2n-icx-e810cq
     l2-2n-zn2-xxv710
     l2-2n-zn2-x710
     l2-3n-hsw-xl710
diff --git a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip4-2n-icx-e810cq.rst b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip4-2n-icx-e810cq.rst
new file mode 100644 (file)
index 0000000..bddaae0
--- /dev/null
@@ -0,0 +1,114 @@
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <script type="text/javascript">
+
+        function getDocHeight(doc) {
+            doc = doc || document;
+            var body = doc.body, html = doc.documentElement;
+            var height = Math.max( body.scrollHeight, body.offsetHeight,
+                html.clientHeight, html.scrollHeight, html.offsetHeight );
+            return height;
+        }
+
+        function setIframeHeight(id) {
+            var ifrm = document.getElementById(id);
+            var doc = ifrm.contentDocument? ifrm.contentDocument:
+                ifrm.contentWindow.document;
+            ifrm.style.visibility = 'hidden';
+            ifrm.style.height = "10px"; // reset to minimal height ...
+            // IE opt. for bing/msn needs a bit added or scrollbar appears
+            ifrm.style.height = getDocHeight( doc ) + 4 + "px";
+            ifrm.style.visibility = 'visible';
+        }
+
+    </script>
+
+2n-icx-e810cq
+~~~~~~~~~~~~~
+
+64b-ip4routing-base-scale-avf
+-----------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-ip4routing-base-scale-avf-ndr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-ip4routing-base-scale-avf-ndr-tsa}
+            \label{fig:2n-icx-e810cq-64b-ip4routing-base-scale-avf-ndr-tsa}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-ip4routing-base-scale-avf-pdr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-ip4routing-base-scale-avf-pdr-tsa}
+            \label{fig:2n-icx-e810cq-64b-ip4routing-base-scale-avf-pdr-tsa}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+64b-ip4routing-base-scale-dpdk
+------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-ip4routing-base-scale-dpdk-ndr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-ip4routing-base-scale-dpdk-ndr-tsa}
+            \label{fig:2n-icx-e810cq-64b-ip4routing-base-scale-dpdk-ndr-tsa}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-ip4routing-base-scale-dpdk-pdr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-ip4routing-base-scale-dpdk-pdr-tsa}
+            \label{fig:2n-icx-e810cq-64b-ip4routing-base-scale-dpdk-pdr-tsa}
+    \end{figure}
index ca8ad1a..845ef7a 100644 (file)
@@ -24,6 +24,7 @@ CSIT source code for the test cases used for plots can be found in
     ip4-3n-skx-xxv710
     ip4-3n-skx-x710
     ip4-2n-clx-xxv710
+    ip4-2n-icx-e810cq
     ip4-2n-clx-x710
     ip4-2n-clx-cx556a
     ip4-2n-zn2-xxv710
diff --git a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip6-2n-icx-e810cq.rst b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip6-2n-icx-e810cq.rst
new file mode 100644 (file)
index 0000000..c53280b
--- /dev/null
@@ -0,0 +1,114 @@
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <script type="text/javascript">
+
+        function getDocHeight(doc) {
+            doc = doc || document;
+            var body = doc.body, html = doc.documentElement;
+            var height = Math.max( body.scrollHeight, body.offsetHeight,
+                html.clientHeight, html.scrollHeight, html.offsetHeight );
+            return height;
+        }
+
+        function setIframeHeight(id) {
+            var ifrm = document.getElementById(id);
+            var doc = ifrm.contentDocument? ifrm.contentDocument:
+                ifrm.contentWindow.document;
+            ifrm.style.visibility = 'hidden';
+            ifrm.style.height = "10px"; // reset to minimal height ...
+            // IE opt. for bing/msn needs a bit added or scrollbar appears
+            ifrm.style.height = getDocHeight( doc ) + 4 + "px";
+            ifrm.style.visibility = 'visible';
+        }
+
+    </script>
+
+2n-icx-e810cq
+~~~~~~~~~~~~~
+
+78b-ip6routing-base-scale-avf
+-----------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="101" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-78b-ip6routing-base-scale-avf-ndr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-78b-ip6routing-base-scale-avf-ndr-tsa}
+            \label{fig:2n-icx-e810cq-78b-ip6routing-base-scale-avf-ndr-tsa}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="102" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-78b-ip6routing-base-scale-avf-pdr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-78b-ip6routing-base-scale-avf-pdr-tsa}
+            \label{fig:2n-icx-e810cq-78b-ip6routing-base-scale-avf-pdr-tsa}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+78b-ip6routing-base-scale-dpdk
+------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-78b-ip6routing-base-scale-dpdk-ndr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-78b-ip6routing-base-scale-dpdk-ndr-tsa}
+            \label{fig:2n-icx-e810cq-78b-ip6routing-base-scale-dpdk-ndr-tsa}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-78b-ip6routing-base-scale-dpdk-pdr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-78b-ip6routing-base-scale-dpdk-pdr-tsa}
+            \label{fig:2n-icx-e810cq-78b-ip6routing-base-scale-dpdk-pdr-tsa}
+    \end{figure}
index f6df789..4f63785 100644 (file)
@@ -26,6 +26,7 @@ CSIT source code for the test cases used for plots can be found in
     ip6-2n-clx-xxv710
     ip6-2n-clx-x710
     ip6-2n-clx-cx556a
+    ip6-2n-icx-e810cq
     ip6-2n-zn2-xxv710
     ip6-2n-zn2-x710
     ip6-3n-hsw-xl710
diff --git a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/l2-2n-icx-e810cq.rst b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/l2-2n-icx-e810cq.rst
new file mode 100644 (file)
index 0000000..8fd92e7
--- /dev/null
@@ -0,0 +1,114 @@
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <script type="text/javascript">
+
+        function getDocHeight(doc) {
+            doc = doc || document;
+            var body = doc.body, html = doc.documentElement;
+            var height = Math.max( body.scrollHeight, body.offsetHeight,
+                html.clientHeight, html.scrollHeight, html.offsetHeight );
+            return height;
+        }
+
+        function setIframeHeight(id) {
+            var ifrm = document.getElementById(id);
+            var doc = ifrm.contentDocument? ifrm.contentDocument:
+                ifrm.contentWindow.document;
+            ifrm.style.visibility = 'hidden';
+            ifrm.style.height = "10px"; // reset to minimal height ...
+            // IE opt. for bing/msn needs a bit added or scrollbar appears
+            ifrm.style.height = getDocHeight( doc ) + 4 + "px";
+            ifrm.style.visibility = 'visible';
+        }
+
+    </script>
+
+2n-icx-e810cq
+~~~~~~~~~~~~~
+
+64b-l2switching-base-scale-avf
+-------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="121" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-l2switching-base-scale-avf-ndr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-l2switching-base-scale-avf-ndr-tsa}
+            \label{fig:2n-icx-e810cq-64b-l2switching-base-scale-avf-ndr-tsa}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="122" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-l2switching-base-scale-avf-pdr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-l2switching-base-scale-avf-pdr-tsa}
+            \label{fig:2n-icx-e810cq-64b-l2switching-base-scale-avf-pdr-tsa}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+64b-l2switching-base-scale-dpdk
+-------------------------------
+
+.. raw:: html
+
+    <center>
+    <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-l2switching-base-scale-dpdk-ndr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-l2switching-base-scale-dpdk-ndr-tsa}
+            \label{fig:2n-icx-e810cq-64b-l2switching-base-scale-dpdk-ndr-tsa}
+    \end{figure}
+
+.. raw:: latex
+
+    \clearpage
+
+.. raw:: html
+
+    <center>
+    <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-icx-e810cq-64b-l2switching-base-scale-dpdk-pdr-tsa.html"></iframe>
+    <p><br></p>
+    </center>
+
+.. raw:: latex
+
+    \begin{figure}[H]
+        \centering
+            \graphicspath{{../_build/_static/vpp/}}
+            \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-icx-e810cq-64b-l2switching-base-scale-dpdk-pdr-tsa}
+            \label{fig:2n-icx-e810cq-64b-l2switching-base-scale-dpdk-pdr-tsa}
+    \end{figure}
index c076333..da88648 100644 (file)
@@ -26,6 +26,7 @@ CSIT source code for the test cases used for plots can be found in
     l2-2n-clx-xxv710
     l2-2n-clx-x710
     l2-2n-clx-cx556a
+    l2-2n-icx-e810cq
     l2-2n-zn2-xxv710
     l2-2n-zn2-x710
     l2-3n-hsw-xl710
index 1b8c1f9..ac29fe4 100644 (file)
@@ -99,6 +99,7 @@ rst_epilog = u"""
 .. _FD.io test executor vpp performance job 3n-dnv: https://jenkins.fd.io/job/csit-vpp-perf-report-iterative-{srelease}-3n-dnv
 .. _FD.io test executor vpp performance job 2n-dnv: https://jenkins.fd.io/job/csit-vpp-perf-report-iterative-{srelease}-2n-dnv
 .. _FD.io test executor vpp performance job 2n-clx: https://jenkins.fd.io/job/csit-vpp-perf-report-iterative-{srelease}-2n-clx
+.. _FD.io test executor vpp performance job 2n-icx: https://jenkins.fd.io/job/csit-vpp-perf-report-iterative-{srelease}-2n-icx
 .. _FD.io test executor vpp performance job 2n-zn2: https://jenkins.fd.io/job/csit-vpp-perf-report-iterative-{srelease}-2n-zn2
 .. _FD.io test executor vpp device jobs using Ubuntu: https://jenkins.fd.io/view/csit/job/csit-vpp-device-{srelease}-ubuntu1804-1n-skx
 .. _FD.io VPP compile job: https://jenkins.fd.io/view/vpp/job/vpp-merge-{srelease}-ubuntu1804-x86_64/
index 1bfbda1..965951a 100644 (file)
@@ -1046,6 +1046,8 @@ def plot_tsa_name(plot, input_data):
                 limit = plot[u"limits"][u"nic"][u"x553"]
             elif u"cx556a" in test_name:
                 limit = plot[u"limits"][u"nic"][u"cx556a"]
+            elif u"e810cq" in test_name:
+                limit = plot[u"limits"][u"nic"][u"e810cq"]
             else:
                 limit = 0
             if limit > nic_limit:
index d4cc8c6..63f9197 100644 (file)
@@ -282,25 +282,25 @@ def download_and_unzip_data_file(spec, job, build, pid):
                         xml_file.write(file_content)
                 break
 
-    if not success:
-        # Try to download .zip from jenkins.fd.io
-        file_name = spec.input[u"zip-file-name"]
-        download_path = spec.input[u"zip-download-path"]
-        if job.startswith(u"csit-"):
-            url = spec.environment[u"urls"][u"URL[JENKINS,CSIT]"]
-        else:
-            raise PresentationError(f"No url defined for the job {job}.")
-
-        full_name = download_path.format(
-            job=job, build=build[u"build"], filename=file_name
-        )
-        url = u"{0}/{1}".format(url, full_name)
-        new_name = join(
-            spec.environment[u"paths"][u"DIR[WORKING,DATA]"],
-            f"{job}{SEPARATOR}{build[u'build']}{SEPARATOR}{file_name}"
-        )
-        logging.info(f"Downloading {url}")
-        success, downloaded_name = _download_file(url, new_name)
+    if not success:
+        # Try to download .zip from jenkins.fd.io
+        file_name = spec.input[u"zip-file-name"]
+        download_path = spec.input[u"zip-download-path"]
+        if job.startswith(u"csit-"):
+            url = spec.environment[u"urls"][u"URL[JENKINS,CSIT]"]
+        else:
+            raise PresentationError(f"No url defined for the job {job}.")
+    #
+        full_name = download_path.format(
+            job=job, build=build[u"build"], filename=file_name
+        )
+        url = u"{0}/{1}".format(url, full_name)
+        new_name = join(
+            spec.environment[u"paths"][u"DIR[WORKING,DATA]"],
+            f"{job}{SEPARATOR}{build[u'build']}{SEPARATOR}{file_name}"
+        )
+        logging.info(f"Downloading {url}")
+        success, downloaded_name = _download_file(url, new_name)
 
     if success and downloaded_name.endswith(u".zip"):
         if not is_zipfile(downloaded_name):
index cdc3158..276bd7b 100644 (file)
@@ -41,6 +41,7 @@
     DIR[DTR,PERF,VPP,2N,SKX]: "{DIR[DTR]}/vpp_performance_results_2n_skx"
     DIR[DTR,PERF,VPP,2N,ZN2]: "{DIR[DTR]}/vpp_performance_results_2n_zn2"
     DIR[DTR,PERF,VPP,2N,CLX]: "{DIR[DTR]}/vpp_performance_results_2n_clx"
+    DIR[DTR,PERF,VPP,2N,ICX]: "{DIR[DTR]}/vpp_performance_results_2n_icx"
     DIR[DTR,PERF,VPP,3N,TSH]: "{DIR[DTR]}/vpp_performance_results_3n_tsh"
     DIR[DTR,PERF,VPP,2N,TX2]: "{DIR[DTR]}/vpp_performance_results_2n_tx2"
     DIR[DTR,PERF,VPP,3N,DNV]: "{DIR[DTR]}/vpp_performance_results_3n_dnv"
@@ -51,6 +52,7 @@
     DIR[DTR,MRR,VPP,2N,SKX]: "{DIR[DTR]}/vpp_mrr_results_2n_skx"
     DIR[DTR,MRR,VPP,2N,ZN2]: "{DIR[DTR]}/vpp_mrr_results_2n_zn2"
     DIR[DTR,MRR,VPP,2N,CLX]: "{DIR[DTR]}/vpp_mrr_results_2n_clx"
+    DIR[DTR,MRR,VPP,2N,ICX]: "{DIR[DTR]}/vpp_mrr_results_2n_icx"
     DIR[DTR,MRR,VPP,3N,TSH]: "{DIR[DTR]}/vpp_mrr_results_3n_tsh"
     DIR[DTR,MRR,VPP,2N,TX2]: "{DIR[DTR]}/vpp_mrr_results_2n_tx2"
     DIR[DTR,MRR,VPP,3N,DNV]: "{DIR[DTR]}/vpp_mrr_results_3n_dnv"
@@ -65,6 +67,7 @@
     DIR[DTC,PERF,VPP,2N,SKX]: "{DIR[DTC]}/vpp_performance_configuration_2n_skx"
     DIR[DTC,PERF,VPP,2N,ZN2]: "{DIR[DTC]}/vpp_performance_configuration_2n_zn2"
     DIR[DTC,PERF,VPP,2N,CLX]: "{DIR[DTC]}/vpp_performance_configuration_2n_clx"
+    DIR[DTC,PERF,VPP,2N,ICX]: "{DIR[DTC]}/vpp_performance_configuration_2n_icx"
     DIR[DTC,PERF,VPP,3N,TSH]: "{DIR[DTC]}/vpp_performance_configuration_3n_tsh"
     DIR[DTC,PERF,VPP,2N,TX2]: "{DIR[DTC]}/vpp_performance_configuration_2n_tx2"
     DIR[DTC,PERF,VPP,3N,DNV]: "{DIR[DTC]}/vpp_performance_configuration_3n_dnv"
@@ -75,6 +78,7 @@
     DIR[DTC,MRR,VPP,2N,SKX]: "{DIR[DTC]}/vpp_mrr_configuration_2n_skx"
     DIR[DTC,MRR,VPP,2N,ZN2]: "{DIR[DTC]}/vpp_mrr_configuration_2n_zn2"
     DIR[DTC,MRR,VPP,2N,CLX]: "{DIR[DTC]}/vpp_mrr_configuration_2n_clx"
+    DIR[DTC,MRR,VPP,2N,ICX]: "{DIR[DTC]}/vpp_mrr_configuration_2n_icx"
     DIR[DTC,MRR,VPP,3N,TSH]: "{DIR[DTC]}/vpp_mrr_configuration_3n_tsh"
     DIR[DTC,MRR,VPP,2N,TX2]: "{DIR[DTC]}/vpp_mrr_configuration_2n_tx2"
     DIR[DTC,MRR,VPP,3N,DNV]: "{DIR[DTC]}/vpp_mrr_configuration_3n_dnv"
@@ -89,6 +93,7 @@
     DIR[DTO,PERF,VPP,2N,SKX]: "{DIR[DTO]}/vpp_performance_operational_data_2n_skx"
     DIR[DTO,PERF,VPP,2N,ZN2]: "{DIR[DTO]}/vpp_performance_operational_data_2n_zn2"
     DIR[DTO,PERF,VPP,2N,CLX]: "{DIR[DTO]}/vpp_performance_operational_data_2n_clx"
+    DIR[DTO,PERF,VPP,2N,ICX]: "{DIR[DTO]}/vpp_performance_operational_data_2n_icx"
     DIR[DTO,PERF,VPP,3N,TSH]: "{DIR[DTO]}/vpp_performance_operational_data_3n_tsh"
     DIR[DTO,PERF,VPP,2N,TX2]: "{DIR[DTO]}/vpp_performance_operational_data_2n_tx2"
     DIR[DTO,PERF,VPP,3N,DNV]: "{DIR[DTO]}/vpp_performance_operational_data_3n_dnv"
       xxv710: 35800000
       xl710: 35800000
       cx556a: 148809523.81
+      e810cq: 148809523.81
 
     link:
       10ge: 14880952.38
       csit-dpdk-perf-report-iterative-2101-2n-clx:
         - 12  # rls2101 NDRPDR iter env 6
 
+    # 2n-icx
+
+    plot-vpp-throughput-lat-tsa-2n-icx:
+      intel-csit-vpp-perf-report-iterative-2101-2n-icx:
+        - 1   # master NDRPDR iter env 6
+
+    plot-vpp-hdrh-lat-2n-icx:
+      intel-csit-vpp-perf-report-iterative-2101-2n-icx:
+        - 1   # master NDRPDR iter env 6
+
     # 3n-tsh
 
     plot-vpp-throughput-lat-tsa-3n-tsh:
         - 17  # rls2101.rel NDRPDR cov env 6 2n-clx-vhost-01
         - 18  # rls2101.rel NDRPDR cov env 6 2n-clx-vts-00
 
+    vpp-perf-results-2n-icx:
+      intel-csit-vpp-perf-report-iterative-2101-2n-icx:
+        - 1   # master NDRPDR iter env 6
+
     vpp-perf-results-3n-tsh:
       csit-vpp-perf-report-coverage-2101-3n-tsh:
         - 1   # rls2101.rel NDRPDR cov env 6 3n-tsh-ip4-00
       csit-vpp-perf-report-iterative-2101-2n-clx:
         - 53  # rls2101.rel MRR iter env 6
 
+    vpp-mrr-results-2n-icx:
+      intel-csit-vpp-perf-report-iterative-2101-2n-icx:
+        - 1   # master NDRPDR iter env 6
+
     vpp-mrr-results-3n-tsh:
       csit-vpp-perf-report-iterative-2101-3n-tsh:
         - 22  # rls2101.rel MRR iter env 6
         - 131 # rls2101.rel NDRPDR iter MLX env 6
         - 132 # rls2101.rel NDRPDR iter MLX env 6
 
+    vpp-compare-testbeds-clx-icx-ref:
+      csit-vpp-perf-report-iterative-2101-2n-clx:
+        - 54  # rls2101.rel NDRPDR iter env 6
+        - 59  # rls2101.rel NDRPDR iter env 6
+        - 60  # rls2101.rel NDRPDR iter env 6
+        - 63  # rls2101.rel NDRPDR iter env 6
+        - 66  # rls2101.rel NDRPDR iter env 6
+        - 68  # rls2101.rel NDRPDR iter env 6
+        - 73  # rls2101.rel NDRPDR iter env 6
+        - 75  # rls2101.rel NDRPDR iter env 6
+        - 86  # rls2101.rel NDRPDR iter env 6
+        - 90  # rls2101.rel NDRPDR iter env 6
+    vpp-compare-testbeds-clx-icx-cmp:
+      intel-csit-vpp-perf-report-iterative-2101-2n-icx:
+        - 1   # master NDRPDR iter env 6
+
     vpp-compare-testbeds-hsw-clx-ref:
       csit-vpp-perf-report-iterative-2101-3n-hsw:
         - 64  # rls2101.rel NDRPDR iter env 6
       csit-vpp-perf-report-iterative-2101-2n-clx:
         - 53  # rls2101.rel MRR iter env 6
 
+    vpp-compare-testbeds-mrr-clx-icx-ref:
+      csit-vpp-perf-report-iterative-2101-2n-clx:
+        - 53  # rls2101.rel MRR iter env 6
+    vpp-compare-testbeds-mrr-clx-icx-cmp:
+      intel-csit-vpp-perf-report-iterative-2101-2n-icx:
+        - 1   # master NDRPDR iter env 6
+
     dpdk-compare-testbeds-ref:
       csit-dpdk-perf-report-iterative-2101-3n-hsw:
         - 11  # rls2101 NDRPDR iter env 6
       - ".gz"
       - ".zip"
     download-path:
-      - "{job}/{build}/{filename}"
       - "{job}/{build}/archives/{filename}"
+      - "{job}/{build}/{filename}"
     extract: "output.xml"
 
     zip-file-name: "robot-plugin.zip"
       - 17  # rls2101.rel NDRPDR cov env 6 2n-clx-vhost-01
       - 18  # rls2101.rel NDRPDR cov env 6 2n-clx-vts-00
 
+    intel-csit-vpp-perf-report-iterative-2101-2n-icx:
+      - 1   # master NDRPDR iter env 6
+
     csit-vpp-perf-report-iterative-2009-2n-zn2:
       - 15  # rls2009 MRR iter env 5
       - 17  # rls2009 NDRPDR iter env 5
     - "3n-hsw xl710, 2n-clx xxv710 - testbeds and NICs tested."
     - "Diff - difference between 3n-hsw xl710 and 2n-clx xxv710 testbeds."
 
+# VPP Comparison Across Testbeds 2n-clx to 2n-icx 1c ndr
+- type: "table"
+  title: "VPP Comparison Across Testbeds 2n-clx to 2n-icx 1c ndr"
+  algorithm: "table_comparison"
+  output-file: "{DIR[STATIC,VPP]}/performance-compare-testbeds-2n-clx-2n-icx-1c-ndr"
+  include-tests: "NDR" # "PDR" | "NDR" | "MRR"
+  filter: "('NIC_Intel-XXV710' or 'NIC_Intel-E810CQ') and 'NDRPDR' and '1C'"
+  columns:
+    - title: "2n-clx xxv710"
+      data-set: "vpp-compare-testbeds-clx-icx-ref"
+      tag: "NIC_Intel-XXV710"
+    - title: "2n-icx e810cq"
+      data-set: "vpp-compare-testbeds-clx-icx-cmp"
+      tag: "NIC_Intel-E810CQ"
+  comparisons:
+    - title: "Diff"
+      reference: 1
+      compare: 2
+  legend:
+    - ""
+    - "2n-clx xxv710, 2n-icx e810cq - testbeds and NICs tested."
+    - "Diff - difference between 2n-clx xxv710 and 2n-icx e810cq testbeds."
+
+# VPP Comparison Across Testbeds 2n-clx to 2n-icx 2c ndr
+- type: "table"
+  title: "VPP Comparison Across Testbeds 2n-clx to 2n-icx 2c ndr"
+  algorithm: "table_comparison"
+  output-file: "{DIR[STATIC,VPP]}/performance-compare-testbeds-2n-clx-2n-icx-2c-ndr"
+  include-tests: "NDR" # "PDR" | "NDR" | "MRR"
+  filter: "('NIC_Intel-XXV710' or 'NIC_Intel-E810CQ') and 'NDRPDR' and '2C'"
+  columns:
+    - title: "2n-clx xxv710"
+      data-set: "vpp-compare-testbeds-clx-icx-ref"
+      tag: "NIC_Intel-XXV710"
+    - title: "2n-icx e810cq"
+      data-set: "vpp-compare-testbeds-clx-icx-cmp"
+      tag: "NIC_Intel-E810CQ"
+  comparisons:
+    - title: "Diff"
+      reference: 1
+      compare: 2
+  legend:
+    - ""
+    - "2n-clx xxv710, 2n-icx e810cq - testbeds and NICs tested."
+    - "Diff - difference between 2n-clx xxv710 and 2n-icx e810cq testbeds."
+
+# VPP Comparison Across Testbeds 2n-clx to 2n-icx 1c pdr
+- type: "table"
+  title: "VPP Comparison Across Testbeds 2n-clx to 2n-icx 1c pdr"
+  algorithm: "table_comparison"
+  output-file: "{DIR[STATIC,VPP]}/performance-compare-testbeds-2n-clx-2n-icx-1c-pdr"
+  include-tests: "PDR" # "PDR" | "NDR" | "MRR"
+  filter: "('NIC_Intel-XXV710' or 'NIC_Intel-E810CQ') and 'NDRPDR' and '1C'"
+  columns:
+    - title: "2n-clx xxv710"
+      data-set: "vpp-compare-testbeds-clx-icx-ref"
+      tag: "NIC_Intel-XXV710"
+    - title: "2n-icx e810cq"
+      data-set: "vpp-compare-testbeds-clx-icx-cmp"
+      tag: "NIC_Intel-E810CQ"
+  comparisons:
+    - title: "Diff"
+      reference: 1
+      compare: 2
+  legend:
+    - ""
+    - "2n-clx xxv710, 2n-icx e810cq - testbeds and NICs tested."
+    - "Diff - difference between 2n-clx xxv710 and 2n-icx e810cq testbeds."
+
+# VPP Comparison Across Testbeds 2n-clx to 2n-icx 2c pdr
+- type: "table"
+  title: "VPP Comparison Across Testbeds 2n-clx to 2n-icx 2c pdr"
+  algorithm: "table_comparison"
+  output-file: "{DIR[STATIC,VPP]}/performance-compare-testbeds-2n-clx-2n-icx-2c-pdr"
+  include-tests: "PDR" # "PDR" | "NDR" | "MRR"
+  filter: "('NIC_Intel-XXV710' or 'NIC_Intel-E810CQ') and 'NDRPDR' and '2C'"
+  columns:
+    - title: "2n-clx xxv710"
+      data-set: "vpp-compare-testbeds-clx-icx-ref"
+      tag: "NIC_Intel-XXV710"
+    - title: "2n-icx e810cq"
+      data-set: "vpp-compare-testbeds-clx-icx-cmp"
+      tag: "NIC_Intel-E810CQ"
+  comparisons:
+    - title: "Diff"
+      reference: 1
+      compare: 2
+  legend:
+    - ""
+    - "2n-clx xxv710, 2n-icx e810cq - testbeds and NICs tested."
+    - "Diff - difference between 2n-clx xxv710 and 2n-icx e810cq testbeds."
+
 # VPP Comparison Across Topologies 3n-skx to 2n-skx 1c ndr
 - type: "table"
   title: "VPP Comparison Across Topologies 3n-skx to 2n-skx 1c ndr"
     - "3n-hsw xl710, 2n-clx xxv710 - testbeds and NICs tested."
     - "Diff - difference between 3n-hsw xl710 and 2n-clx xxv710 testbeds."
 
+# VPP Comparison Across Testbeds 2n-clx to 2n-icx 1c mrr
+- type: "table"
+  title: "VPP Comparison Across Testbeds 2n-clx to 2n-icx 1c mrr"
+  algorithm: "table_comparison"
+  output-file: "{DIR[STATIC,VPP]}/performance-compare-testbeds-2n-clx-2n-icx-1c-mrr"
+  include-tests: "MRR" # "PDR" | "NDR" | "MRR"
+  filter: "('NIC_Intel-XXV710' or 'NIC_Intel-E810CQ') and 'MRR' and '1C'"
+  columns:
+    - title: "2n-clx xxv710"
+      data-set: "vpp-compare-testbeds-mrr-clx-icx-ref"
+      tag: "NIC_Intel-XXV710"
+    - title: "2n-icx e810cq"
+      data-set: "vpp-compare-testbeds-mrr-clx-icx-cmp"
+      tag: "NIC_Intel-E810CQ"
+  comparisons:
+    - title: "Diff"
+      reference: 1
+      compare: 2
+  legend:
+    - ""
+    - "2n-clx xxv710, 2n-icx e810cq - testbeds and NICs tested."
+    - "Diff - difference between 2n-clx xxv710 and 2n-icx e810cq testbeds."
+
+# VPP Comparison Across Testbeds 2n-clx to 2n-icx 2c mrr
+- type: "table"
+  title: "VPP Comparison Across Testbeds 2n-clx to 2n-icx 2c mrr"
+  algorithm: "table_comparison"
+  output-file: "{DIR[STATIC,VPP]}/performance-compare-testbeds-2n-clx-2n-icx-2c-mrr"
+  include-tests: "MRR" # "PDR" | "NDR" | "MRR"
+  filter: "('NIC_Intel-XXV710' or 'NIC_Intel-E810CQ') and 'MRR' and '2C'"
+  columns:
+    - title: "2n-clx xxv710"
+      data-set: "vpp-compare-testbeds-mrr-clx-icx-ref"
+      tag: "NIC_Intel-XXV710"
+    - title: "2n-icx e810cq"
+      data-set: "vpp-compare-testbeds-mrr-clx-icx-cmp"
+      tag: "NIC_Intel-E810CQ"
+  comparisons:
+    - title: "Diff"
+      reference: 1
+      compare: 2
+  legend:
+    - ""
+    - "2n-clx xxv710, 2n-icx e810cq - testbeds and NICs tested."
+    - "Diff - difference between 2n-clx xxv710 and 2n-icx e810cq testbeds."
+
+# VPP Comparison Across Testbeds 2n-clx to 2n-icx 4c mrr
+- type: "table"
+  title: "VPP Comparison Across Testbeds 2n-clx to 2n-icx 4c mrr"
+  algorithm: "table_comparison"
+  output-file: "{DIR[STATIC,VPP]}/performance-compare-testbeds-2n-clx-2n-icx-4c-mrr"
+  include-tests: "MRR" # "PDR" | "NDR" | "MRR"
+  filter: "('NIC_Intel-XXV710' or 'NIC_Intel-E810CQ') and 'MRR' and '4C'"
+  columns:
+    - title: "2n-clx xxv710"
+      data-set: "vpp-compare-testbeds-mrr-clx-icx-ref"
+      tag: "NIC_Intel-XXV710"
+    - title: "2n-icx e810cq"
+      data-set: "vpp-compare-testbeds-mrr-clx-icx-cmp"
+      tag: "NIC_Intel-E810CQ"
+  comparisons:
+    - title: "Diff"
+      reference: 1
+      compare: 2
+  legend:
+    - ""
+    - "2n-clx xxv710, 2n-icx e810cq - testbeds and NICs tested."
+    - "Diff - difference between 2n-clx xxv710 and 2n-icx e810cq testbeds."
+
 # Detailed Test Results - VPP Performance Results 3n-hsw
 - type: "table"
   title: "Detailed Test Results - VPP Performance Results 3n-hsw"
   - "parent"
   - "msg"
 
+# Detailed Test Results - VPP Performance Results 2n-icx
+- type: "table"
+  title: "Detailed Test Results - VPP Performance Results 2n-icx"
+  algorithm: "table_merged_details"
+  output-file: "{DIR[DTR,PERF,VPP,2N,ICX]}/"
+  columns:
+    - title: " |prein| Test Name |preout| "
+      data: "data name"
+    - title: " |prein| Throughput: |br| 1.  Mpps       Gbps (NDR) |br| 2.  Mpps       Gbps (PDR) |br| |br| One-Way Latency Percentiles in uSec at %PDR load, |br| one set per each direction: |br| 3.  P50  P90  P99       P50  P90  P99 (10% PDR) |br| 4.  P50  P90  P99       P50  P90  P99 (50% PDR) |br| 5.  P50  P90  P99       P50  P90  P99 (90% PDR) |preout| "
+      data: "data msg"
+  data: "vpp-perf-results-2n-icx"
+  filter: "'NDRPDR'"
+  parameters:
+  - "name"
+  - "parent"
+  - "msg"
+
 # Detailed Test Results - VPP Performance Results 3n-tsh
 - type: "table"
   title: "Detailed Test Results - VPP Performance Results 3n-tsh"
   - "name"
   - "conf-history"
 
+# Test configuration - VPP Performance Test Configs 2n-icx
+- type: "table"
+  title: "Test configuration - VPP Performance Test Configs 2n-icx"
+  algorithm: "table_merged_details"
+  output-file: "{DIR[DTC,PERF,VPP,2N,ICX]}/"
+  columns:
+    - title: " |prein| Test Name |preout| "
+      data: "data name"
+    - title: " |prein| VPP API Test Commands History - Commands Used Per Test Case |preout| "
+      data: "data conf-history"
+  data: "vpp-perf-results-2n-icx"
+  filter: "'NDRPDR'"
+  parameters:
+  - "parent"
+  - "name"
+  - "conf-history"
+
 # Test configuration - VPP Performance Test Configs 3n-tsh
 - type: "table"
   title: "Test configuration - VPP Performance Test Configs 3n-tsh"
   data: "vpp-perf-results-2n-clx"
   filter: "all"
 
+# Test Operational Data - VPP Performance Operational Data 2n-icx
+- type: "table"
+  title: "Test Operational Data - VPP Performance Operational Data 2n-icx"
+  algorithm: "table_oper_data_html"
+  output-file: "{DIR[DTO,PERF,VPP,2N,ICX]}/"
+  data: "vpp-perf-results-2n-icx"
+  filter: "'NDRPDR'"
+
 # Test Operational Data - VPP Performance Operational Data 3n-tsh
 - type: "table"
   title: "Test Operational Data - VPP Performance Operational Data 3n-tsh"
   - "parent"
   - "msg"
 
+# Detailed Test Results - VPP MRR Results 2n-icx
+- type: "table"
+  title: "Detailed Test Results - VPP MRR Results 2n-icx"
+  algorithm: "table_merged_details"
+  output-file: "{DIR[DTR,MRR,VPP,2N,ICX]}/"
+  columns:
+    - title: " |prein| Test Name |preout| "
+      data: "data name"
+    - title: " |prein| Maximum Receive Rate trial [Mpps] |preout| "
+      data: "data msg"
+  data: "vpp-mrr-results-2n-icx"
+  filter: "'MRR'"
+  parameters:
+  - "name"
+  - "parent"
+  - "msg"
+
 # Detailed Test Results - VPP MRR Results 3n-tsh
 - type: "table"
   title: "Detailed Test Results - VPP MRR Results 3n-tsh"
   - "name"
   - "conf-history"
 
+# Test configuration - VPP MRR Test Configs 2n-icx
+- type: "table"
+  title: "Test configuration - VPP MRR Test Configs 2n-icx"
+  algorithm: "table_merged_details"
+  output-file: "{DIR[DTC,MRR,VPP,2N,ICX]}/"
+  columns:
+    - title: " |prein| Test Name |preout| "
+      data: "data name"
+    - title: " |prein| VPP API Test Commands History - Commands Used Per Test Case |preout| "
+      data: "data conf-history"
+  data: "vpp-mrr-results-2n-icx"
+  filter: "'MRR'"
+  parameters:
+  - "parent"
+  - "name"
+  - "conf-history"
+
 # Test configuration - VPP MRR Test Configs 3n-tsh
 - type: "table"
   title: "Test configuration - VPP MRR Test Configs 3n-tsh"
     - "{DIR[DTR,PERF,VPP,2N,SKX]}"
     - "{DIR[DTR,PERF,VPP,3N,SKX]}"
     - "{DIR[DTR,PERF,VPP,2N,CLX]}"
+    - "{DIR[DTR,PERF,VPP,2N,ICX]}"
     - "{DIR[DTR,PERF,VPP,2N,ZN2]}"
     - "{DIR[DTR,PERF,VPP,3N,HSW]}"
     - "{DIR[DTR,PERF,VPP,3N,TSH]}"
     - "vpp-perf-results-2n-skx"
     - "vpp-perf-results-3n-skx"
     - "vpp-perf-results-2n-clx"
+    - "vpp-perf-results-2n-icx"
     - "vpp-perf-results-2n-zn2"
     - "vpp-perf-results-3n-hsw"
     - "vpp-perf-results-3n-tsh"
     - "vpp-perf-results-2n-tx2"
     - "vpp-perf-results-2n-dnv"
     - "vpp-perf-results-3n-dnv"
-  filter: "all"
+  filter: "'NDRPDR'"
   data-start-level: 4
   order-chapters:
     level-1:
       - "2n-skx"
       - "3n-skx"
       - "2n-clx"
+      - "2n-icx"
       - "2n-zn2"
       - "3n-hsw"
       - "3n-tsh"
       - "x520"
       - "xxv710"
       - "x710"
+      - "e810cq"
       - "x553"
       - "cx556a"
       - "vic1227"
     - "{DIR[DTC,PERF,VPP,2N,SKX]}"
     - "{DIR[DTC,PERF,VPP,3N,SKX]}"
     - "{DIR[DTC,PERF,VPP,2N,CLX]}"
+    - "{DIR[DTC,PERF,VPP,2N,ICX]}"
     - "{DIR[DTC,PERF,VPP,2N,ZN2]}"
     - "{DIR[DTC,PERF,VPP,3N,HSW]}"
     - "{DIR[DTC,PERF,VPP,3N,TSH]}"
     - "vpp-perf-results-2n-skx"
     - "vpp-perf-results-3n-skx"
     - "vpp-perf-results-2n-clx"
+    - "vpp-perf-results-2n-icx"
     - "vpp-perf-results-2n-zn2"
     - "vpp-perf-results-3n-hsw"
     - "vpp-perf-results-3n-tsh"
     - "vpp-perf-results-2n-tx2"
     - "vpp-perf-results-2n-dnv"
     - "vpp-perf-results-3n-dnv"
-  filter: "all"
+  filter: "'NDRPDR'"
   data-start-level: 4
   order-chapters:
     level-1:
       - "2n-skx"
       - "3n-skx"
       - "2n-clx"
+      - "2n-icx"
       - "2n-zn2"
       - "3n-hsw"
       - "3n-tsh"
       - "x520"
       - "xxv710"
       - "x710"
+      - "e810cq"
       - "x553"
       - "cx556a"
       - "vic1227"
     - "{DIR[DTO,PERF,VPP,2N,SKX]}"
     - "{DIR[DTO,PERF,VPP,3N,SKX]}"
     - "{DIR[DTO,PERF,VPP,2N,CLX]}"
+    - "{DIR[DTO,PERF,VPP,2N,ICX]}"
     - "{DIR[DTO,PERF,VPP,2N,ZN2]}"
     - "{DIR[DTO,PERF,VPP,3N,HSW]}"
     - "{DIR[DTO,PERF,VPP,3N,TSH]}"
     - "vpp-perf-results-2n-skx"
     - "vpp-perf-results-3n-skx"
     - "vpp-perf-results-2n-clx"
+    - "vpp-perf-results-2n-icx"
     - "vpp-perf-results-2n-zn2"
     - "vpp-perf-results-3n-hsw"
     - "vpp-perf-results-3n-tsh"
     - "vpp-perf-results-2n-tx2"
     - "vpp-perf-results-2n-dnv"
     - "vpp-perf-results-3n-dnv"
-  filter: "all"
+  filter: "'NDRPDR'"
   data-start-level: 4
   order-chapters:
     level-1:
       - "2n-skx"
       - "3n-skx"
       - "2n-clx"
+      - "2n-icx"
       - "2n-zn2"
       - "3n-hsw"
       - "3n-tsh"
       - "x520"
       - "xxv710"
       - "x710"
+      - "e810cq"
       - "x553"
       - "cx556a"
       - "vic1227"
     - "{DIR[DTR,MRR,VPP,2N,SKX]}"
     - "{DIR[DTR,MRR,VPP,3N,SKX]}"
     - "{DIR[DTR,MRR,VPP,2N,CLX]}"
+    - "{DIR[DTR,MRR,VPP,2N,ICX]}"
     - "{DIR[DTR,MRR,VPP,2N,ZN2]}"
     - "{DIR[DTR,MRR,VPP,3N,HSW]}"
     - "{DIR[DTR,MRR,VPP,3N,TSH]}"
     - "vpp-mrr-results-2n-skx"
     - "vpp-mrr-results-3n-skx"
     - "vpp-mrr-results-2n-clx"
+    - "vpp-mrr-results-2n-icx"
     - "vpp-mrr-results-2n-zn2"
     - "vpp-mrr-results-3n-hsw"
     - "vpp-mrr-results-3n-tsh"
     - "vpp-mrr-results-2n-tx2"
     - "vpp-mrr-results-2n-dnv"
     - "vpp-mrr-results-3n-dnv"
-  filter: "all"
+  filter: "'MRR'"
   data-start-level: 4
   order-chapters:
     level-1:
       - "2n-skx"
       - "3n-skx"
       - "2n-clx"
+      - "2n-icx"
       - "2n-zn2"
       - "3n-hsw"
       - "3n-tsh"
       - "x520"
       - "xxv710"
       - "x710"
+      - "e810cq"
       - "x553"
       - "cx556a"
       - "vic1227"
     - "{DIR[DTC,MRR,VPP,2N,SKX]}"
     - "{DIR[DTC,MRR,VPP,3N,SKX]}"
     - "{DIR[DTC,MRR,VPP,2N,CLX]}"
+    - "{DIR[DTC,MRR,VPP,2N,ICX]}"
     - "{DIR[DTC,MRR,VPP,2N,ZN2]}"
     - "{DIR[DTC,MRR,VPP,3N,HSW]}"
     - "{DIR[DTC,MRR,VPP,3N,TSH]}"
     - "vpp-mrr-results-2n-skx"
     - "vpp-mrr-results-3n-skx"
     - "vpp-mrr-results-2n-clx"
+    - "vpp-mrr-results-2n-icx"
     - "vpp-mrr-results-2n-zn2"
     - "vpp-mrr-results-3n-hsw"
     - "vpp-mrr-results-3n-tsh"
     - "vpp-mrr-results-2n-tx2"
     - "vpp-mrr-results-2n-dnv"
     - "vpp-mrr-results-3n-dnv"
-  filter: "all"
+  filter: "'MRR'"
   data-start-level: 4
   order-chapters:
     level-1:
       - "2n-skx"
       - "3n-skx"
       - "2n-clx"
+      - "2n-icx"
       - "2n-zn2"
       - "3n-hsw"
       - "3n-tsh"
       - "x520"
       - "xxv710"
       - "x710"
+      - "e810cq"
       - "x553"
       - "cx556a"
       - "vic1227"
     title: "2n-clx-xxv710-114b-vts-l2switching-base-[avf,dpdk]-{test_type}"
     layout: "plot-throughput-speedup-analysis"
 
+# 2n-icx
+
+- type: "plot"
+  title: "Throughput: 2n-icx-e810cq-64b-{core}-ip4routing-base-scale-avf-{test_type}"
+  algorithm: "plot_ndrpdr_box_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-64b-{core}-ip4routing-base-scale-avf-{test_type}"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  core: ["2t1c", ]
+  include:
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Avf-Ethip4-Ip4Base-Ndrpdr.64B-{core}-avf-ethip4-ip4base-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Avf-Ethip4-Ip4Scale20K-Ndrpdr.64B-{core}-avf-ethip4-ip4scale20k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Avf-Ethip4-Ip4Scale200K-Ndrpdr.64B-{core}-avf-ethip4-ip4scale200k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Avf-Ethip4-Ip4Scale2M-Ndrpdr.64B-{core}-avf-ethip4-ip4scale2m-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-64b-{core}-ip4routing-base-scale-avf-{test_type}"
+    layout: "plot-throughput"
+
+- type: "plot"
+  title: "Throughput: 2n-icx-e810cq-64b-{core}-ip4routing-base-scale-dpdk-{test_type}"
+  algorithm: "plot_ndrpdr_box_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-64b-{core}-ip4routing-base-scale-dpdk-{test_type}"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  core: ["2t1c", ]
+  include:
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Ethip4-Ip4Base-Ndrpdr.64B-{core}-ethip4-ip4base-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Ethip4-Ip4Scale20K-Ndrpdr.64B-{core}-ethip4-ip4scale20k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Ethip4-Ip4Scale200K-Ndrpdr.64B-{core}-ethip4-ip4scale200k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Ethip4-Ip4Scale2M-Ndrpdr.64B-{core}-ethip4-ip4scale2m-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-64b-{core}-ip4routing-base-scale-dpdk-{test_type}"
+    layout: "plot-throughput"
+
+- type: "plot"
+  title: "Throughput: 2n-icx-e810cq-78b-{core}-ip6routing-base-scale-avf-{test_type}"
+  algorithm: "plot_ndrpdr_box_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-78b-{core}-ip6routing-base-scale-avf-{test_type}"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  core: ["2t1c", ]
+  include:
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Avf-Ethip6-Ip6Base-Ndrpdr.78B-{core}-avf-ethip6-ip6base-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Avf-Ethip6-Ip6Scale20K-Ndrpdr.78B-{core}-avf-ethip6-ip6scale20k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Avf-Ethip6-Ip6Scale200K-Ndrpdr.78B-{core}-avf-ethip6-ip6scale200k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Avf-Ethip6-Ip6Scale2M-Ndrpdr.78B-{core}-avf-ethip6-ip6scale2m-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-78b-{core}-ip6routing-base-scale-avf-{test_type}"
+    layout: "plot-throughput"
+
+- type: "plot"
+  title: "Throughput: 2n-icx-e810cq-78b-{core}-ip6routing-base-scale-dpdk-{test_type}"
+  algorithm: "plot_ndrpdr_box_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-78b-{core}-ip6routing-base-scale-dpdk-{test_type}"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  core: ["2t1c", ]
+  include:
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Ethip6-Ip6Base-Ndrpdr.78B-{core}-ethip6-ip6base-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Ethip6-Ip6Scale20K-Ndrpdr.78B-{core}-ethip6-ip6scale20k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Ethip6-Ip6Scale200K-Ndrpdr.78B-{core}-ethip6-ip6scale200k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Ethip6-Ip6Scale2M-Ndrpdr.78B-{core}-ethip6-ip6scale2m-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-78b-{core}-ip6routing-base-scale-dpdk-{test_type}"
+    layout: "plot-throughput"
+
+- type: "plot"
+  title: "Throughput: 2n-icx-x710-64b-{core}-l2switching-base-scale-avf-{test_type}"
+  algorithm: "plot_ndrpdr_box_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-x710-64b-{core}-l2switching-base-scale-avf-{test_type}"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  core: ["2t1c", ]
+  include:
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Patch-Ndrpdr.64B-{core}-avf-eth-l2patch-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Xcbase-Ndrpdr.64B-{core}-avf-eth-l2xcbase-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Bdbasemaclrn-Ndrpdr.64B-{core}-avf-eth-l2bdbasemaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Bdscale10Kmaclrn-Ndrpdr.64B-{core}-avf-eth-l2bdscale10kmaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Bdscale100Kmaclrn-Ndrpdr.64B-{core}-avf-eth-l2bdscale100kmaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Bdscale1Mmaclrn-Ndrpdr.64B-{core}-avf-eth-l2bdscale1mmaclrn-ndrpdr"
+  layout:
+    title: "2n-icx-x710-64b-{core}-l2switching-base-scale-avf-{test_type}"
+    layout: "plot-throughput"
+
+- type: "plot"
+  title: "Throughput: 2n-icx-x710-64b-{core}-l2switching-base-scale-dpdk-{test_type}"
+  algorithm: "plot_ndrpdr_box_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-x710-64b-{core}-l2switching-base-scale-dpdk-{test_type}"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  core: ["2t1c", ]
+  include:
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Patch-Ndrpdr.64B-{core}-eth-l2patch-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Xcbase-Ndrpdr.64B-{core}-eth-l2xcbase-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Bdbasemaclrn-Ndrpdr.64B-{core}-eth-l2bdbasemaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Bdscale10Kmaclrn-Ndrpdr.64B-{core}-eth-l2bdscale10kmaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Bdscale100Kmaclrn-Ndrpdr.64B-{core}-eth-l2bdscale100kmaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Bdscale1Mmaclrn-Ndrpdr.64B-{core}-eth-l2bdscale1mmaclrn-ndrpdr"
+  layout:
+    title: "2n-icx-x710-64b-{core}-l2switching-base-scale-dpdk-{test_type}"
+    layout: "plot-throughput"
+
+- type: "plot"
+  title: "Speedup: 2n-icx-e810cq-64b-ip4routing-base-scale-avf-{test_type}-tsa"
+  algorithm: "plot_tsa_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-64b-ip4routing-base-scale-avf-{test_type}-tsa"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  include:
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Avf-Ethip4-Ip4Base-Ndrpdr.64B-.t.c-avf-ethip4-ip4base-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Avf-Ethip4-Ip4Scale20K-Ndrpdr.64B-.t.c-avf-ethip4-ip4scale20k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Avf-Ethip4-Ip4Scale200K-Ndrpdr.64B-.t.c-avf-ethip4-ip4scale200k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Avf-Ethip4-Ip4Scale2M-Ndrpdr.64B-.t.c-avf-ethip4-ip4scale2m-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-64b-ip4routing-base-scale-avf-{test_type}"
+    layout: "plot-throughput-speedup-analysis"
+
+- type: "plot"
+  title: "Speedup: 2n-icx-e810cq-64b-ip4routing-base-scale-dpdk-{test_type}-tsa"
+  algorithm: "plot_tsa_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-64b-ip4routing-base-scale-dpdk-{test_type}-tsa"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  include:
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Ethip4-Ip4Base-Ndrpdr.64B-.t.c-ethip4-ip4base-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Ethip4-Ip4Scale20K-Ndrpdr.64B-.t.c-ethip4-ip4scale20k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Ethip4-Ip4Scale200K-Ndrpdr.64B-.t.c-ethip4-ip4scale200k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip4.2N1L-100Ge2P1E810Cq-Ethip4-Ip4Scale2M-Ndrpdr.64B-.t.c-ethip4-ip4scale2m-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-64b-ip4routing-base-scale-dpdk-{test_type}"
+    layout: "plot-throughput-speedup-analysis"
+
+- type: "plot"
+  title: "Speedup: 2n-icx-e810cq-78b-ip6routing-base-scale-avf-{test_type}-tsa"
+  algorithm: "plot_tsa_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-78b-ip6routing-base-scale-avf-{test_type}-tsa"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  include:
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Avf-Ethip6-Ip6Base-Ndrpdr.78B-.t.c-avf-ethip6-ip6base-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Avf-Ethip6-Ip6Scale20K-Ndrpdr.78B-.t.c-avf-ethip6-ip6scale20k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Avf-Ethip6-Ip6Scale200K-Ndrpdr.78B-.t.c-avf-ethip6-ip6scale200k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Avf-Ethip6-Ip6Scale2M-Ndrpdr.78B-.t.c-avf-ethip6-ip6scale2m-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-78b-ip6routing-base-scale-avf-{test_type}"
+    layout: "plot-throughput-speedup-analysis"
+
+- type: "plot"
+  title: "Speedup: 2n-icx-e810cq-78b-ip6routing-base-scale-dpdk-{test_type}-tsa"
+  algorithm: "plot_tsa_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-78b-ip6routing-base-scale-dpdk-{test_type}-tsa"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  include:
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Ethip6-Ip6Base-Ndrpdr.78B-.t.c-ethip6-ip6base-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Ethip6-Ip6Scale20K-Ndrpdr.78B-.t.c-ethip6-ip6scale20k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Ethip6-Ip6Scale200K-Ndrpdr.78B-.t.c-ethip6-ip6scale200k-ndrpdr"
+    - "Tests.Vpp.Perf.Ip6.2N1L-100Ge2P1E810Cq-Ethip6-Ip6Scale2M-Ndrpdr.78B-.t.c-ethip6-ip6scale2m-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-78b-ip6routing-base-scale-dpdk-{test_type}"
+    layout: "plot-throughput-speedup-analysis"
+
+- type: "plot"
+  title: "Speedup: 2n-icx-e810cq-64b-l2switching-base-scale-avf-{test_type}-tsa"
+  algorithm: "plot_tsa_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-64b-l2switching-base-scale-avf-{test_type}-tsa"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  include:
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Patch-Ndrpdr.64B-.t.c-avf-eth-l2patch-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Xcbase-Ndrpdr.64B-.t.c-avf-eth-l2xcbase-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Bdbasemaclrn-Ndrpdr.64B-.t.c-avf-eth-l2bdbasemaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Bdscale10Kmaclrn-Ndrpdr.64B-.t.c-avf-eth-l2bdscale10kmaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Bdscale100Kmaclrn-Ndrpdr.64B-.t.c-avf-eth-l2bdscale100kmaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Avf-Eth-L2Bdscale1Mmaclrn-Ndrpdr.64B-.t.c-avf-eth-l2bdscale1mmaclrn-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-64b-l2switching-base-scale-avf-{test_type}"
+    layout: "plot-throughput-speedup-analysis"
+
+- type: "plot"
+  title: "Speedup: 2n-icx-e810cq-64b-l2switching-base-scale-dpdk-{test_type}-tsa"
+  algorithm: "plot_tsa_name"
+  output-file: "{DIR[STATIC,VPP]}/2n-icx-e810cq-64b-l2switching-base-scale-dpdk-{test_type}-tsa"
+  data: "plot-vpp-throughput-lat-tsa-2n-icx"
+  include:
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Patch-Ndrpdr.64B-.t.c-eth-l2patch-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Xcbase-Ndrpdr.64B-.t.c-eth-l2xcbase-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Bdbasemaclrn-Ndrpdr.64B-.t.c-eth-l2bdbasemaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Bdscale10Kmaclrn-Ndrpdr.64B-.t.c-eth-l2bdscale10kmaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Bdscale100Kmaclrn-Ndrpdr.64B-.t.c-eth-l2bdscale100kmaclrn-ndrpdr"
+    - "Tests.Vpp.Perf.L2.2N1L-100Ge2P1E810Cq-Eth-L2Bdscale1Mmaclrn-Ndrpdr.64B-.t.c-eth-l2bdscale1mmaclrn-ndrpdr"
+  layout:
+    title: "2n-icx-e810cq-64b-l2switching-base-scale-dpdk-{test_type}"
+    layout: "plot-throughput-speedup-analysis"
+
 # Packet Throughput - DPDK
 
 # 2n-clx
   layout:
     layout: "plot-hdrh-latency-percentile-x-log"
 
+- type: "plot"
+  title: "Latency by percentile: 2n-icx"
+  algorithm: "plot_hdrh_lat_by_percentile_x_log"
+  output-file: "{DIR[STATIC,VPP]}/hdrh-lat-percentile-2n-icx"
+  output-file-links: "{DIR[LAT,VPP]}/2n_icx.rst"
+  target-links: "../../_static/vpp"
+  data: "plot-vpp-hdrh-lat-2n-icx"
+  filter: "'2T1C' and 'NIC_Intel-E810CQ' and 'NDRPDR'"
+  layout:
+    layout: "plot-hdrh-latency-percentile-x-log"
+
 - type: "plot"
   title: "Latency by percentile: 3n-hsw"
   algorithm: "plot_hdrh_lat_by_percentile_x_log"