Core: Rework CPU allocation 87/32687/12
authorpmikus <pmikus@cisco.com>
Fri, 11 Jun 2021 13:06:34 +0000 (13:06 +0000)
committerPeter Mikus <pmikus@cisco.com>
Thu, 17 Jun 2021 13:26:40 +0000 (13:26 +0000)
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: I6826add7b3032041632c3952c45a3c64409400b0

51 files changed:
resources/libraries/python/CpuUtils.py
resources/libraries/python/IPsecUtil.py
resources/libraries/python/InterfaceUtil.py
resources/libraries/python/NATUtil.py
resources/libraries/robot/crypto/ipsec.robot
resources/libraries/robot/dpdk/default.robot
resources/libraries/robot/ip/nat.robot
resources/libraries/robot/performance/performance_utils.robot
resources/libraries/robot/shared/container.robot
resources/libraries/robot/shared/default.robot
resources/libraries/robot/shared/interfaces.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot
tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac256sha-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac256sha-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac256sha-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac256sha-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot
tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot
tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-gso-iperf3-mrr.robot
tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-iperf3-mrr.robot
tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-gso-iperf3-mrr.robot
tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-iperf3-mrr.robot
tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps.robot
tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps.robot
tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps.robot
tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps.robot

index e23404b..f556c51 100644 (file)
@@ -84,29 +84,6 @@ class CpuUtils:
                         [CpuUtils.__str2int(x) for x in line.split(u",")]
                     )
 
                         [CpuUtils.__str2int(x) for x in line.split(u",")]
                     )
 
-    @staticmethod
-    def worker_count_from_cores_and_smt(phy_cores, smt_used):
-        """Simple conversion utility, needs smt from caller.
-
-        The implementation assumes we pack 1 or 2 workers per core,
-        depending on hyperthreading.
-
-        Some keywords use None to indicate no core/worker limit,
-        so this converts None to None.
-
-        :param phy_cores: How many physical cores to use for workers.
-        :param smt_used: Whether symmetric multithreading is used.
-        :type phy_cores: Optional[int]
-        :type smt_used: bool
-        :returns: How many VPP workers fit into the given number of cores.
-        :rtype: Optional[int]
-        """
-        if phy_cores is None:
-            return None
-        workers_per_core = CpuUtils.NR_OF_THREADS if smt_used else 1
-        workers = phy_cores * workers_per_core
-        return workers
-
     @staticmethod
     def cpu_node_count(node):
         """Return count of numa nodes.
     @staticmethod
     def cpu_node_count(node):
         """Return count of numa nodes.
@@ -502,8 +479,8 @@ class CpuUtils:
 
     @staticmethod
     def get_cpu_idle_list(node, cpu_node, smt_used, cpu_alloc_str, sep=u","):
 
     @staticmethod
     def get_cpu_idle_list(node, cpu_node, smt_used, cpu_alloc_str, sep=u","):
-        """
-        Get idle CPU List
+        """Get idle CPU List.
+
         :param node: Node dictionary with cpuinfo.
         :param cpu_node: Numa node number.
         :param smt_used: True - we want to use SMT, otherwise false.
         :param node: Node dictionary with cpuinfo.
         :param cpu_node: Numa node number.
         :param smt_used: True - we want to use SMT, otherwise false.
@@ -521,3 +498,97 @@ class CpuUtils:
         cpu_idle_list = [i for i in cpu_list
                          if str(i) not in cpu_alloc_str.split(sep)]
         return cpu_idle_list
         cpu_idle_list = [i for i in cpu_list
                          if str(i) not in cpu_alloc_str.split(sep)]
         return cpu_idle_list
+
+    @staticmethod
+    def get_affinity_vpp_vswitch(
+            nodes, node, phy_cores, rx_queues=None, rxd=None, txd=None):
+        """Get affinity or VPP switch.
+
+        :param nodes: Topology nodes.
+        :param node: Topology node string.
+        :param phy_cores: Number of physical cores to allocate.
+        :param rx_queues: Number of RX queues. (Optional, Default: None)
+        :param rxd: Number of RX descriptors. (Optional, Default: None)
+        :param txd: Number of TX descriptors. (Optional, Default: None)
+        :type nodes: dict
+        :type node: str
+        :type phy_cores: int
+        :type rx_queues: int
+        :type rxd: int
+        :type txd: int
+        :returns: Compute resource information dictionary.
+        :rtype: dict
+        """
+        # Number of Data Plane physical cores.
+        dp_cores_count = BuiltIn().get_variable_value(
+            f"${{dp_cores_count}}", phy_cores
+        )
+        # Number of Feature Plane physical cores.
+        fp_cores_count = BuiltIn().get_variable_value(
+            f"${{fp_cores_count}}", phy_cores - dp_cores_count
+        )
+        # Ratio between RX queues and data plane threads.
+        rxq_ratio = BuiltIn().get_variable_value(
+            f"${{rxq_ratio}}", 1
+        )
+
+        dut_pf_keys = BuiltIn().get_variable_value(
+            f"${{{node}_pf_keys}}"
+        )
+        # SMT override in case of non standard test cases.
+        smt_used = BuiltIn().get_variable_value(
+            f"${{smt_used}}", CpuUtils.is_smt_enabled(nodes[node][u"cpuinfo"])
+        )
+
+        cpu_node = Topology.get_interfaces_numa_node(nodes[node], *dut_pf_keys)
+        skip_cnt = Constants.CPU_CNT_SYSTEM
+        cpu_main = CpuUtils.cpu_list_per_node_str(
+            nodes[node], cpu_node,
+            skip_cnt=skip_cnt,
+            cpu_cnt=Constants.CPU_CNT_MAIN,
+            smt_used=False
+        )
+        skip_cnt += Constants.CPU_CNT_MAIN
+        cpu_dp = CpuUtils.cpu_list_per_node_str(
+            nodes[node], cpu_node,
+            skip_cnt=skip_cnt,
+            cpu_cnt=int(dp_cores_count),
+            smt_used=smt_used
+        ) if int(dp_cores_count) else u""
+        skip_cnt = skip_cnt + int(dp_cores_count)
+        cpu_fp = CpuUtils.cpu_list_per_node_str(
+            nodes[node], cpu_node,
+            skip_cnt=skip_cnt,
+            cpu_cnt=int(fp_cores_count),
+            smt_used=smt_used
+        ) if int(fp_cores_count) else u""
+
+        fp_count_int = \
+            int(fp_cores_count) * CpuUtils.NR_OF_THREADS if smt_used \
+            else int(fp_cores_count)
+        dp_count_int = \
+            int(dp_cores_count) * CpuUtils.NR_OF_THREADS if smt_used \
+            else int(dp_cores_count)
+
+        rxq_count_int = rx_queues if rx_queues else int(dp_count_int/rxq_ratio)
+        rxq_count_int = 1 if not rxq_count_int else rxq_count_int
+
+        compute_resource_info = dict()
+        compute_resource_info[u"buffers_numa"] = 215040 if smt_used else 107520
+        compute_resource_info[u"smt_used"] = smt_used
+        compute_resource_info[u"cpu_main"] = cpu_main
+        compute_resource_info[u"cpu_dp"] = cpu_dp
+        compute_resource_info[u"cpu_fp"] = cpu_fp
+        compute_resource_info[u"cpu_wt"] = \
+            u",".join(filter(None, [cpu_dp, cpu_fp]))
+        compute_resource_info[u"cpu_alloc_str"] = \
+            u",".join(filter(None, [cpu_main, cpu_dp, cpu_fp]))
+        compute_resource_info[u"cpu_count_int"] = \
+            int(dp_cores_count) + int(fp_cores_count)
+        compute_resource_info[u"rxd_count_int"] = rxd
+        compute_resource_info[u"txd_count_int"] = txd
+        compute_resource_info[u"rxq_count_int"] = rxq_count_int
+        compute_resource_info[u"fp_count_int"] = fp_count_int
+        compute_resource_info[u"dp_count_int"] = dp_count_int
+
+        return compute_resource_info
index e066bc9..520cf7b 100644 (file)
@@ -29,8 +29,9 @@ from resources.libraries.python.IPAddress import IPAddress
 from resources.libraries.python.IPUtil import IPUtil, IpDscp, MPLS_LABEL_INVALID
 from resources.libraries.python.PapiExecutor import PapiSocketExecutor
 from resources.libraries.python.ssh import scp_node
 from resources.libraries.python.IPUtil import IPUtil, IpDscp, MPLS_LABEL_INVALID
 from resources.libraries.python.PapiExecutor import PapiSocketExecutor
 from resources.libraries.python.ssh import scp_node
