aboutsummaryrefslogtreecommitdiffstats
path: root/docs/report
diff options
context:
space:
mode:
authorTibor Frank <tifrank@cisco.com>2019-09-24 11:00:05 +0200
committerTibor Frank <tifrank@cisco.com>2019-12-04 13:18:41 +0100
commit174ad309b359e9b323b97cae0a6877dce33deb5f (patch)
tree92b99144cc56c243d0e32a42ad9fb74536ee6dbf /docs/report
parentbb33f1d16f1451253f942da0c55cdea72e71c398 (diff)
PAL: Add HDRHistogram graphs for latency
Change-Id: I4d5cc369c341411a4a035dba47b945b3bf43014f Signed-off-by: Tibor Frank <tifrank@cisco.com>
Diffstat (limited to 'docs/report')
-rw-r--r--docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/2n-skx-x710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/2n-skx-xxv710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-hsw-x710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-hsw-xl710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-skx-x710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-skx-xxv710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/index.rst30
-rw-r--r--docs/report/dpdk_performance_tests/index.rst1
-rw-r--r--docs/report/dpdk_performance_tests/packet_latency_graphs/2n-skx-x710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/packet_latency_graphs/2n-skx-xxv710.rst103
-rw-r--r--docs/report/dpdk_performance_tests/packet_latency_graphs/3n-hsw-x710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/packet_latency_graphs/3n-hsw-xl710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/packet_latency_graphs/3n-skx-x710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/packet_latency_graphs/3n-skx-xxv710.rst107
-rw-r--r--docs/report/dpdk_performance_tests/packet_latency_graphs/index.rst15
-rw-r--r--docs/report/dpdk_performance_tests/packet_latency_graphs/ip4.rst383
-rw-r--r--docs/report/dpdk_performance_tests/packet_latency_graphs/l2.rst384
-rw-r--r--docs/report/dpdk_performance_tests/packet_throughput_graphs/2n-skx-x710.rst125
-rw-r--r--docs/report/dpdk_performance_tests/packet_throughput_graphs/2n-skx-xxv710.rst125
-rw-r--r--docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-hsw-x710.rst125
-rw-r--r--docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-hsw-xl710.rst125
-rw-r--r--docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-skx-x710.rst125
-rw-r--r--docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-skx-xxv710.rst125
-rw-r--r--docs/report/dpdk_performance_tests/packet_throughput_graphs/index.rst12
-rw-r--r--docs/report/dpdk_performance_tests/packet_throughput_graphs/ip4.rst664
-rw-r--r--docs/report/dpdk_performance_tests/packet_throughput_graphs/l2.rst660
-rw-r--r--docs/report/index.html.template2
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-2n-skx-xxv710.rst105
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-3n-skx-xxv710.rst106
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-3n-tsh-x520.rst112
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif.rst22
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/index.rst38
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-2n-skx-x710.rst106
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-2n-skx-xxv710.rst259
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-hsw-xl710.rst104
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-skx-x710.rst106
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-skx-xxv710.rst258
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-tsh-x520.rst195
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4.rst25
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-hsw-xl710.rst103
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-skx-xxv710.rst104
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-tsh-x520.rst109
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels.rst22
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-2n-skx-x710.rst103
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-2n-skx-xxv710.rst106
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-hsw-xl710.rst104
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-skx-x710.rst103
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-skx-xxv710.rst106
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-tsh-x520.rst112
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6.rst25
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-hsw-xl710.rst182
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-skx-xxv710.rst107
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-tsh-x520.rst115
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec.rst25
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-2n-skx-x710.rst107
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-2n-skx-xxv710.rst257
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-hsw-xl710.rst107
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-skx-x710.rst107
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-skx-xxv710.rst335
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-tsh-x520.rst278
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2.rst25
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-hsw-xl710.rst107
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-skx-xxv710.rst107
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-tsh-x520.rst114
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6.rst22
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-2n-skx-xxv710.rst184
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-hsw-xl710.rst184
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-skx-x710.rst186
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-skx-xxv710.rst347
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-tsh-x520.rst192
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost.rst25
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-hsw-xl710.rst104
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-skx-xxv710.rst104
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-tsh-x520.rst108
-rw-r--r--docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts.rst23
-rw-r--r--docs/report/vpp_performance_tests/index.rst1
76 files changed, 7968 insertions, 2099 deletions
diff --git a/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/2n-skx-x710.rst b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/2n-skx-x710.rst
new file mode 100644
index 0000000000..d1fd00d3c9
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/2n-skx-x710.rst
@@ -0,0 +1,107 @@
+
+.. 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-skx-x710
+~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-2t1c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-2t1c-base-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-64b-2t1c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-4t2c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-4t2c-base-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-64b-4t2c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-8t4c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-8t4c-base-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-64b-8t4c-base-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/2n-skx-xxv710.rst b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/2n-skx-xxv710.rst
new file mode 100644
index 0000000000..68ae56baf6
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/2n-skx-xxv710.rst
@@ -0,0 +1,107 @@
+
+.. 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-skx-xxv710
+~~~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-2t1c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-2t1c-base-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-4t2c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-4t2c-base-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-8t4c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-8t4c-base-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-base-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-hsw-x710.rst b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-hsw-x710.rst
new file mode 100644
index 0000000000..c26524e22d
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-hsw-x710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+3n-hsw-x710
+~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-1t1c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-1t1c-base-ndr-hdrh-lat}
+ \label{fig:3n-hsw-x710-64b-1t1c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-2t2c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-2t2c-base-ndr-hdrh-lat}
+ \label{fig:3n-hsw-x710-64b-2t2c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-4t4c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-4t4c-base-ndr-hdrh-lat}
+ \label{fig:3n-hsw-x710-64b-4t4c-base-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-hsw-xl710.rst b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-hsw-xl710.rst
new file mode 100644
index 0000000000..ddf4fae8ee
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-hsw-xl710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-1t1c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-1t1c-base-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-1t1c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-2t2c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-2t2c-base-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-2t2c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-4t4c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-4t4c-base-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-4t4c-base-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-skx-x710.rst b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-skx-x710.rst
new file mode 100644
index 0000000000..4d48d71fd7
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-skx-x710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+3n-skx-x710
+~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-2t1c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-2t1c-base-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-64b-2t1c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-4t2c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-4t2c-base-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-64b-4t2c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-8t4c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-8t4c-base-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-64b-8t4c-base-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-skx-xxv710.rst b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-skx-xxv710.rst
new file mode 100644
index 0000000000..ee59868de5
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/3n-skx-xxv710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-2t1c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-2t1c-base-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-4t2c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-4t2c-base-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-8t4c-base-ndr-hdrh-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-8t4c-base-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-base-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/index.rst b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/index.rst
new file mode 100644
index 0000000000..be5e741e4b
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/hdrh_packet_latency_graphs/index.rst
@@ -0,0 +1,30 @@
+
+.. raw:: latex
+
+ \clearpage
+
+HDRHistogram Packet Latency
+===========================
+
+Latency results are generated from a single execution of NDR discovery
+test across physical testbeds hosted LF FD.io labs: 3n-hsw, 2n-skx, 2n-
+skx.
+
+.. note::
+
+ Test results have been generated by
+ `FD.io test executor dpdk performance job 2n-skx`_,
+ `FD.io test executor dpdk performance job 3n-skx`_ and
+ `FD.io test executor dpdk performance job 3n-hsw`_ with RF
+ result files csit-dpdk-perf-|srelease|-\*.zip
+ `archived here <../../_static/archive/>`_.
+
+.. toctree::
+ :maxdepth: 3
+
+ 2n-skx-xxv710
+ 2n-skx-x710
+ 3n-skx-xxv710
+ 3n-skx-x710
+ 3n-hsw-xl710
+ 3n-hsw-x710
diff --git a/docs/report/dpdk_performance_tests/index.rst b/docs/report/dpdk_performance_tests/index.rst
index 07632b6368..85541465c9 100644
--- a/docs/report/dpdk_performance_tests/index.rst
+++ b/docs/report/dpdk_performance_tests/index.rst
@@ -7,6 +7,7 @@ DPDK Performance
csit_release_notes
packet_throughput_graphs/index
packet_latency_graphs/index
+ hdrh_packet_latency_graphs/index
comparisons/index
throughput_trending
test_environment
diff --git a/docs/report/dpdk_performance_tests/packet_latency_graphs/2n-skx-x710.rst b/docs/report/dpdk_performance_tests/packet_latency_graphs/2n-skx-x710.rst
new file mode 100644
index 0000000000..48c4630f28
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_latency_graphs/2n-skx-x710.rst
@@ -0,0 +1,107 @@
+
+.. 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-skx-x710
+~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-2t1c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-2t1c-base-ndr-lat}
+ \label{fig:2n-skx-x710-64b-2t1c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-4t2c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-4t2c-base-ndr-lat}
+ \label{fig:2n-skx-x710-64b-4t2c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-8t4c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-8t4c-base-ndr-lat}
+ \label{fig:2n-skx-x710-64b-8t4c-base-ndr-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_latency_graphs/2n-skx-xxv710.rst b/docs/report/dpdk_performance_tests/packet_latency_graphs/2n-skx-xxv710.rst
new file mode 100644
index 0000000000..3c79d4a8d2
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_latency_graphs/2n-skx-xxv710.rst
@@ -0,0 +1,103 @@
+
+.. 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-skx-xxv710
+~~~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-2t1c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-2t1c-base-ndr-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-base-ndr-lat}
+ \end{figure}
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-4t2c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-4t2c-base-ndr-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-8t4c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-8t4c-base-ndr-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-base-ndr-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-hsw-x710.rst b/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-hsw-x710.rst
new file mode 100644
index 0000000000..fbe3709858
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-hsw-x710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+3n-hsw-x710
+~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-1t1c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-1t1c-base-ndr-lat}
+ \label{fig:3n-hsw-x710-64b-1t1c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-2t2c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-2t2c-base-ndr-lat}
+ \label{fig:3n-hsw-x710-64b-2t2c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-4t4c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-4t4c-base-ndr-lat}
+ \label{fig:3n-hsw-x710-64b-4t4c-base-ndr-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-hsw-xl710.rst b/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-hsw-xl710.rst
new file mode 100644
index 0000000000..977c6a6129
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-hsw-xl710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-1t1c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-1t1c-base-ndr-lat}
+ \label{fig:3n-hsw-xl710-64b-1t1c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-2t2c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-2t2c-base-ndr-lat}
+ \label{fig:3n-hsw-xl710-64b-2t2c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-4t4c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-4t4c-base-ndr-lat}
+ \label{fig:3n-hsw-xl710-64b-4t4c-base-ndr-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-skx-x710.rst b/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-skx-x710.rst
new file mode 100644
index 0000000000..23c26ea4d2
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-skx-x710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+3n-skx-x710
+~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-2t1c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-2t1c-base-ndr-lat}
+ \label{fig:3n-skx-x710-64b-2t1c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-4t2c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-4t2c-base-ndr-lat}
+ \label{fig:3n-skx-x710-64b-4t2c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-8t4c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-8t4c-base-ndr-lat}
+ \label{fig:3n-skx-x710-64b-8t4c-base-ndr-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-skx-xxv710.rst b/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-skx-xxv710.rst
new file mode 100644
index 0000000000..344bc5e28a
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_latency_graphs/3n-skx-xxv710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+This section includes summary graphs of Phy-to-Phy performance with packet
+routed forwarding measured at 100% of discovered NDR throughput rate.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-2t1c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-2t1c-base-ndr-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-4t2c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-4t2c-base-ndr-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-base-ndr-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-8t4c-base-ndr-lat.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-8t4c-base-ndr-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-base-ndr-lat}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_latency_graphs/index.rst b/docs/report/dpdk_performance_tests/packet_latency_graphs/index.rst
index 51ad6ee004..ce54d43db0 100644
--- a/docs/report/dpdk_performance_tests/packet_latency_graphs/index.rst
+++ b/docs/report/dpdk_performance_tests/packet_latency_graphs/index.rst
@@ -36,14 +36,21 @@ Additional information about graph data:
.. note::
Test results have been generated by
- `FD.io test executor dpdk performance job 3n-hsw`_,
+ `FD.io test executor dpdk performance job 2n-skx`_,
`FD.io test executor dpdk performance job 3n-skx`_ and
- `FD.io test executor dpdk performance job 2n-skx`_ with RF
+ `FD.io test executor dpdk performance job 3n-hsw`_ with RF
result files csit-dpdk-perf-|srelease|-\*.zip
`archived here <../../_static/archive/>`_.
+ Required per test case data set size is **10** and for DPDK tests
+ this is the actual size, as all scheduled test executions completed
+ successfully.
.. toctree::
:maxdepth: 3
- l2
- ip4
+ 2n-skx-xxv710
+ 2n-skx-x710
+ 3n-skx-xxv710
+ 3n-skx-x710
+ 3n-hsw-xl710
+ 3n-hsw-x710
diff --git a/docs/report/dpdk_performance_tests/packet_latency_graphs/ip4.rst b/docs/report/dpdk_performance_tests/packet_latency_graphs/ip4.rst
deleted file mode 100644
index b117c97a1e..0000000000
--- a/docs/report/dpdk_performance_tests/packet_latency_graphs/ip4.rst
+++ /dev/null
@@ -1,383 +0,0 @@
-
-.. 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>
-
-L3fwd
-=====
-
-This section includes summary graphs of L3FWD Phy-to-Phy performance with packet
-routed forwarding measured at 100% of discovered NDR throughput rate. Latency is
-reported for L3FWD running in multiple configurations of L3FWD pmd thread(s),
-a.k.a. L3FWD data plane thread(s), and their physical CPU core(s) placement.
-
-CSIT source code for the test cases used for plots can be found in
-`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1901>`_.
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-x520
-~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x520-64b-1t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x520-64b-1t1c-base-ndr-lat}
- \label{fig:l3fwd-3n-hsw-x520-64b-1t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x520-64b-2t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x520-64b-2t2c-base-ndr-lat}
- \label{fig:l3fwd-3n-hsw-x520-64b-2t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-x710
-~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x710-64b-1t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x710-64b-1t1c-base-ndr-lat}
- \label{fig:l3fwd-3n-hsw-x710-64b-1t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x710-64b-2t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x710-64b-2t2c-base-ndr-lat}
- \label{fig:l3fwd-3n-hsw-x710-64b-2t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-xl710
-~~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm05" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-xl710-64b-1t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-xl710-64b-1t1c-base-ndr-lat}
- \label{fig:l3fwd-3n-hsw-xl710-64b-1t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm06" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-xl710-64b-2t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-xl710-64b-2t2c-base-ndr-lat}
- \label{fig:l3fwd-3n-hsw-xl710-64b-2t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-skx-x710
-~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm07" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-x710-64b-2t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-x710-64b-2t1c-base-ndr-lat}
- \label{fig:l3fwd-3n-skx-x710-64b-2t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm08" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-x710-64b-4t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-x710-64b-4t2c-base-ndr-lat}
- \label{fig:l3fwd-3n-skx-x710-64b-4t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-skx-xxv710
-~~~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm09" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-xxv710-64b-2t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-xxv710-64b-2t1c-base-ndr-lat}
- \label{fig:l3fwd-3n-skx-xxv710-64b-2t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm10" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-xxv710-64b-4t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-xxv710-64b-4t2c-base-ndr-lat}
- \label{fig:l3fwd-3n-skx-xxv710-64b-4t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-2n-skx-x710
-~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-x710-64b-2t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-x710-64b-2t1c-base-ndr-lat}
- \label{fig:l3fwd-2n-skx-x710-64b-2t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-x710-64b-4t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-x710-64b-4t2c-base-ndr-lat}
- \label{fig:l3fwd-2n-skx-x710-64b-4t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-2n-skx-xxv710
-~~~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-xxv710-64b-2t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-xxv710-64b-2t1c-base-ndr-lat}
- \label{fig:l3fwd-2n-skx-xxv710-64b-2t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm14" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-xxv710-64b-4t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-xxv710-64b-4t2c-base-ndr-lat}
- \label{fig:l3fwd-2n-skx-xxv710-64b-4t2c-base-ndr-lat}
- \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_latency_graphs/l2.rst b/docs/report/dpdk_performance_tests/packet_latency_graphs/l2.rst
deleted file mode 100644
index efcea485a1..0000000000
--- a/docs/report/dpdk_performance_tests/packet_latency_graphs/l2.rst
+++ /dev/null
@@ -1,384 +0,0 @@
-
-.. 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>
-
-Testpmd
-=======
-
-This section includes summary graphs of Testpmd Phy-to-Phy packet
-latency with L2 Ethernet Interface Loop measured at 100% of discovered
-NDR throughput rate. Latency is reported for Testpmd running in multiple
-configurations of Testpmd pmd thread(s), a.k.a. Testpmd data plane
-thread(s), and their physical CPU core(s) placement.
-
-CSIT source code for the test cases used for plots can be found in
-`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1901>`_.
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-x520
-~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x520-64b-1t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x520-64b-1t1c-base-ndr-lat}
- \label{fig:testpmd-3n-hsw-x520-64b-1t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x520-64b-2t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x520-64b-2t2c-base-ndr-lat}
- \label{fig:testpmd-3n-hsw-x520-64b-2t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-x710
-~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x710-64b-1t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x710-64b-1t1c-base-ndr-lat}
- \label{fig:testpmd-3n-hsw-x710-64b-1t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x710-64b-2t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x710-64b-2t2c-base-ndr-lat}
- \label{fig:testpmd-3n-hsw-x710-64b-2t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-xl710
-~~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm05" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-xl710-64b-1t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-xl710-64b-1t1c-base-ndr-lat}
- \label{fig:testpmd-3n-hsw-xl710-64b-1t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm06" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-xl710-64b-2t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-xl710-64b-2t2c-base-ndr-lat}
- \label{fig:testpmd-3n-hsw-xl710-64b-2t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-skx-x710
-~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm07" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-x710-64b-2t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-x710-64b-2t1c-base-ndr-lat}
- \label{fig:testpmd-3n-skx-x710-64b-2t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm08" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-x710-64b-4t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-x710-64b-4t2c-base-ndr-lat}
- \label{fig:testpmd-3n-skx-x710-64b-4t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-skx-xxv710
-~~~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm09" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-xxv710-64b-2t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-xxv710-64b-2t1c-base-ndr-lat}
- \label{fig:testpmd-3n-skx-xxv710-64b-2t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm10" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-xxv710-64b-4t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-xxv710-64b-4t2c-base-ndr-lat}
- \label{fig:testpmd-3n-skx-xxv710-64b-4t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-2n-skx-x710
-~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-x710-64b-2t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-x710-64b-2t1c-base-ndr-lat}
- \label{fig:testpmd-2n-skx-x710-64b-2t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-x710-64b-4t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-x710-64b-4t2c-base-ndr-lat}
- \label{fig:testpmd-2n-skx-x710-64b-4t2c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-2n-skx-xxv710
-~~~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-xxv710-64b-2t1c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-xxv710-64b-2t1c-base-ndr-lat}
- \label{fig:testpmd-2n-skx-xxv710-64b-2t1c-base-ndr-lat}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm14" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-xxv710-64b-4t2c-base-ndr-lat.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-xxv710-64b-4t2c-base-ndr-lat}
- \label{fig:testpmd-2n-skx-xxv710-64b-4t2c-base-ndr-lat}
- \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_throughput_graphs/2n-skx-x710.rst b/docs/report/dpdk_performance_tests/packet_throughput_graphs/2n-skx-x710.rst
new file mode 100644
index 0000000000..2c91c0c8dd
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_throughput_graphs/2n-skx-x710.rst
@@ -0,0 +1,125 @@
+
+.. 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-skx-x710
+~~~~~~~~~~~
+
+Following sections include summary graphs of Phy-to-Phy performance with
+packet routed forwarding, including NDR throughput (zero packet loss)
+and PDR throughput (<0.5% packet loss).
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-2t1c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-2t1c-base-ndr}
+ \label{fig:2n-skx-x710-64b-2t1c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-2t1c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-2t1c-base-pdr}
+ \label{fig:2n-skx-x710-64b-2t1c-base-pdr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-4t2c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-4t2c-base-ndr}
+ \label{fig:2n-skx-x710-64b-4t2c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-x710-64b-4t2c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-x710-64b-4t2c-base-pdr}
+ \label{fig:2n-skx-x710-64b-4t2c-base-pdr}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_throughput_graphs/2n-skx-xxv710.rst b/docs/report/dpdk_performance_tests/packet_throughput_graphs/2n-skx-xxv710.rst
new file mode 100644
index 0000000000..07d4dc7702
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_throughput_graphs/2n-skx-xxv710.rst
@@ -0,0 +1,125 @@
+
+.. 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-skx-xxv710
+~~~~~~~~~~~~~
+
+Following sections include summary graphs of Phy-to-Phy performance with
+packet routed forwarding, including NDR throughput (zero packet loss)
+and PDR throughput (<0.5% packet loss).
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-2t1c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-2t1c-base-ndr}
+ \label{fig:2n-skx-xxv710-64b-2t1c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-2t1c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-2t1c-base-pdr}
+ \label{fig:2n-skx-xxv710-64b-2t1c-base-pdr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-4t2c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-4t2c-base-ndr}
+ \label{fig:2n-skx-xxv710-64b-4t2c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/2n-skx-xxv710-64b-4t2c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-skx-xxv710-64b-4t2c-base-pdr}
+ \label{fig:2n-skx-xxv710-64b-4t2c-base-pdr}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-hsw-x710.rst b/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-hsw-x710.rst
new file mode 100644
index 0000000000..6c16bc59c7
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-hsw-x710.rst
@@ -0,0 +1,125 @@
+
+.. 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>
+
+3n-hsw-x710
+~~~~~~~~~~~
+
+Following sections include summary graphs of Phy-to-Phy performance with
+packet routed forwarding, including NDR throughput (zero packet loss)
+and PDR throughput (<0.5% packet loss).
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-1t1c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-1t1c-base-ndr}
+ \label{fig:3n-hsw-x710-64b-1t1c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-1t1c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-1t1c-base-pdr}
+ \label{fig:3n-hsw-x710-64b-1t1c-base-pdr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-2t2c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-2t2c-base-ndr}
+ \label{fig:3n-hsw-x710-64b-2t2c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-x710-64b-2t2c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-x710-64b-2t2c-base-pdr}
+ \label{fig:3n-hsw-x710-64b-2t2c-base-pdr}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-hsw-xl710.rst b/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-hsw-xl710.rst
new file mode 100644
index 0000000000..f3f88b3aa4
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-hsw-xl710.rst
@@ -0,0 +1,125 @@
+
+.. 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>
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+Following sections include summary graphs of Phy-to-Phy performance with
+packet routed forwarding, including NDR throughput (zero packet loss)
+and PDR throughput (<0.5% packet loss).
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-1t1c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-1t1c-base-ndr}
+ \label{fig:3n-hsw-xl710-64b-1t1c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-1t1c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-1t1c-base-pdr}
+ \label{fig:3n-hsw-xl710-64b-1t1c-base-pdr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-2t2c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-2t2c-base-ndr}
+ \label{fig:3n-hsw-xl710-64b-2t2c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-hsw-xl710-64b-2t2c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-hsw-xl710-64b-2t2c-base-pdr}
+ \label{fig:3n-hsw-xl710-64b-2t2c-base-pdr}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-skx-x710.rst b/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-skx-x710.rst
new file mode 100644
index 0000000000..2460b9aa43
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-skx-x710.rst
@@ -0,0 +1,125 @@
+
+.. 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>
+
+3n-skx-x710
+~~~~~~~~~~~
+
+Following sections include summary graphs of Phy-to-Phy performance with
+packet routed forwarding, including NDR throughput (zero packet loss)
+and PDR throughput (<0.5% packet loss).
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-2t1c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-2t1c-base-ndr}
+ \label{fig:3n-skx-x710-64b-2t1c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-2t1c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-2t1c-base-pdr}
+ \label{fig:3n-skx-x710-64b-2t1c-base-pdr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-4t2c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-4t2c-base-ndr}
+ \label{fig:3n-skx-x710-64b-4t2c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-x710-64b-4t2c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-x710-64b-4t2c-base-pdr}
+ \label{fig:3n-skx-x710-64b-4t2c-base-pdr}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-skx-xxv710.rst b/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-skx-xxv710.rst
new file mode 100644
index 0000000000..e31e15aa82
--- /dev/null
+++ b/docs/report/dpdk_performance_tests/packet_throughput_graphs/3n-skx-xxv710.rst
@@ -0,0 +1,125 @@
+
+.. 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>
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+Following sections include summary graphs of Phy-to-Phy performance with
+packet routed forwarding, including NDR throughput (zero packet loss)
+and PDR throughput (<0.5% packet loss).
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1908>`_.
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-2t1c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-2t1c-base-ndr}
+ \label{fig:3n-skx-xxv710-64b-2t1c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-2t1c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-2t1c-base-pdr}
+ \label{fig:3n-skx-xxv710-64b-2t1c-base-pdr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-base
+-------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-4t2c-base-ndr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-4t2c-base-ndr}
+ \label{fig:3n-skx-xxv710-64b-4t2c-base-ndr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+.. raw:: html
+
+ <center>
+ <iframe id="04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/3n-skx-xxv710-64b-4t2c-base-pdr.html"></iframe>
+ <p><br></p>
+ </center>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/dpdk/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{3n-skx-xxv710-64b-4t2c-base-pdr}
+ \label{fig:3n-skx-xxv710-64b-4t2c-base-pdr}
+ \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_throughput_graphs/index.rst b/docs/report/dpdk_performance_tests/packet_throughput_graphs/index.rst
index f4de25c3ad..b01fd85eb2 100644
--- a/docs/report/dpdk_performance_tests/packet_throughput_graphs/index.rst
+++ b/docs/report/dpdk_performance_tests/packet_throughput_graphs/index.rst
@@ -44,9 +44,9 @@ Additional information about graph data:
.. note::
Test results have been generated by
- `FD.io test executor dpdk performance job 3n-hsw`_,
+ `FD.io test executor dpdk performance job 2n-skx`_,
`FD.io test executor dpdk performance job 3n-skx`_ and
- `FD.io test executor dpdk performance job 2n-skx`_ with RF
+ `FD.io test executor dpdk performance job 3n-hsw`_ with RF
result files csit-dpdk-perf-|srelease|-\*.zip
`archived here <../../_static/archive/>`_.
Required per test case data set size is **10** and for DPDK tests
@@ -56,5 +56,9 @@ Additional information about graph data:
.. toctree::
:maxdepth: 3
- l2
- ip4
+ 2n-skx-xxv710
+ 2n-skx-x710
+ 3n-skx-xxv710
+ 3n-skx-x710
+ 3n-hsw-xl710
+ 3n-hsw-x710
diff --git a/docs/report/dpdk_performance_tests/packet_throughput_graphs/ip4.rst b/docs/report/dpdk_performance_tests/packet_throughput_graphs/ip4.rst
deleted file mode 100644
index beabcd72f4..0000000000
--- a/docs/report/dpdk_performance_tests/packet_throughput_graphs/ip4.rst
+++ /dev/null
@@ -1,664 +0,0 @@
-
-.. 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>
-
-L3fwd
-=====
-
-Following sections include summary graphs ofL3FWD Phy-to-Phy performance with
-packet routed forwarding, including NDR throughput (zero packet loss)
-and PDR throughput (<0.5% packet loss). Performance is reported for L3FWD
-running in multiple configurations of L3FWD pmd thread(s), a.k.a. L3FWD
-data plane thread(s), and their physical CPU core(s) placement.
-
-CSIT source code for the test cases used for plots can be found in
-`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1901>`_.
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-x520
-~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x520-64b-1t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x520-64b-1t1c-base-ndr}
- \label{fig:l3fwd-3n-hsw-x520-64b-1t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x520-64b-1t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x520-64b-1t1c-base-pdr}
- \label{fig:l3fwd-3n-hsw-x520-64b-1t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x520-64b-2t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x520-64b-2t2c-base-ndr}
- \label{fig:l3fwd-3n-hsw-x520-64b-2t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x520-64b-2t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x520-64b-2t2c-base-pdr}
- \label{fig:l3fwd-3n-hsw-x520-64b-2t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-x710
-~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm05" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x710-64b-1t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x710-64b-1t1c-base-ndr}
- \label{fig:l3fwd-3n-hsw-x710-64b-1t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm06" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x710-64b-1t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x710-64b-1t1c-base-pdr}
- \label{fig:l3fwd-3n-hsw-x710-64b-1t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm07" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x710-64b-2t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x710-64b-2t2c-base-ndr}
- \label{fig:l3fwd-3n-hsw-x710-64b-2t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm08" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-x710-64b-2t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-x710-64b-2t2c-base-pdr}
- \label{fig:l3fwd-3n-hsw-x710-64b-2t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-xl710
-~~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm09" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-xl710-64b-1t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-xl710-64b-1t1c-base-ndr}
- \label{fig:l3fwd-3n-hsw-xl710-64b-1t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm10" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-xl710-64b-1t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-xl710-64b-1t1c-base-pdr}
- \label{fig:l3fwd-3n-hsw-xl710-64b-1t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-xl710-64b-2t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-xl710-64b-2t2c-base-ndr}
- \label{fig:l3fwd-3n-hsw-xl710-64b-2t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-hsw-xl710-64b-2t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-hsw-xl710-64b-2t2c-base-pdr}
- \label{fig:l3fwd-3n-hsw-xl710-64b-2t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-skx-x710
-~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-x710-64b-2t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-x710-64b-2t1c-base-ndr}
- \label{fig:l3fwd-3n-skx-x710-64b-2t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm14" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-x710-64b-2t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-x710-64b-2t1c-base-pdr}
- \label{fig:l3fwd-3n-skx-x710-64b-2t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm15" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-x710-64b-4t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-x710-64b-4t2c-base-ndr}
- \label{fig:l3fwd-3n-skx-x710-64b-4t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm16" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-x710-64b-4t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-x710-64b-4t2c-base-pdr}
- \label{fig:l3fwd-3n-skx-x710-64b-4t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-skx-xxv710
-~~~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm17" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-xxv710-64b-2t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-xxv710-64b-2t1c-base-ndr}
- \label{fig:l3fwd-3n-skx-xxv710-64b-2t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm18" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-xxv710-64b-2t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-xxv710-64b-2t1c-base-pdr}
- \label{fig:l3fwd-3n-skx-xxv710-64b-2t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm19" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-xxv710-64b-4t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-xxv710-64b-4t2c-base-ndr}
- \label{fig:l3fwd-3n-skx-xxv710-64b-4t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm20" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-3n-skx-xxv710-64b-4t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-3n-skx-xxv710-64b-4t2c-base-pdr}
- \label{fig:l3fwd-3n-skx-xxv710-64b-4t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-2n-skx-x710
-~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-x710-64b-2t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-x710-64b-2t1c-base-ndr}
- \label{fig:l3fwd-2n-skx-x710-64b-2t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-x710-64b-2t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-x710-64b-2t1c-base-pdr}
- \label{fig:l3fwd-2n-skx-x710-64b-2t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm23" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-x710-64b-4t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-x710-64b-4t2c-base-ndr}
- \label{fig:l3fwd-2n-skx-x710-64b-4t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm24" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-x710-64b-4t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-x710-64b-4t2c-base-pdr}
- \label{fig:l3fwd-2n-skx-x710-64b-4t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-2n-skx-xxv710
-~~~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm25" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-xxv710-64b-2t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-xxv710-64b-2t1c-base-ndr}
- \label{fig:l3fwd-2n-skx-xxv710-64b-2t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm26" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-xxv710-64b-2t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-xxv710-64b-2t1c-base-pdr}
- \label{fig:l3fwd-2n-skx-xxv710-64b-2t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm27" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-xxv710-64b-4t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-xxv710-64b-4t2c-base-ndr}
- \label{fig:l3fwd-2n-skx-xxv710-64b-4t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm28" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/l3fwd-2n-skx-xxv710-64b-4t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{l3fwd-2n-skx-xxv710-64b-4t2c-base-pdr}
- \label{fig:l3fwd-2n-skx-xxv710-64b-4t2c-base-pdr}
- \end{figure}
diff --git a/docs/report/dpdk_performance_tests/packet_throughput_graphs/l2.rst b/docs/report/dpdk_performance_tests/packet_throughput_graphs/l2.rst
deleted file mode 100644
index 8447b6a694..0000000000
--- a/docs/report/dpdk_performance_tests/packet_throughput_graphs/l2.rst
+++ /dev/null
@@ -1,660 +0,0 @@
-
-.. 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>
-
-Testpmd
-=======
-
-Following sections include summary graphs of DPDK Testpmd Phy-to-Phy performance
-with L2 Ethernet Interface Loop, including NDR throughput (zero packet loss)
-and PDR throughput (<0.5% packet loss). Performance is reported for Testpmd
-running in multiple configurations of Testpmd pmd thread(s), a.k.a. Testpmd
-data plane thread(s), and their physical CPU core(s) placement.
-
-CSIT source code for the test cases used for plots can be found in
-`CSIT git repository <https://git.fd.io/csit/tree/tests/dpdk/perf?h=rls1901>`_.
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-x520
-~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x520-64b-1t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x520-64b-1t1c-base-ndr}
- \label{fig:testpmd-3n-hsw-x520-64b-1t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x520-64b-1t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x520-64b-1t1c-base-pdr}
- \label{fig:testpmd-3n-hsw-x520-64b-1t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x520-64b-2t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x520-64b-2t2c-base-ndr}
- \label{fig:testpmd-3n-hsw-x520-64b-2t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm04" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x520-64b-2t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x520-64b-2t2c-base-pdr}
- \label{fig:testpmd-3n-hsw-x520-64b-2t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-x710
-~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm05" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x710-64b-1t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x710-64b-1t1c-base-ndr}
- \label{fig:testpmd-3n-hsw-x710-64b-1t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm06" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x710-64b-1t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x710-64b-1t1c-base-pdr}
- \label{fig:testpmd-3n-hsw-x710-64b-1t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm07" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x710-64b-2t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x710-64b-2t2c-base-ndr}
- \label{fig:testpmd-3n-hsw-x710-64b-2t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm08" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-x710-64b-2t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-x710-64b-2t2c-base-pdr}
- \label{fig:testpmd-3n-hsw-x710-64b-2t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-hsw-xl710
-~~~~~~~~~~~~
-
-64b-1t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm09" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-xl710-64b-1t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-xl710-64b-1t1c-base-ndr}
- \label{fig:testpmd-3n-hsw-xl710-64b-1t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm10" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-xl710-64b-1t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-xl710-64b-1t1c-base-pdr}
- \label{fig:testpmd-3n-hsw-xl710-64b-1t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-2t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-xl710-64b-2t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-xl710-64b-2t2c-base-ndr}
- \label{fig:testpmd-3n-hsw-xl710-64b-2t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-hsw-xl710-64b-2t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-hsw-xl710-64b-2t2c-base-pdr}
- \label{fig:testpmd-3n-hsw-xl710-64b-2t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-skx-x710
-~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-x710-64b-2t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-x710-64b-2t1c-base-ndr}
- \label{fig:testpmd-3n-skx-x710-64b-2t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm14" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-x710-64b-2t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-x710-64b-2t1c-base-pdr}
- \label{fig:testpmd-3n-skx-x710-64b-2t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm15" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-x710-64b-4t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-x710-64b-4t2c-base-ndr}
- \label{fig:testpmd-3n-skx-x710-64b-4t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm16" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-x710-64b-4t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-x710-64b-4t2c-base-pdr}
- \label{fig:testpmd-3n-skx-x710-64b-4t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-3n-skx-xxv710
-~~~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm17" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-xxv710-64b-2t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-xxv710-64b-2t1c-base-ndr}
- \label{fig:testpmd-3n-skx-xxv710-64b-2t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm18" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-xxv710-64b-2t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-xxv710-64b-2t1c-base-pdr}
- \label{fig:testpmd-3n-skx-xxv710-64b-2t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm19" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-xxv710-64b-4t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-xxv710-64b-4t2c-base-ndr}
- \label{fig:testpmd-3n-skx-xxv710-64b-4t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm20" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-3n-skx-xxv710-64b-4t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-3n-skx-xxv710-64b-4t2c-base-pdr}
- \label{fig:testpmd-3n-skx-xxv710-64b-4t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-2n-skx-x710
-~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-x710-64b-2t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-x710-64b-2t1c-base-ndr}
- \label{fig:testpmd-2n-skx-x710-64b-2t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-x710-64b-2t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-x710-64b-2t1c-base-pdr}
- \label{fig:testpmd-2n-skx-x710-64b-2t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm23" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-x710-64b-4t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-x710-64b-4t2c-base-ndr}
- \label{fig:testpmd-2n-skx-x710-64b-4t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm24" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-x710-64b-4t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-x710-64b-4t2c-base-pdr}
- \label{fig:testpmd-2n-skx-x710-64b-4t2c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-2n-skx-xxv710
-~~~~~~~~~~~~~
-
-64b-2t1c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm25" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-xxv710-64b-2t1c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-xxv710-64b-2t1c-base-ndr}
- \label{fig:testpmd-2n-skx-xxv710-64b-2t1c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm26" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-xxv710-64b-2t1c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-xxv710-64b-2t1c-base-pdr}
- \label{fig:testpmd-2n-skx-xxv710-64b-2t1c-base-pdr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-64b-4t2c-base
--------------
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm27" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-xxv710-64b-4t2c-base-ndr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-xxv710-64b-4t2c-base-ndr}
- \label{fig:testpmd-2n-skx-xxv710-64b-4t2c-base-ndr}
- \end{figure}
-
-.. raw:: latex
-
- \clearpage
-
-.. raw:: html
-
- <center>
- <iframe id="ifrm28" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/dpdk/testpmd-2n-skx-xxv710-64b-4t2c-base-pdr.html"></iframe>
- <p><br></p>
- </center>
-
-.. raw:: latex
-
- \begin{figure}[H]
- \centering
- \graphicspath{{../_build/_static/dpdk/}}
- \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{testpmd-2n-skx-xxv710-64b-4t2c-base-pdr}
- \label{fig:testpmd-2n-skx-xxv710-64b-4t2c-base-pdr}
- \end{figure}
diff --git a/docs/report/index.html.template b/docs/report/index.html.template
index 24188c1887..56726a7811 100644
--- a/docs/report/index.html.template
+++ b/docs/report/index.html.template
@@ -20,6 +20,7 @@ CSIT-1908
vpp_performance_tests/packet_throughput_graphs/index
vpp_performance_tests/throughput_speedup_multi_core/index
vpp_performance_tests/packet_latency_graphs/index
+ vpp_performance_tests/hdrh_packet_latency_graphs/index
vpp_performance_tests/soak_tests/index
vpp_performance_tests/reconf_tests/index
vpp_performance_tests/nf_service_density/index
@@ -37,6 +38,7 @@ CSIT-1908
dpdk_performance_tests/csit_release_notes
dpdk_performance_tests/packet_throughput_graphs/index
dpdk_performance_tests/packet_latency_graphs/index
+ dpdk_performance_tests/hdrh_packet_latency_graphs/index
dpdk_performance_tests/comparisons/index
dpdk_performance_tests/throughput_trending
dpdk_performance_tests/test_environment
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-2n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-2n-skx-xxv710.rst
new file mode 100644
index 0000000000..cda380b79f
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-2n-skx-xxv710.rst
@@ -0,0 +1,105 @@
+
+.. 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-skx-xxv710
+ ### 64b-?t?c-memif-base-i40e
+ 2n1l-10ge2p1xxv710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr
+ 2n1l-10ge2p1xxv710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr
+ 2n1l-10ge2p1xxv710-eth-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr
+
+2n-skx-xxv710
+~~~~~~~~~~~~~
+
+64b-2t1c-memif-base-i40e
+------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-2t1c-memif-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-2t1c-memif-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-memif-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-memif-base-i40e
+------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-4t2c-memif-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-4t2c-memif-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-memif-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-memif-base-i40e
+------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-8t4c-memif-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-8t4c-memif-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-memif-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-3n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-3n-skx-xxv710.rst
new file mode 100644
index 0000000000..97d3b58358
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-3n-skx-xxv710.rst
@@ -0,0 +1,106 @@
+
+.. 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>
+
+..
+ ## 3n-skx-xxv710
+ ### 64b-?t?c-memif-base-i40e
+ 10ge2p1xxv710-eth-l2xcbase-eth-2memif-1lxc-ndrpdr
+ 10ge2p1xxv710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr
+ 10ge2p1xxv710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrpdr
+ 10ge2p1xxv710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+64b-2t1c-memif-base-i40e
+------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-memif-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-memif-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-memif-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-memif-base-i40e
+------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-memif-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-memif-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-memif-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-memif-base-i40e
+------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-memif-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-memif-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-memif-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-3n-tsh-x520.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-3n-tsh-x520.rst
new file mode 100644
index 0000000000..a315b771fc
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif-3n-tsh-x520.rst
@@ -0,0 +1,112 @@
+
+.. 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>
+
+..
+ ## 3n-tsh-x520
+ ### 64b-?t?c-memif-base-ixgbe
+ 10ge2p1x520-eth-l2xcbase-eth-2memif-1lxc-ndrpdr
+ 10ge2p1x520-eth-l2xcbase-eth-2memif-1dcr-ndrpdr
+ 10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrpdr
+ 10ge2p1x520-ethip4-ip4base-eth-2memif-1dcr-ndrpdr
+
+ Tests.Vpp.Perf.Container Memif.10Ge2P1X520-Eth-L2Xcbase-Eth-2Memif-1Lxc-Ndrpdr.64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-ndrpdr
+ Tests.Vpp.Perf.Container Memif.10Ge2P1X520-Eth-L2Xcbase-Eth-2Memif-1Dcr-Ndrpdr.64B-1t1c-eth-l2xcbase-eth-2memif-1dcr-ndrpdr
+ Tests.Vpp.Perf.Container Memif.10Ge2P1X520-Dot1Q-L2Bdbasemaclrn-Eth-2Memif-1Dcr-Ndrpdr.64B-1t1c-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr
+ Tests.Vpp.Perf.Container Memif.10Ge2P1X520-Eth-L2Bdbasemaclrn-Eth-2Memif-1Lxc-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrpdr
+ Tests.Vpp.Perf.Container Memif.10Ge2P1X520-Ethip4-Ip4Base-Eth-2Memif-1Dcr-Ndrpdr.64B-1t1c-ethip4-ip4base-eth-2memif-1dcr-ndrpdr
+
+3n-tsh-x520
+~~~~~~~~~~~
+
+64b-1t1c-memif-base-ixgbe
+-------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-1t1c-memif-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-1t1c-memif-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-1t1c-memif-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-memif-base-ixgbe
+-------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-2t2c-memif-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-2t2c-memif-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-2t2c-memif-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-memif-base-ixgbe
+-------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-4t4c-memif-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-4t4c-memif-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-4t4c-memif-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif.rst
new file mode 100644
index 0000000000..2c8a4baff9
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/container_memif.rst
@@ -0,0 +1,22 @@
+
+.. raw:: latex
+
+ \clearpage
+
+LXC/DRC Container Memif
+=======================
+
+This section includes summary graphs of VPP Phy-to-Phy packet latency
+with Container memif Connections measured at 100% of discovered NDR throughput
+rate. Latency is reported for VPP running in multiple configurations of
+VPP worker thread(s), a.k.a. VPP data plane thread(s), and their
+physical CPU core(s) placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/vpp/perf/container_memif?h=rls1908>`_.
+
+.. toctree::
+
+ container_memif-2n-skx-xxv710
+ container_memif-3n-skx-xxv710
+ container_memif-3n-tsh-x520
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/index.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/index.rst
new file mode 100644
index 0000000000..2911c16a36
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/index.rst
@@ -0,0 +1,38 @@
+
+.. raw:: latex
+
+ \clearpage
+
+.. _VPP_HDRH_Packet_Latency:
+
+HDRHistogram Packet Latency
+===========================
+
+Latency results are generated from a single execution of NDR discovery
+test across physical testbeds hosted LF FD.io labs: 3n-hsw, 2n-skx, 2n-
+skx, 3n-tsh.
+
+.. note::
+
+ Test results have been generated by
+ `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 3n-hsw`_ and
+ `FD.io test executor vpp performance job 3n-tsh`_ with RF
+ result files csit-vpp-perf-|srelease|-\*.zip
+ `archived here <../../_static/archive/>`_.
+
+.. toctree::
+ :maxdepth: 3
+
+ l2
+ ip4
+ ip6
+ srv6
+ ip4_tunnels
+ vm_vhost
+ container_memif
+
+..
+ ipsec
+ vts
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-2n-skx-x710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-2n-skx-x710.rst
new file mode 100644
index 0000000000..6268ea96ce
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-2n-skx-x710.rst
@@ -0,0 +1,106 @@
+
+.. 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-skx-x710
+ ### 64b-?t?c-ip4routing-base-scale-avf-i40e
+ 2n1l-10ge2p1x710-avf-ethip4-ip4base-ndrpdr
+ 2n1l-10ge2p1x710-avf-ethip4-ip4scale2m-ndrpdr
+ 2n1l-10ge2p1x710-dot1q-ip4base-ndrpdr
+ 2n1l-10ge2p1x710-ethip4-ip4base-ndrpdr
+ 2n1l-10ge2p1x710-ethip4-ip4scale2m-ndrpdr
+
+2n-skx-x710
+~~~~~~~~~~~
+
+64b-2t1c-ip4routing-base-scale-avf-i40e
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-x710-64b-2t1c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat.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-skx-x710-64b-2t1c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-64b-2t1c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-ip4routing-base-scale-avf-i40e
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-x710-64b-4t2c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat.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-skx-x710-64b-4t2c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-64b-4t2c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-ip4routing-base-scale-avf-i40e
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-x710-64b-8t4c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat.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-skx-x710-64b-8t4c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-64b-8t4c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-2n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-2n-skx-xxv710.rst
new file mode 100644
index 0000000000..df0f3a39b4
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-2n-skx-xxv710.rst
@@ -0,0 +1,259 @@
+
+.. 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-skx-xxv710
+ ### 64b-?t?c-ip4routing-base-scale-avf
+ 2n1l-10ge2p1xxv710-avf-dot1q-ip4base-ndrpdr
+ 2n1l-10ge2p1xxv710-avf-ethip4-ip4base-ndrpdr
+ 2n1l-10ge2p1xxv710-avf-ethip4-ip4scale20k-ndrpdr
+ 2n1l-10ge2p1xxv710-avf-ethip4-ip4scale200k-ndrpdr
+ 2n1l-10ge2p1xxv710-avf-ethip4-ip4scale2m-ndrpdr
+
+ ### 64b-?t?c-ip4routing-base-scale-i40e
+ 2n1l-10ge2p1xxv710-dot1q-ip4base-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4-ip4base-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4-ip4scale20k-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4-ip4scale200k-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4-ip4scale2m-ndrpdr
+
+ ### 64b-?t?c-features-ip4routing-base-i40e
+ 2n1l-10ge2p1xxv710-ethip4-ip4base-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4udp-ip4base-nat44-ndrpdr
+
+2n-skx-xxv710
+~~~~~~~~~~~~~
+
+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-skx-xxv710-64b-2t1c-ip4routing-base-scale-avf-ndr-hdrh-lat.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-skx-xxv710-64b-2t1c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-ip4routing-base-scale-avf
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-4t2c-ip4routing-base-scale-avf-ndr-hdrh-lat.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-skx-xxv710-64b-4t2c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-ip4routing-base-scale-avf
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-8t4c-ip4routing-base-scale-avf-ndr-hdrh-lat.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-skx-xxv710-64b-8t4c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-ip4routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-2t1c-ip4routing-base-scale-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-2t1c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-ip4routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-4t2c-ip4routing-base-scale-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-4t2c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-ip4routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-8t4c-ip4routing-base-scale-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-8t4c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-features-ip4routing-base-i40e
+--------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-2t1c-features-ip4routing-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-2t1c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-features-ip4routing-base-i40e
+--------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-4t2c-features-ip4routing-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-4t2c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-features-ip4routing-base-i40e
+--------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="23" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-8t4c-features-ip4routing-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-8t4c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-hsw-xl710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-hsw-xl710.rst
new file mode 100644
index 0000000000..c0e185a1ff
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-hsw-xl710.rst
@@ -0,0 +1,104 @@
+
+.. 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>
+
+..
+ ## 3n-hsw-xl710
+ ### 64b-?t?c-ip4routing-base-scale-i40e
+ 10ge2p1xl710-dot1q-ip4base-ndrpdr
+ 10ge2p1xl710-ethip4-ip4base-ndrpdr
+ 10ge2p1xl710-ethip4-ip4scale2m-ndrpdr
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+64b-1t1c-ip4routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-1t1c-ip4routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-1t1c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-1t1c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-ip4routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-2t2c-ip4routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-2t2c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-2t2c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-ip4routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-4t4c-ip4routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-4t4c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-4t4c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-skx-x710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-skx-x710.rst
new file mode 100644
index 0000000000..7e1594fe07
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-skx-x710.rst
@@ -0,0 +1,106 @@
+
+.. 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>
+
+..
+ ## 3n-skx-x710
+ ### 64b-?t?c-ip4routing-base-scale-avf-i40e
+ 10ge2p1x710-avf-ethip4-ip4base-ndrpdr
+ 10ge2p1x710-avf-ethip4-ip4scale2m-ndrpdr
+ 10ge2p1x710-dot1q-ip4base-ndrpdr
+ 10ge2p1x710-ethip4-ip4base-ndrpdr
+ 10ge2p1x710-ethip4-ip4scale2m-ndrpdr
+
+3n-skx-x710
+~~~~~~~~~~~
+
+64b-2t1c-ip4routing-base-scale-avf-i40e
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-2t1c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat.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]{ip4-3n-skx-x710-64b-2t1c-base_and_scale-ndr-hdrh-lat}
+ \label{fig:ip4-3n-skx-x710-64b-2t1c-base_and_scale-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-ip4routing-base-scale-avf-i40e
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-4t2c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat.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]{ip4-3n-skx-x710-64b-4t2c-base_and_scale-ndr-hdrh-lat}
+ \label{fig:ip4-3n-skx-x710-64b-4t2c-base_and_scale-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-ip4routing-base-scale-avf-i40e
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-8t4c-ip4routing-base-scale-avf-i40e-ndr-hdrh-lat.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]{ip4-3n-skx-x710-64b-8t4c-base_and_scale-ndr-hdrh-lat}
+ \label{fig:ip4-3n-skx-x710-64b-8t4c-base_and_scale-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-skx-xxv710.rst
new file mode 100644
index 0000000000..d0900e582c
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-skx-xxv710.rst
@@ -0,0 +1,258 @@
+
+.. 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>
+
+..
+ ## 3n-skx-xxv710
+ ### 64b-?t?c-ip4routing-base-scale-avf
+ 10ge2p1xxv710-avf-eth-ip4base-ndrpdr
+ 10ge2p1xxv710-avf-ethip4-ip4scale20k-ndrpdr
+ 10ge2p1xxv710-avf-ethip4-ip4scale200k-ndrpdr
+ 10ge2p1xxv710-avf-ethip4-ip4scale2m-ndrpdr
+
+ ### 64b-?t?c-ip4routing-base-scale-i40e
+ 10ge2p1xxv710-dot1q-ip4base-ndrpdr
+ 10ge2p1xxv710-ethip4-ip4base-ndrpdr
+ 10ge2p1xxv710-ethip4-ip4scale20k-ndrpdr
+ 10ge2p1xxv710-ethip4-ip4scale200k-ndrpdr
+ 10ge2p1xxv710-ethip4-ip4scale2m-ndrpdr
+
+ ### 64b-?t?c-features-ip4routing-base-i40e
+ 10ge2p1xxv710-ethip4-ip4base-ndrpdr
+ 10ge2p1xxv710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr
+ 10ge2p1xxv710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr
+ 10ge2p1xxv710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr
+ 10ge2p1xxv710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr
+ 10ge2p1xxv710-ethip4udp-ip4base-nat44-ndrpdr
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+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/3n-skx-xxv710-64b-2t1c-ip4routing-base-scale-avf-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-ip4routing-base-scale-avf
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-ip4routing-base-scale-avf-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-ip4routing-base-scale-avf
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-ip4routing-base-scale-avf-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-ip4routing-base-scale-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-ip4routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-ip4routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-ip4routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-ip4routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-ip4routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-ip4routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-features-ip4routing-base-i40e
+--------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-features-ip4routing-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-features-ip4routing-base-i40e
+--------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-features-ip4routing-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-features-ip4routing-base-i40e
+--------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="23" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-features-ip4routing-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-features-ip4routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-tsh-x520.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-tsh-x520.rst
new file mode 100644
index 0000000000..44339423d1
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4-3n-tsh-x520.rst
@@ -0,0 +1,195 @@
+
+.. 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>
+
+..
+ ### 64b-?t?c-ip4routing-base-scale-ixgbe
+ 10ge2p1x520-dot1q-ip4base-ndrpdr
+ 10ge2p1x520-ethip4-ip4base-ndrpdr
+ 10ge2p1x520-ethip4-ip4scale20k-ndrpdr
+ 10ge2p1x520-ethip4-ip4scale200k-ndrpdr
+ 10ge2p1x520-ethip4-ip4scale2m-ndrpdr
+
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Dot1Q-Ip4Base-Ndrpdr.64B-1t1c-dot1q-ip4base-ndrpdr
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4-Ip4Base-Ndrpdr.64B-1t1c-ethip4-ip4base-ndrpdr
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4-Ip4Scale20K-Ndrpdr.64B-1t1c-ethip4-ip4scale20k-ndrpdr
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4-Ip4Scale200K-Ndrpdr.64B-1t1c-ethip4-ip4scale200k-ndrpdr
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4-Ip4Scale2M-Ndrpdr.64B-1t1c-ethip4-ip4scale2m-ndrpdr
+
+ ### 64b-?t?c-features-ip4routing-base-ixgbe
+ 10ge2p1x520-ethip4-ip4base-ndrpdr
+ 10ge2p1x520-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr
+ 10ge2p1x520-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr
+ 10ge2p1x520-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr
+ 10ge2p1x520-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr
+ 10ge2p1x520-ethip4udp-ip4base-nat44-ndrpdr
+
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4-Ip4Base-Ndrpdr.64B-1t1c-ethip4-ip4base-ndrpdr
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4Udp-Ip4Base-Iacl50Sf-10Kflows-Ndrpdr.64B-1t1c-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4Udp-Ip4Base-Iacl50Sl-10Kflows-Ndrpdr.64B-1t1c-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4Udp-Ip4Base-Oacl50Sf-10Kflows-Ndrpdr.64B-1t1c-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4Udp-Ip4Base-Oacl50Sl-10Kflows-Ndrpdr.64B-1t1c-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr
+ Tests.Vpp.Perf.Ip4.10Ge2P1X520-Ethip4Udp-Ip4Base-Nat44-Ndrpdr.64B-1t1c-ethip4udp-ip4base-nat44-ndrpdr
+
+3n-tsh-x520
+~~~~~~~~~~~
+
+64b-1t1c-ip4routing-base-scale-ixgbe
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-1t1c-ip4routing-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-1t1c-ip4routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-1t1c-ip4routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-ip4routing-base-scale-ixgbe
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-2t2c-ip4routing-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-2t2c-ip4routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-2t2c-ip4routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-ip4routing-base-scale-ixgbe
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-4t4c-ip4routing-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-4t4c-ip4routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-4t4c-ip4routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-features-ip4routing-base-ixgbe
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-1t1c-features-ip4routing-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-1t1c-features-ip4routing-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-1t1c-features-ip4routing-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-features-ip4routing-base-ixgbe
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-2t2c-features-ip4routing-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-2t2c-features-ip4routing-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-2t2c-features-ip4routing-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-features-ip4routing-base-ixgbe
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="23" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-4t4c-features-ip4routing-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-4t4c-features-ip4routing-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-4t4c-features-ip4routing-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4.rst
new file mode 100644
index 0000000000..23c19dee3f
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4.rst
@@ -0,0 +1,25 @@
+
+.. raw:: latex
+
+ \clearpage
+
+IPv4 Routing
+============
+
+This section includes summary graphs of VPP Phy-to-Phy packet latency
+with IPv4 Routed-Forwarding measured at 100% of discovered NDR throughput
+rate. Latency is reported for VPP running in multiple configurations of
+VPP worker thread(s), a.k.a. VPP data plane thread(s), and their
+physical CPU core(s) placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/vpp/perf/ip4?h=rls1908>`_.
+
+.. toctree::
+
+ ip4-2n-skx-xxv710
+ ip4-2n-skx-x710
+ ip4-3n-skx-xxv710
+ ip4-3n-skx-x710
+ ip4-3n-hsw-xl710
+ ip4-3n-tsh-x520
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-hsw-xl710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-hsw-xl710.rst
new file mode 100644
index 0000000000..ac097f4efa
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-hsw-xl710.rst
@@ -0,0 +1,103 @@
+
+.. 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>
+
+..
+ ## 3n-hsw-xl710
+ ### 64b-?t?c-ip4tunnel-base-i40e
+ 10ge2p1xl710-ethip4vxlan-l2xcbase-ndrpdr
+ 10ge2p1xl710-ethip4vxlan-l2bdbasemaclrn-ndrpdr
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+64b-1t1c-ip4tunnel-base-i40e
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-1t1c-ip4tunnel-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-1t1c-ip4tunnel-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-1t1c-ip4tunnel-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-ip4tunnel-base-i40e
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-2t2c-ip4tunnel-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-2t2c-ip4tunnel-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-2t2c-ip4tunnel-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-ip4tunnel-base-i40e
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-4t4c-ip4tunnel-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-4t4c-ip4tunnel-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-4t4c-ip4tunnel-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-skx-xxv710.rst
new file mode 100644
index 0000000000..42d3e6db8c
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-skx-xxv710.rst
@@ -0,0 +1,104 @@
+
+.. 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>
+..
+ ## 3n-skx-xxv710
+ ### 64b-?t?c-ip4tunnel-base-scale-i40e
+ 10ge2p1xxv710-ethip4vxlan-l2xcbase-ndrpdr
+ 10ge2p1xxv710-ethip4vxlan-l2bdbasemaclrn-ndrpdr
+ 10ge2p1xxv710-dot1q--ethip4vxlan-l2bdscale1l2bd1vlan1vxlan-ndrpdr
+ 10ge2p1xxv710-dot1q--ethip4vxlan-l2bdscale100l2bd100vlan100vxlan-ndrpdr
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+64b-2t1c-ip4tunnel-base-scale-i40e
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-ip4tunnel-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-ip4tunnel-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-ip4tunnel-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-ip4tunnel-base-scale-i40e
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-ip4tunnel-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-ip4tunnel-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-ip4tunnel-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-ip4tunnel-base-scale-i40e
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-ip4tunnel-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-ip4tunnel-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-ip4tunnel-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-tsh-x520.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-tsh-x520.rst
new file mode 100644
index 0000000000..0aa7462f89
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels-3n-tsh-x520.rst
@@ -0,0 +1,109 @@
+
+.. 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>
+..
+ ## 3n-tsh-x520
+ ### 64b-?t?c-ip4tunnel-base-scale-ixgbe
+ 10ge2p1x520-ethip4vxlan-l2xcbase-ndrpdr
+ 10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-ndrpdr
+ 10ge2p1x520-dot1q--ethip4vxlan-l2bdscale1l2bd1vlan1vxlan-ndrpdr
+ 10ge2p1x520-dot1q--ethip4vxlan-l2bdscale100l2bd100vlan100vxlan-ndrpdr
+
+ Tests.Vpp.Perf.Ip4 Tunnels.10Ge2P1X520-Ethip4Vxlan-L2Xcbase-Ndrpdr.64B-1t1c-ethip4vxlan-l2xcbase-ndrpdr
+ Tests.Vpp.Perf.Ip4 Tunnels.10Ge2P1X520-Ethip4Vxlan-L2Bdbasemaclrn-Ndrpdr.64B-1t1c-ethip4vxlan-l2bdbasemaclrn-ndrpdr
+ Tests.Vpp.Perf.Ip4 Tunnels.10Ge2P1X520-Dot1Q--Ethip4Vxlan-L2Bdscale1L2Bd1Vlan1Vxlan-Ndrpdr.64B-1t1c-dot1q--ethip4vxlan-l2bdscale1l2bd1vlan1vxlan-ndrpdr
+ Tests.Vpp.Perf.Ip4 Tunnels.10Ge2P1X520-Dot1Q--Ethip4Vxlan-L2Bdscale100L2Bd100Vlan100Vxlan-Ndrpdr.64B-1t1c-dot1q--ethip4vxlan-l2bdscale100l2bd100vlan100vxlan-ndrpdr
+
+3n-tsh-x520
+~~~~~~~~~~~
+
+64b-1t1c-ip4tunnel-base-scale-ixgbe
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-1t1c-ip4tunnel-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-1t1c-ip4tunnel-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-1t1c-ip4tunnel-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-ip4tunnel-base-scale-ixgbe
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-2t2c-ip4tunnel-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-2t2c-ip4tunnel-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-2t2c-ip4tunnel-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-ip4tunnel-base-scale-ixgbe
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-4t4c-ip4tunnel-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-4t4c-ip4tunnel-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-4t4c-ip4tunnel-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels.rst
new file mode 100644
index 0000000000..cc3d5e356a
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip4_tunnels.rst
@@ -0,0 +1,22 @@
+
+.. raw:: latex
+
+ \clearpage
+
+IPv4 Tunnels
+============
+
+This section includes summary graphs of VPP Phy-to-Phy packet latency with
+IPv4 Overlay Tunnels measured at 100% of discovered NDR throughput rate.
+Latency is reported for VPP running in multiple configurations of VPP worker
+thread(s), a.k.a. VPP data plane thread(s), and their physical CPU core(s)
+placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/vpp/perf/ip4_tunnels?h=rls1908>`_.
+
+.. toctree::
+
+ ip4_tunnels-3n-skx-xxv710
+ ip4_tunnels-3n-hsw-xl710
+ ip4_tunnels-3n-tsh-x520
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-2n-skx-x710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-2n-skx-x710.rst
new file mode 100644
index 0000000000..ade26698c4
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-2n-skx-x710.rst
@@ -0,0 +1,103 @@
+
+.. 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-skx-x710
+ ### 78b-?t?c-ip6routing-base-scale-i40e
+ 2n1l-10ge2p1x710-ethip6-ip6base-ndrpdr
+ 2n1l-10ge2p1x710-ethip6-ip6scale2m-ndrpdr
+
+2n-skx-x710
+~~~~~~~~~~~
+
+78b-2t1c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-x710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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-skx-x710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-4t2c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-x710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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-skx-x710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-8t4c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-x710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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-skx-x710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-2n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-2n-skx-xxv710.rst
new file mode 100644
index 0000000000..d013cdcdb8
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-2n-skx-xxv710.rst
@@ -0,0 +1,106 @@
+
+.. 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-skx-xxv710
+ ### 78b-?t?c-ip6routing-base-scale-i40e
+ 2n1l-10ge2p1xxv710-dot1q-ip6base-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip6-ip6base-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip6-ip6scale20k-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip6-ip6scale200k-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip6-ip6scale2m-ndrpdr
+
+2n-skx-xxv710
+~~~~~~~~~~~~~
+
+78b-2t1c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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-skx-xxv710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-4t2c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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-skx-xxv710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-8t4c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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-skx-xxv710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-hsw-xl710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-hsw-xl710.rst
new file mode 100644
index 0000000000..ee4d0dcd49
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-hsw-xl710.rst
@@ -0,0 +1,104 @@
+
+.. 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>
+
+..
+ ## 3n-hsw-xl710
+ ### 78b-?t?c-ip6routing-base-scale-i40e
+ 10ge2p1xl710-dot1q-ip6base-ndrpdr
+ 10ge2p1xl710-ethip6-ip6base-ndrpdr
+ 10ge2p1xl710-ethip6-ip6scale2m-ndrpdr
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+78b-1t1c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-78b-1t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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]{ip6-3n-hsw-xl710-78b-1t1c-base-ndr-hdrh-lat}
+ \label{fig:ip6-3n-hsw-xl710-78b-1t1c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-2t2c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-78b-2t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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]{ip6-3n-hsw-xl710-78b-2t2c-base-ndr-hdrh-lat}
+ \label{fig:ip6-3n-hsw-xl710-78b-2t2c-base-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-4t4c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-78b-4t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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]{ip6-3n-hsw-xl710-78b-4t4c-base-ndr-hdrh-lat}
+ \label{fig:ip6-3n-hsw-xl710-78b-4t4c-base-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-skx-x710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-skx-x710.rst
new file mode 100644
index 0000000000..a57a2039a4
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-skx-x710.rst
@@ -0,0 +1,103 @@
+
+.. 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>
+
+..
+ ## 3n-skx-x710
+ ### 78b-?t?c-ip6routing-base-scale-i40e
+ 10ge2p1x710-ethip6-ip6base-ndrpdr
+ 10ge2p1x710-ethip6-ip6scale2m-ndrpdr
+
+3n-skx-x710
+~~~~~~~~~~~
+
+78b-2t1c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-x710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-4t2c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-x710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-8t4c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-x710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-skx-xxv710.rst
new file mode 100644
index 0000000000..55474eb6ee
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-skx-xxv710.rst
@@ -0,0 +1,106 @@
+
+.. 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>
+
+..
+ ## 3n-skx-xxv710
+ ### 78b-?t?c-ip6routing-base-scale-i40e
+ 10ge2p1xxv710-dot1q-ip6base-ndrpdr
+ 10ge2p1xxv710-ethip6-ip6base-ndrpdr
+ 10ge2p1xxv710-ethip6-ip6scale20k-ndrpdr
+ 10ge2p1xxv710-ethip6-ip6scale200k-ndrpdr
+ 10ge2p1xxv710-ethip6-ip6scale2m-ndrpdr
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+78b-2t1c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-78b-2t1c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-4t2c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-78b-4t2c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-8t4c-ip6routing-base-scale-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-78b-8t4c-ip6routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-tsh-x520.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-tsh-x520.rst
new file mode 100644
index 0000000000..c5c3d7e580
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6-3n-tsh-x520.rst
@@ -0,0 +1,112 @@
+
+.. 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>
+
+..
+ ## 3n-tsh-x520
+ ### 78b-?t?c-ip6routing-base-scale-ixgbe
+ 10ge2p1x520-dot1q-ip6base-ndrpdr
+ 10ge2p1x520-ethip6-ip6base-ndrpdr
+ 10ge2p1x520-ethip6-ip6scale20k-ndrpdr
+ 10ge2p1x520-ethip6-ip6scale200k-ndrpdr
+ 10ge2p1x520-ethip6-ip6scale2m-ndrpdr
+
+ Tests.Vpp.Perf.Ip6.10Ge2P1X520-Dot1Q-Ip6Base-Ndrpdr.78B-1t1c-dot1q-ip6base-ndrpdr
+ Tests.Vpp.Perf.Ip6.10Ge2P1X520-Ethip6-Ip6Base-Ndrpdr.78B-1t1c-ethip6-ip6base-ndrpdr
+ Tests.Vpp.Perf.Ip6.10Ge2P1X520-Ethip6-Ip6Scale20K-Ndrpdr.78B-1t1c-ethip6-ip6scale20k-ndrpdr
+ Tests.Vpp.Perf.Ip6.10Ge2P1X520-Ethip6-Ip6Scale200K-Ndrpdr.78B-1t1c-ethip6-ip6scale200k-ndrpdr
+ Tests.Vpp.Perf.Ip6.10Ge2P1X520-Ethip6-Ip6Scale2M-Ndrpdr.78B-1t1c-ethip6-ip6scale2m-ndrpdr
+
+3n-tsh-x520
+~~~~~~~~~~~
+
+78b-1t1c-ip6routing-base-scale-ixgbe
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-78b-1t1c-ip6routing-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-78b-1t1c-ip6routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-78b-1t1c-ip6routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-2t2c-ip6routing-base-scale-ixgbe
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-78b-2t2c-ip6routing-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-78b-2t2c-ip6routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-78b-2t2c-ip6routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-4t4c-ip6routing-base-scale-ixgbe
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-78b-4t4c-ip6routing-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-78b-4t4c-ip6routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-78b-4t4c-ip6routing-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6.rst
new file mode 100644
index 0000000000..3719bebfe7
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ip6.rst
@@ -0,0 +1,25 @@
+
+.. raw:: latex
+
+ \clearpage
+
+IPv6 Routing
+============
+
+This section includes summary graphs of VPP Phy-to-Phy packet latency
+with IPv6 Routed-Forwarding measured at 100% of discovered NDR throughput
+rate. Latency is reported for VPP running in multiple configurations of
+VPP worker thread(s), a.k.a. VPP data plane thread(s), and their
+physical CPU core(s) placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/vpp/perf/ip6?h=rls1908>`_.
+
+.. toctree::
+
+ ip6-2n-skx-xxv710
+ ip6-2n-skx-x710
+ ip6-3n-skx-xxv710
+ ip6-3n-skx-x710
+ ip6-3n-hsw-xl710
+ ip6-3n-tsh-x520
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-hsw-xl710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-hsw-xl710.rst
new file mode 100644
index 0000000000..8d66479954
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-hsw-xl710.rst
@@ -0,0 +1,182 @@
+
+.. 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>
+
+..
+ ## 3n-hsw-xl710
+ ### imix-?t?c-ipsec-ip4routing-base-scale-sw-i40e
+ 10ge2p1xl710-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1xl710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+ 10ge2p1xl710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1xl710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+ 10ge2p1xl710-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1xl710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+
+ ### imix-?t?c-ipsec-ip4routing-base-scale-hw-i40e
+ 10ge2p1xl710-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1xl710-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+ 10ge2p1xl710-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1xl710-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+imix-1t1c-ipsec-ip4routing-base-scale-sw-i40e
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-imix-1t1c-ipsec-ip4routing-base-scale-sw-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-imix-1t1c-ipsec-ip4routing-base-scale-sw-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-imix-1t1c-ipsec-ip4routing-base-scale-sw-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+imix-2t2c-ipsec-ip4routing-base-scale-sw-i40e
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02 onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-imix-2t2c-ipsec-ip4routing-base-scale-sw-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-imix-2t2c-ipsec-ip4routing-base-scale-sw-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-imix-2t2c-ipsec-ip4routing-base-scale-sw-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+imix-4t4c-ipsec-ip4routing-base-scale-sw-i40e
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-imix-4t4c-ipsec-ip4routing-base-scale-sw-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-imix-4t4c-ipsec-ip4routing-base-scale-sw-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-imix-4t4c-ipsec-ip4routing-base-scale-sw-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+imix-1t1c-ipsec-ip4routing-base-scale-hw-i40e
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-imix-1t1c-ipsec-ip4routing-base-scale-hw-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-imix-1t1c-ipsec-ip4routing-base-scale-hw-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-imix-1t1c-ipsec-ip4routing-base-scale-hw-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+imix-2t2c-ipsec-ip4routing-base-scale-hw-i40e
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-imix-2t2c-ipsec-ip4routing-base-scale-hw-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-imix-2t2c-ipsec-ip4routing-base-scale-hw-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-imix-2t2c-ipsec-ip4routing-base-scale-hw-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+imix-4t4c-ipsec-ip4routing-base-scale-hw-i40e
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-imix-4t4c-ipsec-ip4routing-base-scale-hw-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-imix-4t4c-ipsec-ip4routing-base-scale-hw-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-imix-4t4c-ipsec-ip4routing-base-scale-hw-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-skx-xxv710.rst
new file mode 100644
index 0000000000..d7d3a37e38
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-skx-xxv710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+..
+ ## 3n-skx-xxv710
+ ### imix-?t?c-ipsec-ip4routing-base-scale-i40e
+ 10ge2p1xxv710-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1xxv710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+ 10ge2p1xxv710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1xxv710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+ 10ge2p1xxv710-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1xxv710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+imix-2t1c-ipsec-ip4routing-base-scale-i40e
+------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-imix-2t1c-ipsec-ip4routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-imix-2t1c-ipsec-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-imix-2t1c-ipsec-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+imix-4t2c-ipsec-ip4routing-base-scale-i40e
+------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-imix-4t2c-ipsec-ip4routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-imix-4t2c-ipsec-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-imix-4t2c-ipsec-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+imix-8t4c-ipsec-ip4routing-base-scale-i40e
+------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-imix-8t4c-ipsec-ip4routing-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-imix-8t4c-ipsec-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-imix-8t4c-ipsec-ip4routing-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-tsh-x520.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-tsh-x520.rst
new file mode 100644
index 0000000000..06d8b69754
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec-3n-tsh-x520.rst
@@ -0,0 +1,115 @@
+
+.. 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>
+
+..
+ ## 3n-tsh-x520
+ ### imix-?t?c-ipsec-ip4routing-base-scale-sw-ixgbe
+ 10ge2p1x520-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1x520-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+ 10ge2p1x520-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1x520-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+ 10ge2p1x520-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-ndrpdr
+ 10ge2p1x520-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+
+ Tests.Vpp.Perf.Crypto.10Ge2P1X520-Ethip4Ipsec4Tnlsw-Ip4Base-Int-Aes256Gcm-Ndrpdr.IMIX-1t1c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-ndrpdr
+ Tests.Vpp.Perf.Crypto.10Ge2P1X520-Ethip4Ipsec4Tnlsw-Ip4Base-Int-Aes128Cbc-Hmac512Sha-Ndrpdr.IMIX-1t1c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+ Tests.Vpp.Perf.Crypto.10Ge2P1X520-Ethip4Ipsec1000Tnlsw-Ip4Base-Int-Aes256Gcm-Ndrpdr.IMIX-1t1c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-ndrpdr
+ Tests.Vpp.Perf.Crypto.10Ge2P1X520-Ethip4Ipsec1000Tnlsw-Ip4Base-Int-Aes128Cbc-Hmac512Sha-Ndrpdr.IMIX-1t1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+ Tests.Vpp.Perf.Crypto.10Ge2P1X520-Ethip4Ipsec10000Tnlsw-Ip4Base-Int-Aes256Gcm-Ndrpdr.IMIX-1t1c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-ndrpdr
+ Tests.Vpp.Perf.Crypto.10Ge2P1X520-Ethip4Ipsec10000Tnlsw-Ip4Base-Int-Aes128Cbc-Hmac512Sha-Ndrpdr.IMIX-1t1c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr
+
+3n-tsh-x520
+~~~~~~~~~~~
+
+imix-1t1c-ipsec-ip4routing-base-scale-sw-ixgbe
+----------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-imix-1t1c-ipsec-ip4routing-base-scale-sw-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-imix-1t1c-ipsec-ip4routing-base-scale-sw-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-imix-1t1c-ipsec-ip4routing-base-scale-sw-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+imix-2t2c-ipsec-ip4routing-base-scale-sw-ixgbe
+----------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-imix-2t2c-ipsec-ip4routing-base-scale-sw-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-imix-2t2c-ipsec-ip4routing-base-scale-sw-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-imix-2t2c-ipsec-ip4routing-base-scale-sw-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+imix-4t4c-ipsec-ip4routing-base-scale-sw-ixgbe
+----------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-imix-4t4c-ipsec-ip4routing-base-scale-sw-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-imix-4t4c-ipsec-ip4routing-base-scale-sw-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-imix-4t4c-ipsec-ip4routing-base-scale-sw-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec.rst
new file mode 100644
index 0000000000..2a0233a942
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/ipsec.rst
@@ -0,0 +1,25 @@
+
+.. raw:: latex
+
+ \clearpage
+
+IPSec IPv4 Routing
+==================
+
+This section includes summary graphs of VPP Phy-to-Phy packet latency
+with IPSec encryption used in combination with IPv4 routed-forwarding,
+with latency measured at 100% of discovered NDR throughput rate. VPP
+IPSec encryption is accelerated using DPDK cryptodev library driving
+Intel Quick Assist (QAT) crypto PCIe hardware cards. Latency is reported
+for VPP running in multiple configurations of VPP worker thread(s),
+a.k.a. VPP data plane thread(s), and their physical CPU core(s)
+placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/vpp/perf/crypto?h=rls1908>`_.
+
+.. toctree::
+
+ ipsec-3n-skx-xxv710
+ ipsec-3n-hsw-xl710
+ ipsec-3n-tsh-x520
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-2n-skx-x710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-2n-skx-x710.rst
new file mode 100644
index 0000000000..da7f2f665a
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-2n-skx-x710.rst
@@ -0,0 +1,107 @@
+
+.. 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-skx-x710
+ ### 64b-?t?c-l2switching-base-scale-avf-i40e
+ 2n1l-10ge2p1x710-avf-eth-l2xcbase-ndrpdr
+ 2n1l-10ge2p1x710-avf-dot1q-l2bdbasemaclrn-ndrpdr
+ 2n1l-10ge2p1x710-avf-eth-l2bdbasemaclrn-ndrpdr
+ 2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr
+ 2n1l-10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr
+ 2n1l-10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr
+
+2n-skx-x710
+~~~~~~~~~~~
+
+64b-2t1c-l2switching-base-scale-avf-i40e
+----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-x710-64b-2t1c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat.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-skx-x710-64b-2t1c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-64b-2t1c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-l2switching-base-scale-avf-i40e
+----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-x710-64b-4t2c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat.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-skx-x710-64b-4t2c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-64b-4t2c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-l2switching-base-scale-avf-i40e
+----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-x710-64b-8t4c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat.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-skx-x710-64b-8t4c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-x710-64b-8t4c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-2n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-2n-skx-xxv710.rst
new file mode 100644
index 0000000000..5e647e2374
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-2n-skx-xxv710.rst
@@ -0,0 +1,257 @@
+
+.. 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-skx-xxv710
+ ### 64b-?t?c-l2switching-base-avf
+ 2n1l-10ge2p1xxv710-avf-eth-l2patch-ndrpdr
+ 2n1l-10ge2p1xxv710-avf-eth-l2xcbase-ndrpdr
+ 2n1l-10ge2p1xxv710-avf-dot1q-l2bdbasemaclrn-ndrpdr
+ 2n1l-10ge2p1xxv710-avf-eth-l2bdbasemaclrn-ndrpdr
+ 2n1l-10ge2p1xxv710-avf-dot1q-l2bdbasemaclrn-gbp-ndrpdr
+
+ ### 64b-?t?c-l2switching-base-i40e
+ 2n1l-10ge2p1xxv710-eth-l2patch-ndrpdr
+ 2n1l-10ge2p1xxv710-dot1q-l2xcbase-ndrpdr
+ 2n1l-10ge2p1xxv710-eth-l2xcbase-ndrpdr
+ 2n1l-10ge2p1xxv710-dot1q-l2bdbasemaclrn-ndrpdr
+ 2n1l-10ge2p1xxv710-eth-l2bdbasemaclrn-ndrpdr
+
+ ### 64b-?t?c-l2switching-base-scale-i40e
+ 2n1l-10ge2p1xxv710-eth-l2bdbasemaclrn-ndrpdr
+ 2n1l-10ge2p1xxv710-eth-l2bdscale10kmaclrn-ndrpdr
+ 2n1l-10ge2p1xxv710-eth-l2bdscale100kmaclrn-ndrpdr
+ 2n1l-10ge2p1xxv710-eth-l2bdscale1mmaclrn-ndrpdr
+
+2n-skx-xxv710
+~~~~~~~~~~~~~
+
+64b-2t1c-l2switching-base-avf
+-----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-2t1c-l2switching-base-avf-ndr-hdrh-lat.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-skx-xxv710-64b-2t1c-l2switching-base-avf-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-l2switching-base-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-l2switching-base-avf
+-----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-4t2c-l2switching-base-avf-ndr-hdrh-lat.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-skx-xxv710-64b-4t2c-l2switching-base-avf-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-l2switching-base-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-l2switching-base-avf
+-----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-8t4c-l2switching-base-avf-ndr-hdrh-lat.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-skx-xxv710-64b-8t4c-l2switching-base-avf-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-l2switching-base-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-l2switching-base-i40e
+------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-2t1c-l2switching-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-2t1c-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-l2switching-base-i40e
+------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-4t2c-l2switching-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-4t2c-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-l2switching-base-i40e
+------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-8t4c-l2switching-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-8t4c-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-l2switching-base-scale-i40e
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-2t1c-l2switching-base-scale-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-2t1c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-l2switching-base-scale-i40e
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-4t2c-l2switching-base-scale-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-4t2c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-l2switching-base-scale-i40e
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="23" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-8t4c-l2switching-base-scale-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-8t4c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-hsw-xl710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-hsw-xl710.rst
new file mode 100644
index 0000000000..8d3a600069
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-hsw-xl710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+..
+ ## 3n-hsw-xl710
+ ### 64b-?t?c-l2switching-base-scale-i40e
+ 10ge2p1xl710-eth-l2patch-ndrpdr
+ 10ge2p1xl710-dot1q-l2xcbase-ndrpdr
+ 10ge2p1xl710-eth-l2xcbase-ndrpdr
+ 10ge2p1xl710-dot1q-l2bdbasemaclrn-ndrpdr
+ 10ge2p1xl710-eth-l2bdbasemaclrn-ndrpdr
+ 10ge2p1xl710-eth-l2bdscale1mmaclrn-ndrpdr
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+64b-1t1c-l2switching-base-scale-i40e
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-1t1c-l2switching-base-scale-i40e-ndr-hdrh-lat.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]{/3n-hsw-xl710-64b-1t1c-l2switching-base-avf-ndr-hdrh-lat}
+ \label{fig:/3n-hsw-xl710-64b-1t1c-l2switching-base-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-l2switching-base-scale-i40e
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-2t2c-l2switching-base-scale-i40e-ndr-hdrh-lat.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]{/3n-hsw-xl710-64b-2t2c-l2switching-base-avf-ndr-hdrh-lat}
+ \label{fig:/3n-hsw-xl710-64b-2t2c-l2switching-base-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-l2switching-base-scale-i40e
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-4t4c-l2switching-base-scale-i40e-ndr-hdrh-lat.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]{/3n-hsw-xl710-64b-4t4c-l2switching-base-avf-ndr-hdrh-lat}
+ \label{fig:/3n-hsw-xl710-64b-4t4c-l2switching-base-avf-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-skx-x710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-skx-x710.rst
new file mode 100644
index 0000000000..fa3387936d
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-skx-x710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+..
+ ## 3n-skx-x710
+ ### 64b-?t?c-l2switching-base-scale-avf-i40e
+ 10ge2p1x710-avf-eth-l2patch-ndrpdr
+ 10ge2p1x710-avf-eth-l2xcbase-ndrpdr
+ 10ge2p1x710-avf-eth-l2bdbasemaclrn-ndrpdr
+ 10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr
+ 10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr
+ 10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr
+
+3n-skx-x710
+~~~~~~~~~~~
+
+64b-2t1c-l2switching-base-scale-avf-i40e
+----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-2t1c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat.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]{3n-skx-x710-64b-2t1c-l2switching-base-scale-avf-i40e-nndr-hdrh-latdr}
+ \label{fig:3n-skx-x710-64b-2t1c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-l2switching-base-scale-avf-i40e
+----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-4t2c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat.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]{3n-skx-x710-64b-4t2c-l2switching-base-scale-avf-i40e-nndr-hdrh-latdr}
+ \label{fig:3n-skx-x710-64b-4t2c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-l2switching-base-scale-avf-i40e
+----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-8t4c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat.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]{3n-skx-x710-64b-8t4c-l2switching-base-scale-avf-i40e-nndr-hdrh-latdr}
+ \label{fig:3n-skx-x710-64b-8t4c-l2switching-base-scale-avf-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-skx-xxv710.rst
new file mode 100644
index 0000000000..4db67398c0
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-skx-xxv710.rst
@@ -0,0 +1,335 @@
+
+.. 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>
+
+..
+ ## 3n-skx-xxv710
+ ### 64b-?t?c-l2switching-base-avf
+ 10ge2p1xxv710-avf-eth-l2patch-ndrpdr
+ 10ge2p1xxv710-avf-eth-l2xcbase-ndrpdr
+ 10ge2p1xxv710-avf-eth-l2bdbasemaclrn-ndrpdr
+
+ ### 64b-?t?c-l2switching-base-i40e
+ 10ge2p1xxv710-dot1q-l2xcbase-ndrpdr
+ 10ge2p1xxv710-eth-l2xcbase-ndrpdr
+ 10ge2p1xxv710-dot1q-l2bdbasemaclrn-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-ndrpdr
+
+ ### 64b-?t?c-l2switching-base-scale-i40e
+ 10ge2p1xxv710-eth-l2patch-ndrpdr
+ 10ge2p1xxv710-eth-l2xcbase-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-ndrpdr
+ 10ge2p1xxv710-eth-l2bdscale10kmaclrn-ndrpdr
+ 10ge2p1xxv710-eth-l2bdscale100kmaclrn-ndrpdr
+ 10ge2p1xxv710-eth-l2bdscale1mmaclrn-ndrpdr
+
+ ### 64b-?t?c-features-l2switching-base-i40e
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+64b-2t1c-l2switching-base-avf
+-----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-l2switching-base-avf-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-l2switching-base-avf-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-l2switching-base-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-l2switching-base-avf
+-----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-l2switching-base-avf-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-l2switching-base-avf-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-l2switching-base-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-l2switching-base-avf
+-----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-l2switching-base-avf-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-l2switching-base-avf-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-l2switching-base-avf-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-l2switching-base-i40e
+------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-l2switching-base-i40e
+------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-l2switching-base-i40e
+------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-l2switching-base-scale-i40e
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-l2switching-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-l2switching-base-scale-i40e
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-l2switching-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-l2switching-base-scale-i40e
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="23" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-l2switching-base-scale-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-l2switching-base-scale-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-features-l2switching-base-i40e
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="31" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-features-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-features-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-features-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+
+64b-4t2c-features-l2switching-base-i40e
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="32" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-features-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-features-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-features-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+
+64b-8t4c-features-l2switching-base-i40e
+---------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="33" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-features-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-features-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-features-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-tsh-x520.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-tsh-x520.rst
new file mode 100644
index 0000000000..9939395b50
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2-3n-tsh-x520.rst
@@ -0,0 +1,278 @@
+
+.. 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>
+
+..
+ ## 3n-tsh-x520
+ ### 64b-?t?c-l2switching-base-ixgbe
+ 10ge2p1x520-dot1q-l2xcbase-ndrpdr
+ 10ge2p1x520-eth-l2xcbase-ndrpdr
+ 10ge2p1x520-dot1q-l2bdbasemaclrn-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-ndrpdr
+
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Dot1Q-L2Xcbase-Ndrpdr.64B-1t1c-dot1q-l2xcbase-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Xcbase-Ndrpdr.64B-1t1c-eth-l2xcbase-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Dot1Q-L2Bdbasemaclrn-Ndrpdr.64B-1t1c-dot1q-l2bdbasemaclrn-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdbasemaclrn-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-ndrpdr
+
+ ### 64b-?t?c-l2switching-base-scale-ixgbe
+ 10ge2p1x520-eth-l2patch-ndrpdr
+ 10ge2p1x520-eth-l2xcbase-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-ndrpdr
+ 10ge2p1x520-eth-l2bdscale10kmaclrn-ndrpdr
+ 10ge2p1x520-eth-l2bdscale100kmaclrn-ndrpdr
+ 10ge2p1x520-eth-l2bdscale1mmaclrn-ndrpdr
+
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Patch-Ndrpdr.64B-1t1c-eth-l2patch-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Xcbase-Ndrpdr.64B-1t1c-eth-l2xcbase-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdbasemaclrn-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdscale10Kmaclrn-Ndrpdr.64B-1t1c-eth-l2bdscale10kmaclrn-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdscale100Kmaclrn-Ndrpdr.64B-1t1c-eth-l2bdscale100kmaclrn-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdscale1Mmaclrn-Ndrpdr.64B-1t1c-eth-l2bdscale1mmaclrn-ndrpdr
+
+ ### 64b-?t?c-features-l2switching-base-ixgbe
+ 10ge2p1x520-eth-l2bdbasemaclrn-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr
+
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdbasemaclrn-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdbasemaclrn-Iacl50Sf-10Kflows-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdbasemaclrn-Iacl50Sl-10Kflows-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdbasemaclrn-Oacl50Sf-10Kflows-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdbasemaclrn-Oacl50Sl-10Kflows-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr
+ Tests.Vpp.Perf.L2.10Ge2P1X520-Eth-L2Bdbasemaclrn-Macip-Iacl50Sl-10Kflows-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr
+
+3n-tsh-x520
+~~~~~~~~~~~
+
+64b-1t1c-l2switching-base-ixgbe
+-------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-1t1c-l2switching-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-1t1c-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-1t1c-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-l2switching-base-ixgbe
+-------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-2t2c-l2switching-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-2t2c-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-2t2c-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-l2switching-base-ixgbe
+-------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-4t4c-l2switching-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-4t4c-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-4t4c-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-l2switching-base-scale-ixgbe
+-------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-1t1c-l2switching-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-1t1c-l2switching-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-1t1c-l2switching-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-l2switching-base-scale-ixgbe
+-------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-2t2c-l2switching-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-2t2c-l2switching-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-2t2c-l2switching-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-l2switching-base-scale-ixgbe
+-------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="23" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-4t4c-l2switching-base-scale-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-4t4c-l2switching-base-scale-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-4t4c-l2switching-base-scale-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-features-l2switching-base-ixgbe
+----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="31" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-1t1c-features-l2switching-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-1t1c-features-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-1t1c-features-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-features-l2switching-base-ixgbe
+----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="32" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-2t2c-features-l2switching-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-2t2c-features-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-2t2c-features-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-features-l2switching-base-ixgbe
+----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="33" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-4t4c-features-l2switching-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-4t4c-features-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-4t4c-features-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2.rst
new file mode 100644
index 0000000000..9643740888
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/l2.rst
@@ -0,0 +1,25 @@
+
+.. raw:: latex
+
+ \clearpage
+
+L2 Ethernet Switching
+=====================
+
+This section includes summary graphs of VPP Phy-to-Phy packet latency
+with L2 Ethernet switching measured at 100% of discovered NDR throughput
+rate. Latency is reported for VPP running in multiple configurations of
+VPP worker thread(s), a.k.a. VPP data plane thread(s), and their
+physical CPU core(s) placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/vpp/perf/l2?h=rls1908>`_.
+
+.. toctree::
+
+ l2-2n-skx-xxv710
+ l2-2n-skx-x710
+ l2-3n-skx-xxv710
+ l2-3n-skx-x710
+ l2-3n-hsw-xl710
+ l2-3n-tsh-x520
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-hsw-xl710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-hsw-xl710.rst
new file mode 100644
index 0000000000..0abed916fd
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-hsw-xl710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+..
+ ## 3n-hsw-xl710
+ ### 78b-?t?c-srv6-ip6routing-base-i40e
+ 10ge2p1xl710-ethip6ip6-ip6base-srv6enc1sid-ndrpdr
+ 10ge2p1xl710-ethip6srhip6-ip6base-srv6enc2sids-ndrpdr
+ 10ge2p1xl710-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrpdr
+ 10ge2p1xl710-ethip6srhip6-ip6base-srv6proxy-dyn-ndrpdr
+ 10ge2p1xl710-ethip6srhip6-ip6base-srv6proxy-masq-ndrpdr
+ 10ge2p1xl710-ethip6srhip6-ip6base-srv6proxy-stat-ndrpdr
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+78b-1t1c-srv6-ip6routing-base-i40e
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-78b-1t1c-srv6-ip6routing-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-78b-1t1c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-78b-1t1c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-2t2c-srv6-ip6routing-base-i40e
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-78b-2t2c-srv6-ip6routing-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-78b-2t2c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-78b-2t2c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-4t4c-srv6-ip6routing-base-i40e
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-78b-4t4c-srv6-ip6routing-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-78b-4t4c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-78b-4t4c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-skx-xxv710.rst
new file mode 100644
index 0000000000..f26803ba13
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-skx-xxv710.rst
@@ -0,0 +1,107 @@
+
+.. 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>
+
+..
+ ## 3n-skx-xxv710
+ ### 78b-?t?c-srv6-ip6routing-base-i40e
+ 10ge2p1xxv710-ethip6ip6-ip6base-srv6enc1sid-ndrpdr
+ 10ge2p1xxv710-ethip6srhip6-ip6base-srv6enc2sids-ndrpdr
+ 10ge2p1xxv710-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrpdr
+ 10ge2p1xxv710-ethip6srhip6-ip6base-srv6proxy-dyn-ndrpdr
+ 10ge2p1xxv710-ethip6srhip6-ip6base-srv6proxy-masq-ndrpdr
+ 10ge2p1xxv710-ethip6srhip6-ip6base-srv6proxy-stat-ndrpdr
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+78b-2t1c-srv6-ip6routing-base-i40e
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-78b-2t1c-srv6-ip6routing-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-78b-2t1c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-78b-2t1c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-4t2c-srv6-ip6routing-base-i40e
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-78b-4t2c-srv6-ip6routing-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-78b-4t2c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-78b-4t2c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-8t4c-srv6-ip6routing-base-i40e
+----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-78b-8t4c-srv6-ip6routing-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-78b-8t4c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-78b-8t4c-srv6-ip6routing-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-tsh-x520.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-tsh-x520.rst
new file mode 100644
index 0000000000..b1d82e15d1
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6-3n-tsh-x520.rst
@@ -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>
+
+..
+ ## 3n-tsh-x520
+ ### 78b-?t?c-srv6-ip6routing-base-ixgbe
+ 10ge2p1x520-ethip6ip6-ip6base-srv6enc1sid-ndrpdr
+ 10ge2p1x520-ethip6srhip6-ip6base-srv6enc2sids-ndrpdr
+ 10ge2p1x520-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrpdr
+ 10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-dyn-ndrpdr
+ 10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-masq-ndrpdr
+ 10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-stat-ndrpdr
+
+ Tests.Vpp.Perf.Srv6.10Ge2P1X520-Ethip6Ip6-Ip6Base-Srv6Enc1Sid-Ndrpdr.78B-1t1c-ethip6ip6-ip6base-srv6enc1sid-ndrpdr
+ Tests.Vpp.Perf.Srv6.10Ge2P1X520-Ethip6Srhip6-Ip6Base-Srv6Enc2Sids-Ndrpdr.78B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-ndrpdr
+ Tests.Vpp.Perf.Srv6.10Ge2P1X520-Ethip6Srhip6-Ip6Base-Srv6Enc2Sids-Nodecaps-Ndrpdr.78B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrpdr
+ Tests.Vpp.Perf.Srv6.10Ge2P1X520-Ethip6Srhip6-Ip6Base-Srv6Proxy-Dyn-Ndrpdr.78B-1t1c-ethip6srhip6-ip6base-srv6proxy-dyn-ndrpdr
+ Tests.Vpp.Perf.Srv6.10Ge2P1X520-Ethip6Srhip6-Ip6Base-Srv6Proxy-Masq-Ndrpdr.78B-1t1c-ethip6srhip6-ip6base-srv6proxy-masq-ndrpdr
+ Tests.Vpp.Perf.Srv6.10Ge2P1X520-Ethip6Srhip6-Ip6Base-Srv6Proxy-Stat-Ndrpdr.78B-1t1c-ethip6srhip6-ip6base-srv6proxy-stat-ndrpdr
+
+3n-tsh-x520
+~~~~~~~~~~~
+
+78b-1t1c-srv6-ip6routing-base-ixgbe
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-78b-1t1c-srv6-ip6routing-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-78b-1t1c-srv6-ip6routing-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-78b-1t1c-srv6-ip6routing-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-2t2c-srv6-ip6routing-base-ixgbe
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-78b-2t2c-srv6-ip6routing-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-78b-2t2c-srv6-ip6routing-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-78b-2t2c-srv6-ip6routing-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+78b-4t4c-srv6-ip6routing-base-ixgbe
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-78b-4t4c-srv6-ip6routing-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-78b-4t4c-srv6-ip6routing-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-78b-4t4c-srv6-ip6routing-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6.rst
new file mode 100644
index 0000000000..f3ce543452
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/srv6.rst
@@ -0,0 +1,22 @@
+
+.. raw:: latex
+
+ \clearpage
+
+SRv6 Routing
+============
+
+This section includes summary graphs of VPP Phy-to-Phy packet latency
+with SRv6 measured at 100% of discovered NDR throughput
+rate. Latency is reported for VPP running in multiple configurations of
+VPP worker thread(s), a.k.a. VPP data plane thread(s), and their
+physical CPU core(s) placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/vpp/perf/srv6?h=rls1908>`_.
+
+.. toctree::
+
+ srv6-3n-skx-xxv710
+ srv6-3n-hsw-xl710
+ srv6-3n-tsh-x520
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-2n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-2n-skx-xxv710.rst
new file mode 100644
index 0000000000..10158a1f31
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-2n-skx-xxv710.rst
@@ -0,0 +1,184 @@
+
+.. 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-skx-xxv710
+ ### 64b-?t?c-vhost-base-i40e
+ 2n1l-10ge2p1xxv710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 2n1l-10ge2p1xxv710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 2n1l-10ge2p1xxv710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 2n1l-10ge2p1xxv710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.2N1L-25Ge2P1Xxv710-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.2N1L-25Ge2P1Xxv710-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.2N1L-25Ge2P1Xxv710-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.2N1L-25Ge2P1Xxv710-Ethip4-Ip4Base-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.2N1L-25Ge2P1Xxv710-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.2N1L-25Ge2P1Xxv710-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.2N1L-25Ge2P1Xxv710-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.2N1L-25Ge2P1Xxv710-Ethip4-Ip4Base-Eth-2Vhostvr1024-1Vm-Vppip4-Ndrpdr.64B-2t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr
+
+2n-skx-xxv710
+~~~~~~~~~~~~~
+
+64b-2t1c-vhost-base-i40e-testpmd
+--------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-2t1c-vhost-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-2t1c-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-vhost-base-i40e-testpmd
+--------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-4t2c-vhost-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-4t2c-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-vhost-base-i40e-testpmd
+--------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-8t4c-vhost-base-i40e-ndr-hdrh-lat.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-skx-xxv710-64b-8t4c-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-vhost-base-i40e-vpp
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-2t1c-vhost-base-i40e-vpp-ndr-hdrh-lat.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-skx-xxv710-64b-2t1c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-2t1c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-vhost-base-i40e-vpp
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-4t2c-vhost-base-i40e-vpp-ndr-hdrh-lat.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-skx-xxv710-64b-4t2c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-4t2c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-vhost-base-i40e-vpp
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/2n-skx-xxv710-64b-8t4c-vhost-base-i40e-vpp-ndr-hdrh-lat.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-skx-xxv710-64b-8t4c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:2n-skx-xxv710-64b-8t4c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-hsw-xl710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-hsw-xl710.rst
new file mode 100644
index 0000000000..e6b30792d8
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-hsw-xl710.rst
@@ -0,0 +1,184 @@
+
+.. 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>
+
+..
+ ## 3n-hsw-xl710
+ ### 64b-?t?c-vhost-base-i40e
+ 10ge2p1xl710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xl710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xl710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.40Ge2P1Xl710-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.40Ge2P1Xl710-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.40Ge2P1Xl710-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.40Ge2P1Xl710-Ethip4-Ip4Base-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.40Ge2P1Xl710-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.40Ge2P1Xl710-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr10241Vm-Vppl2Xc-Ndrpdr.64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.40Ge2P1Xl710-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1V-m-Vppl2Xc-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.40Ge2P1Xl710-Ethip4-Ip4Base-Eth-2Vhostvr1024-1Vm-Vppip4-Ndrpdr.64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+64b-1t1c-vhost-base-i40e-testpmd
+--------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-1t1c-vhost-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-1t1c-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-1t1c-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-vhost-base-i40e-testpmd
+--------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-2t2c-vhost-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-2t2c-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-2t2c-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-vhost-base-i40e-testpmd
+--------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-4t4c-vhost-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-4t4c-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-4t4c-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-vhost-base-i40e-vpp
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-1t1c-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-1t1c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-1t1c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-vhost-base-i40e-vpp
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-2t2c-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-2t2c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-2t2c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-vhost-base-i40e-vpp
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-64b-4t4c-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-hsw-xl710-64b-4t4c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-64b-4t4c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-skx-x710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-skx-x710.rst
new file mode 100644
index 0000000000..44ef0976d7
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-skx-x710.rst
@@ -0,0 +1,186 @@
+
+.. 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>
+
+..
+ ## 3n-skx-x710
+ #### 64b-?t?c-link-bonding-vhost-base-i40e
+ 10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x710-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x710-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X710-1Lbvpplacp-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X710-1Lbvpplacp-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X710-2Lbvpplacp-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X710-2Lbvpplacp-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X710-1Lbvpplacp-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X710-1Lbvpplacp-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X710-2Lbvpplacp-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X710-2Lbvpplacp-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+
+3n-skx-x710
+~~~~~~~~~~~
+
+64b-2t1c-link-bonding-vhost-base-i40e-testpmd
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-2t1c-link-bonding-vhost-base-i40e-ndr-hdrh-lat.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]{3n-skx-x710-64b-2t1c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-64b-2t1c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-link-bonding-vhost-base-i40e-testpmd
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-4t2c-link-bonding-vhost-base-i40e-ndr-hdrh-lat.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]{3n-skx-x710-64b-4t2c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-64b-4t2c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-link-bonding-vhost-base-i40e-testpmd
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-8t4c-link-bonding-vhost-base-i40e-ndr-hdrh-lat.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]{3n-skx-x710-64b-8t4c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-64b-8t4c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-link-bonding-vhost-base-i40e-vpp
+-----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-2t1c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-skx-x710-64b-2t1c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-64b-2t1c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-link-bonding-vhost-base-i40e-vpp
+-----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-4t2c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-skx-x710-64b-4t2c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-64b-4t2c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-link-bonding-vhost-base-i40e-vpp
+-----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-x710-64b-8t4c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-skx-x710-64b-8t4c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-skx-x710-64b-8t4c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-skx-xxv710.rst
new file mode 100644
index 0000000000..61325badd8
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-skx-xxv710.rst
@@ -0,0 +1,347 @@
+
+.. 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>
+
+..
+ ## 3n-skx-xxv710
+ ### 64b-?t?c-vhost-base-i40e
+ 10ge2p1xxv710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Ethip4-Ip4Base-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Ethip4-Ip4Base-Eth-2Vhostvr1024-1Vm-Vppip4-Ndrpdr.64B-2t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr
+
+ #### 64b-?t?c-link-bonding-vhost-base-i40e
+ 10ge2p1xxv710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-1Lbvpplacp-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-1Lbvpplacp-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-2t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-1Lbvpplacp-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-1Lbvpplacp-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.25Ge2P1Xxv710-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Vppl2Xc-Ndrpdr.64B-2t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+64b-2t1c-vhost-base-i40e-testpmd
+--------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-vhost-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-vhost-base-i40e-testpmd
+--------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-vhost-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-vhost-base-i40e-testpmd
+--------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-vhost-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-vhost-base-i40e-vpp
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-vhost-base-i40e-vpp
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-vhost-base-i40e-vpp
+----------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-link-bonding-vhost-base-i40e-testpmd
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="21" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-link-bonding-vhost-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-link-bonding-vhost-base-i40e-testpmd
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="22" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-link-bonding-vhost-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-link-bonding-vhost-base-i40e-testpmd
+---------------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="23" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-link-bonding-vhost-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-link-bonding-vhost-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t1c-link-bonding-vhost-base-i40e-vpp
+-----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="31" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-2t1c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-2t1c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-2t1c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t2c-link-bonding-vhost-base-i40e-vpp
+-----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="32" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-4t2c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-4t2c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-4t2c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-8t4c-link-bonding-vhost-base-i40e-vpp
+-----------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="33" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-64b-8t4c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat.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]{3n-skx-xxv710-64b-8t4c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-64b-8t4c-link-bonding-vhost-base-i40e-vpp-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-tsh-x520.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-tsh-x520.rst
new file mode 100644
index 0000000000..c1f2d98fe3
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost-3n-tsh-x520.rst
@@ -0,0 +1,192 @@
+
+.. 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>
+
+..
+ ## 3n-tsh-x520
+ ### 64b-?t?c-vhost-base-ixgbe
+ 10ge2p1x520-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-Ethip4-Ip4Base-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr
+
+ #### 64b-?t?c-link-bonding-vhost-base-ixgbe
+ 10ge2p1x520-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-1Lbvpplacp-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-Dot1Q-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-Eth-L2Xcbase-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-1Lbvpplacp-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-Dot1Q-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vm Vhost.10Ge2P1X520-Eth-L2Bdbasemaclrn-Eth-2Vhostvr1024-1Vm-Ndrpdr.64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
+
+3n-tsh-x520
+~~~~~~~~~~~
+
+64b-1t1c-vhost-base-ixgbe
+-------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-1t1c-vhost-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-1t1c-vhost-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-1t1c-vhost-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-vhost-base-ixgbe
+-------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-2t2c-vhost-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-2t2c-vhost-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-2t2c-vhost-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-vhost-base-ixgbe
+-------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-4t4c-vhost-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-4t4c-vhost-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-4t4c-vhost-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+64b-1t1c-link-bonding-vhost-base-ixgbe
+--------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="11" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-1t1c-link-bonding-vhost-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-1t1c-link-bonding-vhost-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-1t1c-link-bonding-vhost-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-link-bonding-vhost-base-ixgbe
+--------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="12" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-2t2c-link-bonding-vhost-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-2t2c-link-bonding-vhost-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-2t2c-link-bonding-vhost-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-4t4c-link-bonding-vhost-base-ixgbe
+--------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="13" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-64b-4t4c-link-bonding-vhost-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-64b-4t4c-link-bonding-vhost-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-64b-4t4c-link-bonding-vhost-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost.rst
new file mode 100644
index 0000000000..954573996f
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vm_vhost.rst
@@ -0,0 +1,25 @@
+
+.. raw:: latex
+
+ \clearpage
+
+KVM VMs vhost-user
+==================
+
+This section includes summary graphs of VPP Phy-to-VM(s)-to-Phy packet
+latency with with VM virtio and VPP vhost-user virtual interfaces
+measured at 100% of discovered NDR throughput rate. Latency is reported
+for VPP running in multiple configurations of VPP worker thread(s),
+a.k.a. VPP data plane thread(s), and their physical CPU core(s)
+placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/vpp/perf/vm_vhost?h=rls1908>`_.
+
+.. toctree::
+
+ vm_vhost-2n-skx-xxv710
+ vm_vhost-3n-skx-xxv710
+ vm_vhost-3n-skx-x710
+ vm_vhost-3n-hsw-xl710
+ vm_vhost-3n-tsh-x520
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-hsw-xl710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-hsw-xl710.rst
new file mode 100644
index 0000000000..8e75bddc88
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-hsw-xl710.rst
@@ -0,0 +1,104 @@
+
+.. 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>
+
+..
+ ## 3n-hsw-xl710
+ ### 114b-?t?c-vts-l2switching-base-i40e
+ 10ge2p1xl710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermit-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xl710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermitreflect-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xl710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-noacl-2vhostvr1024-1vm-ndrpdr
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+114b-1t1c-vts-l2switching-base-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-114b-1t1c-vts-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-114b-1t1c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-114b-1t1c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+114b-2t2c-vts-l2switching-base-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-114b-2t2c-vts-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-114b-2t2c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-114b-2t2c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+114b-4t4c-vts-l2switching-base-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-hsw-xl710-114b-4t4c-vts-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-hsw-xl710-114b-4t4c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-hsw-xl710-114b-4t4c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-skx-xxv710.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-skx-xxv710.rst
new file mode 100644
index 0000000000..99a2c24365
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-skx-xxv710.rst
@@ -0,0 +1,104 @@
+
+.. 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>
+
+..
+ ## 3n-skx-xxv710
+ ### 64b-?t?c-vts-l2switching-base-i40e
+ 10ge2p1xxv710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-noacl-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermit-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1xxv710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermitreflect-2vhostvr1024-1vm-ndrpdr
+
+3n-skx-xxv710
+~~~~~~~~~~~~~
+
+114b-2t1c-vts-l2switching-base-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-114b-2t1c-vts-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-114b-2t1c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-114b-2t1c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+114b-4t2c-vts-l2switching-base-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-114b-4t2c-vts-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-114b-4t2c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-114b-4t2c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+114b-8t4c-vts-l2switching-base-i40e
+-----------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-skx-xxv710-114b-8t4c-vts-l2switching-base-i40e-ndr-hdrh-lat.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]{3n-skx-xxv710-114b-8t4c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \label{fig:3n-skx-xxv710-114b-8t4c-vts-l2switching-base-i40e-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-tsh-x520.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-tsh-x520.rst
new file mode 100644
index 0000000000..91af0f6156
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts-3n-tsh-x520.rst
@@ -0,0 +1,108 @@
+
+.. 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>
+
+..
+ ## 3n-tsh-x520
+ ### 64b-?t?c-vts-l2switching-base-ixgbe
+ 10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-noacl-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermit-2vhostvr1024-1vm-ndrpdr
+ 10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermitreflect-2vhostvr1024-1vm-ndrpdr
+
+ Tests.Vpp.Perf.Vts.10Ge2P1X520-Ethip4Vxlan-L2Bdbasemaclrn-Eth-Iacldstbase-Noacl-2Vhostvr1024-1Vm-Ndrpdr.114B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-noacl-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vts.10Ge2P1X520-Ethip4Vxlan-L2Bdbasemaclrn-Eth-Iacldstbase-Aclpermit-2Vhostvr1024-1Vm-Ndrpdr.114B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermit-2vhostvr1024-1vm-ndrpdr
+ Tests.Vpp.Perf.Vts.10Ge2P1X520-Ethip4Vxlan-L2Bdbasemaclrn-Eth-Iacldstbase-Aclpermitreflect-2Vhostvr1024-1Vm-Ndrpdr.114B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermitreflect-2vhostvr1024-1vm-ndrpdr
+
+3n-tsh-x520
+~~~~~~~~~~~
+
+114b-1t1c-vts-l2switching-base-ixgbe
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="01" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-114b-1t1c-vts-l2switching-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-114b-1t1c-vts-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-114b-1t1c-vts-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+114b-2t2c-vts-l2switching-base-ixgbe
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="02" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-114b-2t2c-vts-l2switching-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-114b-2t2c-vts-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-114b-2t2c-vts-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+114b-4t4c-vts-l2switching-base-ixgbe
+------------------------------------
+
+.. raw:: html
+
+ <center>
+ <iframe id="03" onload="setIframeHeight(this.id)" width="700" frameborder="0" scrolling="no" src="../../_static/vpp/3n-tsh-x520-114b-4t4c-vts-l2switching-base-ixgbe-ndr-hdrh-lat.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]{3n-tsh-x520-114b-4t4c-vts-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \label{fig:3n-tsh-x520-114b-4t4c-vts-l2switching-base-ixgbe-ndr-hdrh-lat}
+ \end{figure}
diff --git a/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts.rst b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts.rst
new file mode 100644
index 0000000000..8a4c27e2d1
--- /dev/null
+++ b/docs/report/vpp_performance_tests/hdrh_packet_latency_graphs/vts.rst
@@ -0,0 +1,23 @@
+
+.. raw:: latex
+
+ \clearpage
+
+Virtual Topology System
+=======================
+
+This section includes summary graphs of VPP Phy-to-VM(s)-to-Phy packet
+latency with with VM virtio and VPP vhost-user virtual interfaces
+measured at 100% of discovered NDR throughput rate. Latency is reported
+for VPP running in multiple configurations of VPP worker thread(s),
+a.k.a. VPP data plane thread(s), and their physical CPU core(s)
+placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository <https://git.fd.io/csit/tree/tests/vpp/perf/vts?h=rls1908>`_.
+
+.. toctree::
+
+ vts-3n-skx-xxv710
+ vts-3n-hsw-xl710
+ vts-3n-tsh-x520
diff --git a/docs/report/vpp_performance_tests/index.rst b/docs/report/vpp_performance_tests/index.rst
index 0f09377732..a6d72ac4de 100644
--- a/docs/report/vpp_performance_tests/index.rst
+++ b/docs/report/vpp_performance_tests/index.rst
@@ -8,6 +8,7 @@ VPP Performance
packet_throughput_graphs/index
throughput_speedup_multi_core/index
packet_latency_graphs/index
+ hdrh_packet_latency_graphs/index
soak_tests/index
reconf_tests/index
nf_service_density/index