-from resources.libraries.python.topology import Topology
+from resources.libraries.python.topology import Topology, NodeType
 from resources.libraries.python.VatExecutor import VatExecutor
 from resources.libraries.python.VatExecutor import VatExecutor
+from resources.libraries.python.VPPUtil import VPPUtil
 
 
 IPSEC_UDP_PORT_NONE = 0xffff
 
 
 IPSEC_UDP_PORT_NONE = 0xffff
@@ -324,27 +325,57 @@ class IPsecUtil:
 
     @staticmethod
     def vpp_ipsec_crypto_sw_scheduler_set_worker(
 
     @staticmethod
     def vpp_ipsec_crypto_sw_scheduler_set_worker(
-            node, worker_index, crypto_enable=False):
+            node, workers, crypto_enable=False):
         """Enable or disable crypto on specific vpp worker threads.
 
         :param node: VPP node to enable or disable crypto for worker threads.
         """Enable or disable crypto on specific vpp worker threads.
 
         :param node: VPP node to enable or disable crypto for worker threads.
-        :param worker_index: VPP worker thread index.
+        :param workers: List of VPP thread numbers.
         :param crypto_enable: Disable or enable crypto work.
         :type node: dict
         :param crypto_enable: Disable or enable crypto work.
         :type node: dict
-        :type worker_index: int
+        :type workers: Iterable[int]
         :type crypto_enable: bool
         :raises RuntimeError: If failed to enable or disable crypto for worker
             thread or if no API reply received.
         """
         :type crypto_enable: bool
         :raises RuntimeError: If failed to enable or disable crypto for worker
             thread or if no API reply received.
         """
-        cmd = u"crypto_sw_scheduler_set_worker"
-        err_msg = f"Failed to disable/enable crypto for worker thread " \
-            f"on host {node[u'host']}"
-        args = dict(
-            worker_index=worker_index,
-            crypto_enable=crypto_enable
-        )
-        with PapiSocketExecutor(node) as papi_exec:
-            papi_exec.add(cmd, **args).get_reply(err_msg)
+        for worker in workers:
+            cmd = u"crypto_sw_scheduler_set_worker"
+            err_msg = f"Failed to disable/enable crypto for worker thread " \
+                f"on host {node[u'host']}"
+            args = dict(
+                worker_index=worker - 1,
+                crypto_enable=crypto_enable
+            )
+            with PapiSocketExecutor(node) as papi_exec:
+                papi_exec.add(cmd, **args).get_reply(err_msg)
+
+    @staticmethod
+    def vpp_ipsec_crypto_sw_scheduler_set_worker_on_all_duts(
+            nodes, workers, crypto_enable=False):
+        """Enable or disable crypto on specific vpp worker threads.
+
+        :param node: VPP node to enable or disable crypto for worker threads.
+        :param workers: List of VPP thread numbers.
+        :param crypto_enable: Disable or enable crypto work.
+        :type node: dict
+        :type workers: Iterable[int]
+        :type crypto_enable: bool
+        :raises RuntimeError: If failed to enable or disable crypto for worker
+            thread or if no API reply received.
+        """
+        for node in nodes.values():
+            if node[u"type"] == NodeType.DUT:
+                thread_data = VPPUtil.vpp_show_threads(node)
+                worker_cnt = len(thread_data) - 1
+                if not worker_cnt:
+                    return None
+                worker_ids = list()
+                for item in thread_data:
+                    if str(item.cpu_id) in workers.split(u","):
+                        worker_ids.append(item.id)
+
+                IPsecUtil.vpp_ipsec_crypto_sw_scheduler_set_worker(
+                    node, workers=worker_ids, crypto_enable=crypto_enable
+                )
 
     @staticmethod
     def vpp_ipsec_add_sad_entry(
 
     @staticmethod
     def vpp_ipsec_add_sad_entry(
index 94c78a1..fed2bee 100644 (file)
@@ -20,7 +20,6 @@ from ipaddress import ip_address
 from robot.api import logger
 
 from resources.libraries.python.Constants import Constants
 from robot.api import logger
 
 from resources.libraries.python.Constants import Constants
-from resources.libraries.python.CpuUtils import CpuUtils
 from resources.libraries.python.DUTSetup import DUTSetup
 from resources.libraries.python.IPAddress import IPAddress
 from resources.libraries.python.L2Util import L2Util
 from resources.libraries.python.DUTSetup import DUTSetup
 from resources.libraries.python.IPAddress import IPAddress
 from resources.libraries.python.L2Util import L2Util
@@ -1930,64 +1929,69 @@ class InterfaceUtil:
 
     @staticmethod
     def vpp_round_robin_rx_placement(
 
     @staticmethod
     def vpp_round_robin_rx_placement(
-            node, prefix, dp_worker_limit=None):
+            node, prefix, workers=None):
         """Set Round Robin interface RX placement on all worker threads
         on node.
 
         """Set Round Robin interface RX placement on all worker threads
         on node.
 
-        If specified, dp_core_limit limits the number of physical cores used
+        If specified, workers limits the number of physical cores used
         for data plane I/O work. Other cores are presumed to do something else,
         e.g. asynchronous crypto processing.
         None means all workers are used for data plane work.
         for data plane I/O work. Other cores are presumed to do something else,
         e.g. asynchronous crypto processing.
         None means all workers are used for data plane work.
-        Note this keyword specifies workers, not cores.
 
         :param node: Topology nodes.
         :param prefix: Interface name prefix.
 
         :param node: Topology nodes.
         :param prefix: Interface name prefix.
-        :param dp_worker_limit: How many cores for data plane work.
+        :param workers: Comma separated worker index numbers intended for
+            dataplane work.
         :type node: dict
         :type prefix: str
         :type node: dict
         :type prefix: str
-        :type dp_worker_limit: Optional[int]
+        :type workers: str
         """
         """
-        worker_id = 0
-        worker_cnt = len(VPPUtil.vpp_show_threads(node)) - 1
-        if dp_worker_limit is not None:
-            worker_cnt = min(worker_cnt, dp_worker_limit)
+        thread_data = VPPUtil.vpp_show_threads(node)
+        worker_cnt = len(thread_data) - 1
         if not worker_cnt:
         if not worker_cnt:
-            return
+            return None
+        worker_ids = list()
+        if workers:
+            for item in thread_data:
+                if str(item.cpu_id) in workers.split(u","):
+                    worker_ids.append(item.id)
+        else:
+            for item in thread_data:
+                if u"vpp_main" not in item.name:
+                    worker_ids.append(item.id)
+
+        worker_idx = 0
         for placement in InterfaceUtil.vpp_sw_interface_rx_placement_dump(node):
             for interface in node[u"interfaces"].values():
                 if placement[u"sw_if_index"] == interface[u"vpp_sw_index"] \
                     and prefix in interface[u"name"]:
                     InterfaceUtil.vpp_sw_interface_set_rx_placement(
                         node, placement[u"sw_if_index"], placement[u"queue_id"],
         for placement in InterfaceUtil.vpp_sw_interface_rx_placement_dump(node):
             for interface in node[u"interfaces"].values():
                 if placement[u"sw_if_index"] == interface[u"vpp_sw_index"] \
                     and prefix in interface[u"name"]:
                     InterfaceUtil.vpp_sw_interface_set_rx_placement(
                         node, placement[u"sw_if_index"], placement[u"queue_id"],
-                        worker_id % worker_cnt
+                        worker_ids[worker_idx % len(worker_ids)] - 1
                     )
                     )
-                    worker_id += 1
+                    worker_idx += 1
 
     @staticmethod
     def vpp_round_robin_rx_placement_on_all_duts(
 
     @staticmethod
     def vpp_round_robin_rx_placement_on_all_duts(
-            nodes, prefix, dp_core_limit=None):
-        """Set Round Robin interface RX placement on all worker threads
+            nodes, prefix, workers=None):
+        """Set Round Robin interface RX placement on worker threads
         on all DUTs.
 
         on all DUTs.
 
-        If specified, dp_core_limit limits the number of physical cores used
+        If specified, workers limits the number of physical cores used
         for data plane I/O work. Other cores are presumed to do something else,
         e.g. asynchronous crypto processing.
         None means all cores are used for data plane work.
         for data plane I/O work. Other cores are presumed to do something else,
         e.g. asynchronous crypto processing.
         None means all cores are used for data plane work.
-        Note this keyword specifies cores, not workers.
 
         :param nodes: Topology nodes.
         :param prefix: Interface name prefix.
 
         :param nodes: Topology nodes.
         :param prefix: Interface name prefix.
-        :param dp_worker_limit: How many cores for data plane work.
+        :param workers: Comma separated worker index numbers intended for
+            dataplane work.
         :type nodes: dict
         :type prefix: str
         :type nodes: dict
         :type prefix: str
-        :type dp_worker_limit: Optional[int]
+        :type workers: str
         """
         for node in nodes.values():
             if node[u"type"] == NodeType.DUT:
         """
         for node in nodes.values():
             if node[u"type"] == NodeType.DUT:
-                dp_worker_limit = CpuUtils.worker_count_from_cores_and_smt(
-                    phy_cores=dp_core_limit,
-                    smt_used=CpuUtils.is_smt_enabled(node[u"cpuinfo"]),
-                )
                 InterfaceUtil.vpp_round_robin_rx_placement(
                 InterfaceUtil.vpp_round_robin_rx_placement(
-                    node, prefix, dp_worker_limit
+                    node, prefix, workers
                 )
                 )
index 60e0e6d..8a5d8c1 100644 (file)
@@ -288,7 +288,7 @@ class NATUtil:
         :rtype: int
         """
         # vpp-device tests have not dedicated physical core so
         :rtype: int
         """
         # vpp-device tests have not dedicated physical core so
-        # ${thr_count_int} == 0 but we need to use one thread
+        # ${dp_count_int} == 0 but we need to use one thread
         threads = 1 if not int(threads) else int(threads)
         rest, mult = modf(log2(sessions/(10*threads)))
         return 2 ** (int(mult) + (1 if rest else 0)) * 10
         threads = 1 if not int(threads) else int(threads)
         rest, mult = modf(log2(sessions/(10*threads)))
         return 2 ** (int(mult) + (1 if rest else 0)) * 10
index dc1265f..b847667 100644 (file)
 | | | VPP Ipsec Set Async Mode | ${nodes['${dut}']}
 | | END
 
 | | | VPP Ipsec Set Async Mode | ${nodes['${dut}']}
 | | END
 
-| Disable Crypto Work of VPP Worker Threads on all VPP DUTs
+| Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | [Documentation]
 | | ... | Disable crypto work for specified data plane CPU cores
 | | [Documentation]
 | | ... | Disable crypto work for specified data plane CPU cores
-| | ... | on all DUT nodes.
-| | ... | Currently only "port" (physical) interfaces are supported.
-| | ... | Will need a redesign if virtual interfaces (memif, vhost-user)
-| | ... | are present.
-| |
-| | ... | *Arguments:*
-| | ... | - dp_cores - Number of physical cores. Type: integer
-| |
-| | [Arguments] | ${dp_cores}
+| | ... | on all DUT nodes (leaving feature plane workers enabled).
+| | ... | Set Round Robin interface RX placement on data plane CPU cores
+| | ... | on all DUT nodes (leaving feature plane workers disabled).
 | |
 | | VPP Round Robin Rx Placement on all DUTs
 | |
 | | VPP Round Robin Rx Placement on all DUTs
-| | ... | ${nodes} | prefix=port | dp_core_limit=${dp_cores}
-| | FOR | ${dut} | IN | @{duts}
-| | | Disable Crypto Work of VPP Worker Threads on node
-| | | ... | ${dut} | ${dp_cores}
-| | END
-
-| Disable Crypto Work of VPP Worker Threads on node
-| | [Documentation]
-| | ... | Disable crypto work for specified data plane cores
-| | ... | on DUT node.
-| |
-| | ... | *Arguments:*
-| | ... | - dut - DUT node. Type: string
-| | ... | - dp_cores - Number of physical cores. Type: integer
-| |
-| | [Arguments] | ${dut} | ${dp_cores}
-| |
-| | # Workers From Physical Cores keyword is currently defined in default.robot
-| | ${dp_worker_count} = | Workers From Physical Cores | ${dp_cores}
-| | FOR | ${worker_index} | IN RANGE | ${dp_worker_count}
-| | | VPP IPSec Crypto SW Scheduler Set Worker
-| | | ... | ${nodes['${dut}']} | ${worker_index} | crypto_enable=${False}
-| | END
+| | ... | ${nodes} | prefix=${EMPTY} | workers=${cpu_dp}
+| | VPP IPSec Crypto SW Scheduler Set Worker on all DUTs
+| | ... | ${nodes} | workers=${cpu_dp} | crypto_enable=${False}
\ No newline at end of file
index 53e3f9f..8b7f4dc 100644 (file)
@@ -35,7 +35,7 @@
 | | [Arguments] | ${phy_cores} | ${rx_queues}=${None} | ${jumbo_frames}=${False}
 | |
 | | ${cpu_count_int} | Convert to Integer | ${phy_cores}
 | | [Arguments] | ${phy_cores} | ${rx_queues}=${None} | ${jumbo_frames}=${False}
 | |
 | | ${cpu_count_int} | Convert to Integer | ${phy_cores}
-| | ${thr_count_int} | Convert to Integer | ${phy_cores}
+| | ${dp_count_int} | Convert to Integer | ${phy_cores}
 | | ${dp_cores}= | Evaluate | ${cpu_count_int}+1
 | | FOR | ${dut} | IN | @{duts}
 | | | ${numa}= | Get interfaces numa node | ${nodes['${dut}']}
 | | ${dp_cores}= | Evaluate | ${cpu_count_int}+1
 | | FOR | ${dut} | IN | @{duts}
 | | | ${numa}= | Get interfaces numa node | ${nodes['${dut}']}
 | | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']}
 | | | ${cpus}= | Cpu List Per Node Str | ${nodes['${dut}']} | ${numa}
 | | | ... | skip_cnt=${2} | cpu_cnt=${cpu_count_int} | smt_used=${smt_used}
 | | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']}
 | | | ${cpus}= | Cpu List Per Node Str | ${nodes['${dut}']} | ${numa}
 | | | ... | skip_cnt=${2} | cpu_cnt=${cpu_count_int} | smt_used=${smt_used}
-| | | ${thr_count_int}= | Run keyword if | ${smt_used} |
+| | | ${dp_count_int}= | Run keyword if | ${smt_used} |
 | | | ... | Evaluate | int(${cpu_count_int}*2) | ELSE | Set variable
 | | | ... | Evaluate | int(${cpu_count_int}*2) | ELSE | Set variable
-| | | ... | ${thr_count_int}
+| | | ... | ${dp_count_int}
 | | | ${rxq_ratio} = | Get Variable Value | \${rxq_ratio} | ${1}
 | | | ${rxq_count_int}= | Run Keyword If | ${rx_queues}
 | | | ... | Set variable | ${rx_queues}
 | | | ${rxq_ratio} = | Get Variable Value | \${rxq_ratio} | ${1}
 | | | ${rxq_count_int}= | Run Keyword If | ${rx_queues}
 | | | ... | Set variable | ${rx_queues}
-| | | ... | ELSE | Evaluate | int(${thr_count_int}/${rxq_ratio})
+| | | ... | ELSE | Evaluate | int(${dp_count_int}/${rxq_ratio})
 | | | ${rxq_count_int}= | Run keyword if | ${rxq_count_int} == 0
 | | | ... | Set variable | ${1}
 | | | ... | ELSE | Set variable | ${rxq_count_int}
 | | | Start testpmd
 | | | ... | ${nodes['${dut}']} | ${${dut}_pf1}[0] | ${${dut}_pf2}[0]
 | | | ${rxq_count_int}= | Run keyword if | ${rxq_count_int} == 0
 | | | ... | Set variable | ${1}
 | | | ... | ELSE | Set variable | ${rxq_count_int}
 | | | Start testpmd
 | | | ... | ${nodes['${dut}']} | ${${dut}_pf1}[0] | ${${dut}_pf2}[0]
-| | | ... | ${cpus} | ${thr_count_int} | ${rxq_count_int} | ${jumbo_frames}
+| | | ... | ${cpus} | ${dp_count_int} | ${rxq_count_int} | ${jumbo_frames}
 | | | ... | ${nic_rxq_size} | ${nic_txq_size}
 | | | ... | ${nic_rxq_size} | ${nic_txq_size}
-| | | Run keyword if | ${thr_count_int} > 1
+| | | Run keyword if | ${dp_count_int} > 1
 | | | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD
 | | | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD
-| | | Set Tags | ${thr_count_int}T${cpu_count_int}C
+| | | Set Tags | ${dp_count_int}T${cpu_count_int}C
 | | END
 
 | Start l3fwd on all DUTs
 | | END
 
 | Start l3fwd on all DUTs
@@ -78,7 +78,7 @@
 | | [Arguments] | ${phy_cores} | ${rx_queues}=${None} | ${jumbo_frames}=${False}
 | |
 | | ${cpu_count_int} | Convert to Integer | ${phy_cores}
 | | [Arguments] | ${phy_cores} | ${rx_queues}=${None} | ${jumbo_frames}=${False}
 | |
 | | ${cpu_count_int} | Convert to Integer | ${phy_cores}
-| | ${thr_count_int} | Convert to Integer | ${phy_cores}
+| | ${dp_count_int} | Convert to Integer | ${phy_cores}
 | | ${dp_cores}= | Evaluate | ${cpu_count_int}+1
 | | FOR | ${dut} | IN | @{duts}
 | | | ${numa}= | Get interfaces numa node | ${nodes['${dut}']}
 | | ${dp_cores}= | Evaluate | ${cpu_count_int}+1
 | | FOR | ${dut} | IN | @{duts}
 | | | ${numa}= | Get interfaces numa node | ${nodes['${dut}']}
 | | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']}
 | | | ${cpus}= | Cpu List Per Node Str | ${nodes['${dut}']} | ${numa}
 | | | ... | skip_cnt=${2} | cpu_cnt=${cpu_count_int} | smt_used=${smt_used}
 | | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']}
 | | | ${cpus}= | Cpu List Per Node Str | ${nodes['${dut}']} | ${numa}
 | | | ... | skip_cnt=${2} | cpu_cnt=${cpu_count_int} | smt_used=${smt_used}
-| | | ${thr_count_int}= | Run keyword if | ${smt_used} |
+| | | ${dp_count_int}= | Run keyword if | ${smt_used} |
 | | | ... | Evaluate | int(${cpu_count_int}*2) | ELSE | Set variable
 | | | ... | Evaluate | int(${cpu_count_int}*2) | ELSE | Set variable
-| | | ... | ${thr_count_int}
+| | | ... | ${dp_count_int}
 | | | ${rxq_count_int}= | Run keyword if | ${rx_queues}
 | | | ... | Set variable | ${rx_queues}
 | | | ${rxq_count_int}= | Run keyword if | ${rx_queues}
 | | | ... | Set variable | ${rx_queues}
-| | | ... | ELSE | Evaluate | int(${thr_count_int}/1)
+| | | ... | ELSE | Evaluate | int(${dp_count_int}/1)
 | | | ${rxq_count_int}= | Run keyword if | ${rxq_count_int} == 0
 | | | ... | Set variable | ${1}
 | | | ... | ELSE | Set variable | ${rxq_count_int}
 | | | Start l3fwd
 | | | ... | ${nodes} | ${nodes['${dut}']} | ${${dut}_pf1}[0] | ${${dut}_pf2}[0]
 | | | ${rxq_count_int}= | Run keyword if | ${rxq_count_int} == 0
 | | | ... | Set variable | ${1}
 | | | ... | ELSE | Set variable | ${rxq_count_int}
 | | | Start l3fwd
 | | | ... | ${nodes} | ${nodes['${dut}']} | ${${dut}_pf1}[0] | ${${dut}_pf2}[0]
-| | | ... | ${cpus} | ${thr_count_int} | ${rxq_count_int} | ${jumbo_frames}
-| | | Run keyword if | ${thr_count_int} > 1
+| | | ... | ${cpus} | ${dp_count_int} | ${rxq_count_int} | ${jumbo_frames}
+| | | Run keyword if | ${dp_count_int} > 1
 | | | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD
 | | | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD
-| | | Set Tags | ${thr_count_int}T${cpu_count_int}C
+| | | Set Tags | ${dp_count_int}T${cpu_count_int}C
 | | END
 | | END
index 202ade3..c33c875 100644 (file)
@@ -51,7 +51,7 @@
 | | ... | - n_sessions - Expected number of opened sessions.
 | |
 | | ${max_sessions}= | Compute Max Translations Per Thread
 | | ... | - n_sessions - Expected number of opened sessions.
 | |
 | | ${max_sessions}= | Compute Max Translations Per Thread
-| | ... | ${n_sessions} | ${thr_count_int}
+| | ... | ${n_sessions} | ${dp_count_int}
 | | Enable NAT44 Plugin | ${dut1} | mode=${nat_mode} | sessions=${max_sessions}
 | | Configure inside and outside interfaces
 | | ... | ${dut1} | ${DUT1_${int}1}[0] | ${DUT1_${int}2}[0]
 | | Enable NAT44 Plugin | ${dut1} | mode=${nat_mode} | sessions=${max_sessions}
 | | Configure inside and outside interfaces
 | | ... | ${dut1} | ${DUT1_${int}1}[0] | ${DUT1_${int}2}[0]
index 96b0e0e..c6c98fb 100644 (file)
 | | ${smt_used}= | Is SMT enabled | ${nodes['${iperf_server_node}']['cpuinfo']}
 | | ${vm_status} | ${value}= | Run Keyword And Ignore Error
 | | ... | Get Library Instance | vnf_manager
 | | ${smt_used}= | Is SMT enabled | ${nodes['${iperf_server_node}']['cpuinfo']}
 | | ${vm_status} | ${value}= | Run Keyword And Ignore Error
 | | ... | Get Library Instance | vnf_manager
-| | ${vth}= | Evaluate | (${thr_count_int} + 1)
+| | ${vth}= | Evaluate | (${dp_count_int} + 1)
 | | ${cpu_skip_cnt}= | Set Variable If | '${vm_status}' == 'PASS'
 | | ... | ${CPU_CNT_SYSTEM}
 | | ... | ${${CPU_CNT_SYSTEM} + ${CPU_CNT_MAIN} + ${cpu_count_int} + ${vth}}
 | | ${cpu_skip_cnt}= | Set Variable If | '${vm_status}' == 'PASS'
 | | ... | ${CPU_CNT_SYSTEM}
 | | ... | ${${CPU_CNT_SYSTEM} + ${CPU_CNT_MAIN} + ${cpu_count_int} + ${vth}}
index 1d4c9a1..4b2ad22 100644 (file)
 | | Acquire all '${container_group}' containers
 | | Create all '${container_group}' containers
 | | ${cpu_count_int} | Convert to Integer | ${phy_cores}
 | | Acquire all '${container_group}' containers
 | | Create all '${container_group}' containers
 | | ${cpu_count_int} | Convert to Integer | ${phy_cores}
-| | ${thr_count_int} | Convert to Integer | ${phy_cores}
+| | ${dp_count_int} | Convert to Integer | ${phy_cores}
 | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']}
 | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']}
-| | ${thr_count_int}= | Run keyword if | ${smt_used}
+| | ${dp_count_int}= | Run keyword if | ${smt_used}
 | | ... | Evaluate | int(${cpu_count_int}*2)
 | | ... | Evaluate | int(${cpu_count_int}*2)
-| | ... | ELSE | Set variable | ${thr_count_int}
+| | ... | ELSE | Set variable | ${dp_count_int}
 | | ${rxq_ratio} = | Get Variable Value | \${rxq_ratio} | ${1}
 | | ${rxq_count_int}= | Run Keyword If | ${rx_queues}
 | | ... | Set variable | ${rx_queues}
 | | ${rxq_ratio} = | Get Variable Value | \${rxq_ratio} | ${1}
 | | ${rxq_count_int}= | Run Keyword If | ${rx_queues}
 | | ... | Set variable | ${rx_queues}
-| | ... | ELSE | Evaluate | int(${thr_count_int}/${rxq_ratio})
+| | ... | ELSE | Evaluate | int(${dp_count_int}/${rxq_ratio})
 | | ${rxq_count_int}= | Run keyword if | ${rxq_count_int} == 0
 | | ... | Set variable | ${1}
 | | ... | ELSE | Set variable | ${rxq_count_int}
 | | ${rxq_count_int}= | Run keyword if | ${rxq_count_int} == 0
 | | ... | Set variable | ${1}
 | | ... | ELSE | Set variable | ${rxq_count_int}
index 58c2189..4905da5 100644 (file)
@@ -75,8 +75,6 @@
 | ${cpu_alloc_str}= | ${0}
 
 *** Keywords ***
 | ${cpu_alloc_str}= | ${0}
 
 *** Keywords ***
-# TODO: Sort keywords alphabetically.
-
 | Call Resetter
 | | [Documentation]
 | | ... | Check for a presence of test variable \${resetter}.
 | Call Resetter
 | | [Documentation]
 | | ... | Check for a presence of test variable \${resetter}.
 | | Should Not Contain Match | ${results} | FAIL
 | | ... | msg=At least one of statistic commands failed!
 
 | | Should Not Contain Match | ${results} | FAIL
 | | ... | msg=At least one of statistic commands failed!
 
-| Workers From Physical Cores
-| | [Documentation]
-| | ... | Convert from core count to worker count.
-| |
-| | ... | This just calls CpuUtils.worker_count_from_cores_and_smt keyword
-| | ... | with the global \${smt_used} value.
-| | ... | See documentation there.
-| |
-| | ... | *Arguments:*
-| | ... | - phy_cores - Number of physical cores to convert from. Type: integer.
-| |
-| | ... | *Return value:*
-| | ... | - Number of workers active on the given number of cores.
-| |
-| | ... | *Example:*
-| |
-| | ... | \| \${dp_workers} = \| Workers from Physical Cores \| \${1} \|
-| |
-| | [Arguments] | ${phy_cores}
-| |
-| | Run Keyword And Return | Worker Count From Cores And Smt
-| | ... | phy_cores=${phy_cores} | smt_used=${smt_used}
-
 | Configure crypto device on all DUTs
 | | [Documentation] | Verify if Crypto QAT device virtual functions are
 | | ... | initialized on all DUTs. If parameter force_init is set to True, then
 | Configure crypto device on all DUTs
 | | [Documentation] | Verify if Crypto QAT device virtual functions are
 | | ... | initialized on all DUTs. If parameter force_init is set to True, then
 | | ... | automatically map also the sibling logical cores.
 | | ... | Keyword will automatically set the appropriate test TAGs in format
 | | ... | mTnC, where m=logical_core_count and n=physical_core_count.
 | | ... | automatically map also the sibling logical cores.
 | | ... | Keyword will automatically set the appropriate test TAGs in format
 | | ... | mTnC, where m=logical_core_count and n=physical_core_count.
-| | ... | RXQ are computed automatically by dividing thread count with number 2
-| | ... | (TODO: Add division by actual number of interfaces). User can manually
-| | ... | override RX, RXD, TXD parameters if needed.
+| | ... | User can manually override RXQ, RXD, TXD parameters if needed.
 | |
 | | ... | *Arguments:*
 | | ... | - phy_cores - Number of physical cores to use. Type: integer
 | |
 | | ... | *Arguments:*
 | | ... | - phy_cores - Number of physical cores to use. Type: integer
 | | [Arguments] | ${phy_cores} | ${rx_queues}=${None} | ${rxd}=${None}
 | | ... | ${txd}=${None}
 | |
 | | [Arguments] | ${phy_cores} | ${rx_queues}=${None} | ${rxd}=${None}
 | | ... | ${txd}=${None}
 | |
-| | ${cpu_count_int} | Convert to Integer | ${phy_cores}
-| | ${thr_count_int} | Convert to Integer | ${phy_cores}
-| | ${rxd_count_int}= | Set variable | ${rxd}
-| | ${txd_count_int}= | Set variable | ${txd}
 | | FOR | ${dut} | IN | @{duts}
 | | FOR | ${dut} | IN | @{duts}
-| | | ${numa}= | Get interfaces numa node
-| | | ... | ${nodes['${dut}']} | @{${dut}_pf_keys}
-| | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']}
-| | | ${skip_cnt}= | Set variable | ${CPU_CNT_SYSTEM}
-| | | ${cpu_main}= | Cpu list per node str | ${nodes['${dut}']} | ${numa}
-| | | ... | skip_cnt=${skip_cnt} | cpu_cnt=${CPU_CNT_MAIN}
-| | | ${skip_cnt}= | Evaluate | ${CPU_CNT_SYSTEM} + ${CPU_CNT_MAIN}
-| | | ${cpu_wt}= | Run Keyword If | ${cpu_count_int} > 0 |
-| | | ... | Cpu list per node str | ${nodes['${dut}']} | ${numa}
-| | | ... | skip_cnt=${skip_cnt} | cpu_cnt=${cpu_count_int}
-| | | ... | smt_used=${smt_used}
-| | | ${thr_count_int}= | Run Keyword If | ${smt_used}
-| | | ... | Evaluate | int(${cpu_count_int}*2)
-| | | ... | ELSE | Set variable | ${thr_count_int}
-| | | ${rxq_ratio} = | Get Variable Value | \${rxq_ratio} | ${1}
-| | | ${rxq_count_int}= | Run Keyword If | ${rx_queues}
-| | | ... | Set variable | ${rx_queues}
-| | | ... | ELSE | Evaluate | int(${thr_count_int}/${rxq_ratio})
-| | | ${rxq_count_int}= | Run Keyword If | ${rxq_count_int} == 0
-| | | ... | Set variable | ${1}
-| | | ... | ELSE | Set variable | ${rxq_count_int}
+| | | &{compute_resource_info}= | Get Affinity VPP Vswitch
+| | | ... | ${nodes} | ${dut} | ${phy_cores} | rx_queues=${rx_queues}
+| | | ... | rxd=${rxd} | txd=${txd}
+| | | Set Test Variable | &{compute_resource_info}
+| | | Create compute resources variables
 | | | Run Keyword | ${dut}.Add CPU Main Core | ${cpu_main}
 | | | Run Keyword If | ${cpu_count_int} > 0
 | | | ... | ${dut}.Add CPU Corelist Workers | ${cpu_wt}
 | | | Run Keyword | ${dut}.Add CPU Main Core | ${cpu_main}
 | | | Run Keyword If | ${cpu_count_int} > 0
 | | | ... | ${dut}.Add CPU Corelist Workers | ${cpu_wt}
-| | | Run Keyword If | ${smt_used}
-| | | ... | Run Keyword | ${dut}.Add Buffers Per Numa | ${215040} | ELSE
-| | | ... | Run Keyword | ${dut}.Add Buffers Per Numa | ${107520}
-| | | Run Keyword If | ${thr_count_int} > 1
-| | | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD
-| | | Set Tags | ${thr_count_int}T${cpu_count_int}C
+| | | Run Keyword | ${dut}.Add Buffers Per Numa | ${buffers_numa}
 | | END
 | | END
-| | ${cpu_alloc_str}= | Catenate | SEPARATOR=, | ${cpu_alloc_str} | ${cpu_main}
-| | ${cpu_alloc_str}= | Catenate | SEPARATOR=, | ${cpu_alloc_str} | ${cpu_wt}
-| | Set Test Variable | ${smt_used}
-| | Set Test Variable | ${cpu_alloc_str}
-| | Set Test Variable | ${cpu_count_int}
-| | Set Test Variable | ${thr_count_int}
-| | Set Test Variable | ${rxd_count_int}
-| | Set Test Variable | ${txd_count_int}
-| | Set Test Variable | ${rxq_count_int}
 
 
-| Add worker threads for GSO tests to all DUTs
-| | [Documentation] | Setup worker threads in vpp startup configuration on all
-| | ... | DUTs. Based on the SMT configuration of DUT if enabled keyword will
-| | ... | automatically map also the sibling logical cores.
-| | ... | Keyword will automatically set the appropriate test TAGs in format
-| | ... | mTnC, where m=logical_core_count and n=physical_core_count.
-| | ... | RXQ are computed automatically by dividing thread count with number 2
-| | ... | (TODO: Add division by actual number of interfaces). User can manually
-| | ... | override RX, RXD, TXD parameters if needed.
-| |
-| | ... | *Arguments:*
-| | ... | - phy_cores - Number of physical cores to use. Type: integer
-| | ... | - rx_queues - Number of RX queues. Type: integer
-| | ... | - rxd - Number of RX descriptors. Type: integer
-| | ... | - txd - Number of TX descriptors. Type: integer
-| |
-| | ... | *Example:*
-| |
-| | ... | \| Add worker threads for GSO tests to all DUTs \| ${1} \| ${1} \|
+| Create compute resources variables
+| | [Documentation]
+| | ... | Create compute resources variables
 | |
 | |
-| | [Arguments] | ${phy_cores} | ${rx_queues}=${None} | ${rxd}=${None}
-| | ... | ${txd}=${None}
+| | ... | _NOTE:_ This KW sets various suite variables based on computed
+| | ... | resources.
 | |
 | |
-| | ${cpu_count_int} | Convert to Integer | ${phy_cores}
-| | ${thr_count_int} | Convert to Integer | ${phy_cores}
-| | ${rxd_count_int}= | Set variable | ${rxd}
-| | ${txd_count_int}= | Set variable | ${txd}
-| | FOR | ${dut} | IN | @{duts}
-| | | ${numa}= | Get interfaces numa node
-| | | ... | ${nodes['${dut}']} | @{${dut}_pf_keys}
-| | | ${smt_used}= | Set variable | ${False}
-| | | ${skip_cnt}= | Set variable | ${CPU_CNT_SYSTEM}
-| | | ${cpu_main}= | Cpu list per node str | ${nodes['${dut}']} | ${numa}
-| | | ... | skip_cnt=${skip_cnt} | cpu_cnt=${CPU_CNT_MAIN}
-| | | ${skip_cnt}= | Evaluate | ${CPU_CNT_SYSTEM} + ${CPU_CNT_MAIN}
-| | | ${cpu_wt}= | Run Keyword If | ${cpu_count_int} > 0 |
-| | | ... | Cpu list per node str | ${nodes['${dut}']} | ${numa}
-| | | ... | skip_cnt=${skip_cnt} | cpu_cnt=${cpu_count_int}
-| | | ... | smt_used=${smt_used}
-| | | ${thr_count_int}= | Run Keyword If | ${smt_used}
-| | | ... | Evaluate | int(${cpu_count_int}*2)
-| | | ... | ELSE | Set variable | ${thr_count_int}
-| | | ${rxq_ratio} = | Get Variable Value | \${rxq_ratio} | ${1}
-| | | ${rxq_count_int}= | Run Keyword If | ${rx_queues}
-| | | ... | Set variable | ${rx_queues}
-| | | ... | ELSE | Evaluate | int(${thr_count_int}/${rxq_ratio})
-| | | ${rxq_count_int}= | Run Keyword If | ${rxq_count_int} == 0
-| | | ... | Set variable | ${1}
-| | | ... | ELSE | Set variable | ${rxq_count_int}
-| | | Run Keyword | ${dut}.Add CPU Main Core | ${cpu_main}
-| | | Run Keyword If | ${cpu_count_int} > 0
-| | | ... | ${dut}.Add CPU Corelist Workers | ${cpu_wt}
-| | | Run Keyword If | ${smt_used}
-| | | ... | Run Keyword | ${dut}.Add Buffers Per Numa | ${215040} | ELSE
-| | | ... | Run Keyword | ${dut}.Add Buffers Per Numa | ${107520}
-| | | Run Keyword If | ${thr_count_int} > 1
-| | | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD
-| | | Set Tags | ${thr_count_int}T${cpu_count_int}C
+| | ${variables}= | Get Dictionary Keys | ${compute_resource_info}
+| | FOR | ${variable} | IN | @{variables}
+| | | ${value}= | Get From Dictionary | ${compute_resource_info} | ${variable}
+| | | Set Test Variable | ${${variable}} | ${value}
 | | END
 | | END
-| | ${cpu_alloc_str}= | Catenate | SEPARATOR=, | ${cpu_alloc_str} | ${cpu_main}
-| | ${cpu_alloc_str}= | Catenate | SEPARATOR=, | ${cpu_alloc_str} | ${cpu_wt}
-| | Set Test Variable | ${smt_used}
-| | Set Test Variable | ${cpu_alloc_str}
-| | Set Test Variable | ${cpu_count_int}
-| | Set Test Variable | ${thr_count_int}
-| | Set Test Variable | ${rxd_count_int}
-| | Set Test Variable | ${txd_count_int}
-| | Set Test Variable | ${rxq_count_int}
+| | Run Keyword If | ${dp_count_int} > 1
+| | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD
+| | Set Tags | ${dp_count_int}T${cpu_count_int}C
 
 | Add DPDK VLAN strip offload switch off between DUTs
 | | [Documentation]
 
 | Add DPDK VLAN strip offload switch off between DUTs
 | | [Documentation]
index 5bb7c85..1a7b32e 100644 (file)
 | | | Run Keyword If | ${nic_txq_size} > 0
 | | | ... | ${dut}.Add DPDK Dev Default TXD | ${nic_txq_size}
 | | | Run Keyword If | '${crypto_type}' != '${None}'
 | | | Run Keyword If | ${nic_txq_size} > 0
 | | | ... | ${dut}.Add DPDK Dev Default TXD | ${nic_txq_size}
 | | | Run Keyword If | '${crypto_type}' != '${None}'
-| | | ... | ${dut}.Add DPDK Cryptodev | ${thr_count_int}
+| | | ... | ${dut}.Add DPDK Cryptodev | ${dp_count_int}
 | | | Run Keyword | ${dut}.Add DPDK Max Simd Bitwidth | ${GRAPH_NODE_VARIANT}
 | | END
 | | ${_vlan_strip} | ${value}= | Run Keyword And Ignore Error
 | | | Run Keyword | ${dut}.Add DPDK Max Simd Bitwidth | ${GRAPH_NODE_VARIANT}
 | | END
 | | ${_vlan_strip} | ${value}= | Run Keyword And Ignore Error
index b966f42..0023243 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index f856b7d..6f2e253 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index f086802..b858393 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index 8e13295..2fcb9e6 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index 00a445c..2f8f9e1 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index 7f2be5f..0dec230 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index ce97b26..ea62746 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index 40a7047..eb97da9 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index a13a6f1..4accc7a 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index 360da97..84565fa 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index 399c61c..2fdcdb1 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index ef98744..5e5f809 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index 2ac0a75..e5dbd1b 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index 8e5d2b7..577c7ef 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index 6bb0d3f..db9e557 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index d63cdd6..8fd950a 100644 (file)
@@ -79,7 +79,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}
 
@@ -97,7 +97,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 3-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0]
index d831dbb..3c57956 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 87599f9..17ab11f 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 6ce6865..2a8fb61 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index c8353d8..48c455d 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${1}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 8f8336b..c194d8f 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 831ae7e..7d617d6 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index c7d060b..6a143a3 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 245d888..ca3e082 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${2}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index ddf7ca7..f047fd2 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 344ab8f..9546a3c 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 80543a3..f0cfa03 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 2943e46..9156265 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${4}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 72ade15..da8de5e 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 15cfa40..d717cd0 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index ac85566..5e7c2e0 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index 46c50e8..94d6222 100644 (file)
@@ -75,7 +75,7 @@
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
 | ${laddr_ip4}= | 10.0.0.0
 | ${addr_range}= | ${24}
 | ${n_tunnels}= | ${8}
-| ${dp_cores}= | ${1}
+| ${dp_cores_count}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
 # Traffic profile:
 | ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${n_tunnels}-udir
 | ${traffic_directions}= | ${1}
@@ -94,7 +94,7 @@
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
 | | ... | - phy_cores - Total number of physical cores. Type: integer
 | | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer
 | |
-| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${1}
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | |
 | | Set Test Variable | \${frame_size}
 | |
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Enable IPSec Async Mode on all VPP DUTs
-| | And Disable Crypto Work of VPP Worker Threads on all VPP DUTs | ${dp_cores}
+| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
 | | And Initialize IPSec in 2-node circular topology
 | | And VPP IPsec Create Tunnel Interfaces
 | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0]
index c5e54f5..a3f4b7a 100644 (file)
@@ -47,6 +47,7 @@
 | ${osi_layer}= | L7
 | ${overhead}= | ${0}
 | ${enable_gso}= | ${True}
 | ${osi_layer}= | L7
 | ${overhead}= | ${0}
 | ${enable_gso}= | ${True}
+| ${smt_used}= | ${False}
 # iPerf3 client settings:
 | ${iperf_client_bind}= | 1.1.1.1
 | ${iperf_client_bind_gw}= | 1.1.1.2
 # iPerf3 client settings:
 | ${iperf_client_bind}= | 1.1.1.1
 | ${iperf_client_bind_gw}= | 1.1.1.2
index 441b72a..6ab0d00 100644 (file)
@@ -47,6 +47,7 @@
 | ${osi_layer}= | L7
 | ${overhead}= | ${0}
 | ${enable_gso}= | ${False}
 | ${osi_layer}= | L7
 | ${overhead}= | ${0}
 | ${enable_gso}= | ${False}
+| ${smt_used}= | ${False}
 # iPerf3 client settings:
 | ${iperf_client_bind}= | 1.1.1.1
 | ${iperf_client_bind_gw}= | 1.1.1.2
 # iPerf3 client settings:
 | ${iperf_client_bind}= | 1.1.1.1
 | ${iperf_client_bind_gw}= | 1.1.1.2
index 42b3453..5ab3d66 100644 (file)
@@ -46,6 +46,7 @@
 | ${nic_vfs}= | 0
 | ${osi_layer}= | L7
 | ${overhead}= | ${0}
 | ${nic_vfs}= | 0
 | ${osi_layer}= | L7
 | ${overhead}= | ${0}
+| ${smt_used}= | ${False}
 # Qemu settings:
 | ${enable_gso}= | ${True}
 | ${enable_csum}= | ${True}
 # Qemu settings:
 | ${enable_gso}= | ${True}
 | ${enable_csum}= | ${True}
index 0e9c7bb..922b0b8 100644 (file)
@@ -46,6 +46,7 @@
 | ${nic_vfs}= | 0
 | ${osi_layer}= | L7
 | ${overhead}= | ${0}
 | ${nic_vfs}= | 0
 | ${osi_layer}= | L7
 | ${overhead}= | ${0}
+| ${smt_used}= | ${False}
 # Qemu settings:
 | ${enable_gso}= | ${False}
 | ${enable_csum}= | ${False}
 # Qemu settings:
 | ${enable_gso}= | ${False}
 | ${enable_csum}= | ${False}
index cc39904..446cc50 100644 (file)
@@ -72,7 +72,7 @@
 | | FOR | ${dut} | IN | @{duts}
 | | | Import Library | resources.libraries.python.VppConfigGenerator
 | | | ... | WITH NAME | ${dut}
 | | FOR | ${dut} | IN | @{duts}
 | | | Import Library | resources.libraries.python.VppConfigGenerator
 | | | ... | WITH NAME | ${dut}
-| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${thr_count_int}
+| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${dp_count_int}
 | | | Run keyword | ${dut}.Add DPDK Dev Default RXD | ${512}
 | | | Run keyword | ${dut}.Add Session Event Queues Memfd Segment
 | | | Run keyword | ${dut}.Add tcp congestion control algorithm
 | | | Run keyword | ${dut}.Add DPDK Dev Default RXD | ${512}
 | | | Run keyword | ${dut}.Add Session Event Queues Memfd Segment
 | | | Run keyword | ${dut}.Add tcp congestion control algorithm
index fd1cb31..f3ca740 100644 (file)
@@ -72,7 +72,7 @@
 | | FOR | ${dut} | IN | @{duts}
 | | | Import Library | resources.libraries.python.VppConfigGenerator
 | | | ... | WITH NAME | ${dut}
 | | FOR | ${dut} | IN | @{duts}
 | | | Import Library | resources.libraries.python.VppConfigGenerator
 | | | ... | WITH NAME | ${dut}
-| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${thr_count_int}
+| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${dp_count_int}
 | | | Run keyword | ${dut}.Add DPDK Dev Default RXD | ${512}
 | | | Run keyword | ${dut}.Add Session Event Queues Memfd Segment
 | | | Run keyword | ${dut}.Add tcp congestion control algorithm
 | | | Run keyword | ${dut}.Add DPDK Dev Default RXD | ${512}
 | | | Run keyword | ${dut}.Add Session Event Queues Memfd Segment
 | | | Run keyword | ${dut}.Add tcp congestion control algorithm
index 5420980..c542eab 100644 (file)
@@ -72,7 +72,7 @@
 | | FOR | ${dut} | IN | @{duts}
 | | | Import Library | resources.libraries.python.VppConfigGenerator
 | | | ... | WITH NAME | ${dut}
 | | FOR | ${dut} | IN | @{duts}
 | | | Import Library | resources.libraries.python.VppConfigGenerator
 | | | ... | WITH NAME | ${dut}
-| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${thr_count_int}
+| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${dp_count_int}
 | | | Run keyword | ${dut}.Add DPDK Dev Default RXD | ${512}
 | | | Run keyword | ${dut}.Add Session Event Queues Memfd Segment
 | | | Run keyword | ${dut}.Add tcp congestion control algorithm
 | | | Run keyword | ${dut}.Add DPDK Dev Default RXD | ${512}
 | | | Run keyword | ${dut}.Add Session Event Queues Memfd Segment
 | | | Run keyword | ${dut}.Add tcp congestion control algorithm
index 441b6a8..821d7d3 100644 (file)
@@ -72,7 +72,7 @@
 | | FOR | ${dut} | IN | @{duts}
 | | | Import Library | resources.libraries.python.VppConfigGenerator
 | | | ... | WITH NAME | ${dut}
 | | FOR | ${dut} | IN | @{duts}
 | | | Import Library | resources.libraries.python.VppConfigGenerator
 | | | ... | WITH NAME | ${dut}
-| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${thr_count_int}
+| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${dp_count_int}
 | | | Run keyword | ${dut}.Add DPDK Dev Default RXD | ${512}
 | | | Run keyword | ${dut}.Add Session Event Queues Memfd Segment
 | | | Run keyword | ${dut}.Add tcp congestion control algorithm
 | | | Run keyword | ${dut}.Add DPDK Dev Default RXD | ${512}
 | | | Run keyword | ${dut}.Add Session Event Queues Memfd Segment
 | | | Run keyword | ${dut}.Add tcp congestion control algorithm