Refactor perf test cases 01/13401/18
authorPeter Mikus <pmikus@cisco.com>
Tue, 10 Jul 2018 06:10:41 +0000 (06:10 +0000)
committerPeter Mikus <pmikus@cisco.com>
Fri, 13 Jul 2018 09:11:04 +0000 (09:11 +0000)
- Refactor Performance TCs due to changes in Hyperthreading and RXQ allocations.
- Simplify the structure of suite to avoid large refactors in future.

Change-Id: Ifb1b9719391f26745f075a900bd9fb39b6cb809c
Signed-off-by: Peter Mikus <pmikus@cisco.com>
312 files changed:
resources/libraries/robot/performance/performance_configuration.robot
resources/libraries/robot/shared/default.robot
tests/vpp/perf/container_memif/10ge2p1x520-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr.robot
tests/vpp/perf/container_memif/10ge2p1x520-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrpdrdisc.robot
tests/vpp/perf/container_memif/10ge2p1x520-eth-l2xcbase-eth-1memif-1dcr-mrr.robot
tests/vpp/perf/container_memif/10ge2p1x520-eth-l2xcbase-eth-1memif-1dcr-ndrpdrdisc.robot
tests/vpp/perf/container_memif/10ge2p1x520-eth-l2xcbase-eth-2memif-1dcr-mrr.robot
tests/vpp/perf/container_memif/10ge2p1x520-eth-l2xcbase-eth-2memif-1drc-ndrpdrdisc.robot
tests/vpp/perf/container_memif/10ge2p1x520-eth-l2xcbase-eth-2memif-1lxc-mrr.robot
tests/vpp/perf/container_memif/10ge2p1x520-eth-l2xcbase-eth-2memif-1lxc-ndrpdrdisc.robot
tests/vpp/perf/container_memif/10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr.robot
tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-1memif-1dcr-mrr.robot
tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-1memif-1dcr-ndrpdrdisc.robot
tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1dcr-mrr.robot
tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1lxc-mrr.robot
tests/vpp/perf/container_memif/40ge2p1xl710-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr.robot
tests/vpp/perf/container_memif/40ge2p1xl710-eth-l2xcbase-eth-2memif-1lxc-mrr.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot
tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4base-copwhtlistbase-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4base-iacldstbase-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4base-iacldstbase-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4base-ipolicemarkbase-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4base-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4base-ndrpdr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4base-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4scale200k-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4scale200k-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4scale20k-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4scale20k-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4scale2m-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4-ip4scale2m-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl10sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl10sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl10sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl10sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl10sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl10sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl1sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl1sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl1sf-10kflows-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl1sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl1sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl1sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl1sl-10kflows-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl1sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl50sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl50sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl50sf-10kflows-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl50sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl50sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl50sl-10kflows-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-nat44-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-nat44-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl10sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl10sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl10sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl10sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl10sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl10sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl1sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl1sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl1sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl1sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl1sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl1sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl50sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl50sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl50sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl50sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-udpsrcscale15-nat44-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4scale10-udpsrcscale15-nat44-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4scale100-udpsrcscale15-nat44-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4scale1000-udpsrcscale15-nat44-mrr.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4scale1000-udpsrcscale15-nat44-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4scale2000-udpsrcscale15-nat44-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4scale4000-udpsrcscale15-nat44-ndrpdrdisc.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-copwhtlistbase-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-iacldstbase-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-ipolicemarkbase-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale200k-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale20k-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale2m-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-10kflows-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-10kflows-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-10kflows-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-10kflows-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-nat44-mrr.robot
tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4scale1000-udpsrcscale15-nat44-mrr.robot
tests/vpp/perf/ip4/40ge2p1xl710-ethip4-ip4base-mrr.robot
tests/vpp/perf/ip4/40ge2p1xl710-ethip4-ip4base-ndrpdrdisc.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x520-ethip4lispip4-ip4base-mrr.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x520-ethip4lispip4-ip4base-ndrpdrdisc.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x520-ethip4lispip6-ip4base-ndrpdrdisc.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-mrr.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-ndrpdrdisc.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x520-ethip4vxlan-l2xcbase-mrr.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x520-ethip4vxlan-l2xcbase-ndrpdrdisc.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4lispip4-ip4base-mrr.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-mrr.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2xcbase-mrr.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6base-copwhtlistbase-mrr.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrpdrdisc.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6base-iacldstbase-mrr.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6base-iacldstbase-ndrpdrdisc.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6base-mrr.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6base-ndrpdrdisc.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6scale200k-mrr.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6scale200k-ndrpdrdisc.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6scale20k-mrr.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6scale20k-ndrpdrdisc.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6scale2m-mrr.robot
tests/vpp/perf/ip6/10ge2p1x520-ethip6-ip6scale2m-ndrpdrdisc.robot
tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-copwhtlistbase-mrr.robot
tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-iacldstbase-mrr.robot
tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-mrr.robot
tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale200k-mrr.robot
tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale20k-mrr.robot
tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale2m-mrr.robot
tests/vpp/perf/ip6/40ge2p1xl710-ethip6-ip6base-mrr.robot
tests/vpp/perf/ip6/40ge2p1xl710-ethip6-ip6base-ndrpdrdisc.robot
tests/vpp/perf/ip6_tunnels/10ge2p1x520-ethip6lispip4-ip6base-ndrpdrdisc.robot
tests/vpp/perf/ip6_tunnels/10ge2p1x520-ethip6lispip6-ip6base-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1vic1227-eth-l2bdbasemaclrn-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-dot1ad-l2xcbase-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-dot1q-l2bdbasemaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-dot1q-l2bdbasemaclrn-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-dot1q-l2xcbase-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-dot1q-l2xcbase-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl10sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl10sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl10sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl10sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl10sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl10sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl1sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl1sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl1sf-10kflows-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl1sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl1sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl1sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl1sl-10kflows-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl1sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl50sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl50sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl50sf-10kflows-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl50sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl50sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl50sl-10kflows-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl10sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl10sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl10sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl10sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl10sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl10sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl1sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl1sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl1sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl1sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl1sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl1sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl50sf-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl50sf-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl50sl-100flows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl50sl-100kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdscale100kmaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdscale100kmaclrn-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdscale10kmaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdscale10kmaclrn-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdscale1mmaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2bdscale1mmaclrn-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2xcbase-mrr.robot
tests/vpp/perf/l2/10ge2p1x520-eth-l2xcbase-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x710-dot1q-l2bdbasemaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-dot1q-l2xcbase-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-10kflows-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-10kflows-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-10kflows-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-10kflows-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-ndrpdrdisc.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale100kmaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale10kmaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale1mmaclrn-mrr.robot
tests/vpp/perf/l2/10ge2p1x710-eth-l2xcbase-mrr.robot
tests/vpp/perf/l2/40ge2p1vic1385-eth-l2bdbasemaclrn-ndrpdrdisc.robot
tests/vpp/perf/l2/40ge2p1xl710-eth-l2bdbasemaclrn-mrr.robot
tests/vpp/perf/l2/40ge2p1xl710-eth-l2bdbasemaclrn-ndrpdrdisc.robot
tests/vpp/perf/l2/40ge2p1xl710-eth-l2xcbase-mrr.robot
tests/vpp/perf/l2/40ge2p1xl710-eth-l2xcbase-ndrpdrdisc.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6ip6-ip6base-srv6enc1sid-mrr.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6ip6-ip6base-srv6enc1sid-ndrpdrdisc.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6enc2sids-mrr.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6enc2sids-ndrpdrdisc.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrpdrdisc.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-dyn-mrr.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-dyn-ndrpdrdisc.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-masq-mrr.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-masq-ndrpdrdisc.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-stat-mrr.robot
tests/vpp/perf/srv6/10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-stat-ndrpdrdisc.robot
tests/vpp/perf/tcp/10ge2p1x520-ethip4tcphttp-httpserver.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2xcbase-eth-4vhostvr1024-2vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr256-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-4vhostvr1024-2vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr256-1vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr.robot
tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/40ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot
tests/vpp/perf/vm_vhost/40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/40ge2p1xl710-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr.robot
tests/vpp/perf/vm_vhost/40ge2p1xl710-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/40ge2p1xl710-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrpdrdisc.robot
tests/vpp/perf/vm_vhost/40ge2p1xl710-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrpdrdisc.robot
tests/vpp/perf/vts/10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-2vhostvr1024-1vm-ndrpdrdisc.robot

index ba6396f..045a5d3 100644 (file)
 | | ... | routing for IPv6 with defined behaviour function and configure IPv6
 | | ... | routes on both DUT nodes.
 | | ...
+| | ... | *Note:*
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
 | | ${tg1_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1}
 | | ${tg1_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2}
 | | ${dut1_if2_mac}= | Get Interface MAC | ${dut1} | ${dut1_if2}
 | | ${sock1}= | Set Variable | memif-DUT1_VNF
 | | ${sock2}= | Set Variable | memif-DUT2_VNF
 | | Set up memif interfaces on DUT node | ${dut1} | ${sock1} | ${sock1}
-| | ... | ${1} | dut1-memif-1-if1 | dut1-memif-1-if2 | ${rxq} | ${rxq}
+| | ... | ${1} | dut1-memif-1-if1 | dut1-memif-1-if2 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
 | | Set up memif interfaces on DUT node | ${dut2} | ${sock2} | ${sock2}
-| | ... | ${1} | dut2-memif-1-if1 | dut2-memif-1-if2 | ${rxq} | ${rxq}
+| | ... | ${1} | dut2-memif-1-if1 | dut2-memif-1-if2 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
 | | ${duts}= | Get Matches | ${nodes} | DUT*
 | | :FOR | ${dut} | IN | @{duts}
 | | | Show Memif | ${nodes['${dut}']}
 | | Configure deterministic mode for NAT44
 | | ... | ${dut1} | 20.0.0.0 | 18 | 200.0.0.0 | 30
 
-| Initialize L2 xconnect for '${nr}' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| Initialize L2 xconnect for '${nr}' memif pairs in 3-node circular topology
 | | [Documentation]
 | | ... | Create pairs of Memif interfaces on all defined VPP nodes. Cross
 | | ... | connect each Memif interface with one physical interface or virtual
 | | ... | Socket paths for Memif are defined in following format:
 | | ... | - /tmp/memif-DUT1_VNF${number}-${sid}
 | | ...
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
 | | ... | *Example:*
 | | ...
-| | ... | \| Initialize L2 xconnect for 1 Memif in 3-node circular topology \|
+| | ... | \| Initialize L2 xconnect for 1 memif pairs in 3-node circular \
+| | ... | topology \|
 | | ...
 | | Set Interface State | ${dut1} | ${dut1_if1} | up
 | | Set Interface State | ${dut1} | ${dut1_if2} | up
 | | | ${prev_index}= | Evaluate | ${number}-1
 | | | Set up memif interfaces on DUT node | ${dut1}
 | | | ... | ${sock1} | ${sock2} | ${number} | dut1-memif-${number}-if1
-| | | ... | dut1-memif-${number}-if2 | ${rxq} | ${rxq}
+| | | ... | dut1-memif-${number}-if2 | ${rxq_count_int} | ${rxq_count_int}
 | | | ${dut1_xconnect_if1}= | Set Variable If | ${number}==1 | ${dut1_if1}
 | | | ... | ${dut1-memif-${prev_index}-if2}
 | | | Configure L2XC | ${dut1} | ${dut1_xconnect_if1}
 | | | ${sock2}= | Set Variable | memif-DUT2_VNF
 | | | Set up memif interfaces on DUT node | ${dut2}
 | | | ... | ${sock1} | ${sock2} | ${number} | dut2-memif-${number}-if1
-| | | ... | dut2-memif-${number}-if2 | ${rxq} | ${rxq}
+| | | ... | dut2-memif-${number}-if2 | ${rxq_count_int} | ${rxq_count_int}
 | | | ${dut2_xconnect_if1}= | Set Variable If | ${number}==1 | ${dut2_if1}
 | | | ... | ${dut2-memif-${prev_index}-if2}
 | | | Configure L2XC | ${dut2} | ${dut2_xconnect_if1}
 | | All Vpp Interfaces Ready Wait | ${nodes}
 | | Show Memif on all DUTs | ${nodes}
 
-| Initialize L2 Bridge Domain for '${nr}' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| Initialize L2 Bridge Domain for '${nr}' memif pairs in 3-node circular topology
 | | [Documentation]
 | | ... | Create pairs of Memif interfaces on all defined VPP nodes. Put each
 | | ... | Memif interface to separate L2 bridge domain with one physical or
 | | | ${sock2}= | Set Variable | memif-DUT1_VNF
 | | | Set up memif interfaces on DUT node | ${dut1}
 | | | ... | ${sock1} | ${sock2} | ${number} | dut1-memif-${number}-if1
-| | | ... | dut1-memif-${number}-if2 | ${rxq} | ${rxq}
+| | | ... | dut1-memif-${number}-if2 | ${rxq_count_int} | ${rxq_count_int}
 | | | ${bd_id2}= | Evaluate | ${number}+1
 | | | Add interface to bridge domain | ${dut1}
 | | | ... | ${dut1-memif-${number}-if1} | ${number}
 | | | ${sock2}= | Set Variable | memif-DUT2_VNF
 | | | Set up memif interfaces on DUT node | ${dut2}
 | | | ... | ${sock1} | ${sock2} | ${number} | dut2-memif-${number}-if1
-| | | ... | dut2-memif-${number}-if2 | ${rxq} | ${rxq}
+| | | ... | dut2-memif-${number}-if2 | ${rxq_count_int} | ${rxq_count_int}
 | | | Add interface to bridge domain | ${dut2}
 | | | ... | ${dut2-memif-${number}-if1} | ${number}
 | | | Add interface to bridge domain | ${dut2}
 | | ... | connect Memif interface with one physical interface.
 | | ...
 | | ... | *Arguments:*
-| | ... | - ${rxq} - Number of Memif RX queues. Type: integer
 | | ... | - ${number} - Memif ID. Type: integer
 | | ...
 | | ... | *Note:*
 | | ... | Socket paths for Memif are defined in following format:
 | | ... | - /tmp/memif-DUT1_VNF${number}-${sid}
 | | ...
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
 | | ... | *Example:*
 | | ...
 | | ... | \| Initialize L2 xconnect for single memif in 3-node circular \
-| | ... | topology \| 1 \| 1 \|
+| | ... | topology \| 1 \|
 | | ...
-| | [Arguments] | ${rxq}=${1} | ${number}=${1}
+| | [Arguments] | ${number}=${1}
 | | ${sock}= | Set Variable | memif-DUT1_VNF
 | | Set up single memif interface on DUT node | ${dut1} | ${sock}
-| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq} | ${rxq}
+| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
 | | Configure L2XC | ${dut1} | ${dut1_if1} | ${dut1-memif-${number}-if1}
 | | ${sock}= | Set Variable | memif-DUT2_VNF
 | | Set up single memif interface on DUT node | ${dut2} | ${sock}
-| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq} | ${rxq}
+| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
 | | Configure L2XC | ${dut2} | ${dut2_if2} | ${dut2-memif-${number}-if1}
 | | All Vpp Interfaces Ready Wait | ${nodes}
 | | Show Memif on all DUTs | ${nodes}
 | | ... | interface to separate L2 bridge domain with one physical interface.
 | | ...
 | | ... | *Arguments:*
-| | ... | - ${rxq} - Number of Memif RX queues. Type: integer
 | | ... | - ${number} - Memif ID. Type: integer
 | | ...
 | | ... | *Note:*
 | | ... | Socket paths for Memif are defined in following format:
 | | ... | - /tmp/memif-DUT1_VNF${number}-${sid}
 | | ...
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
 | | ... | *Example:*
 | | ...
 | | ... | \| Initialize L2 Bridge Domain for single memif in 3-node circular \
-| | ... | topology \| 1 \| 1 \|
+| | ... | topology \| 1 \|
 | | ...
-| | [Arguments] | ${rxq}=${1} | ${number}=${1}
+| | [Arguments] | ${number}=${1}
 | | ${sock}= | Set Variable | memif-DUT1_VNF
 | | Set up single memif interface on DUT node | ${dut1} | ${sock}
-| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq} | ${rxq}
+| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
 | | Add interface to bridge domain | ${dut1} | ${dut1_if1} | ${number}
 | | Add interface to bridge domain | ${dut1} | ${dut1-memif-${number}-if1}
 | | ... | ${number}
 | | ${sock}= | Set Variable | memif-DUT2_VNF
 | | Set up single memif interface on DUT node | ${dut2} | ${sock}
-| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq} | ${rxq}
+| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
 | | Add interface to bridge domain | ${dut2} | ${dut2_if2} | ${number}
 | | Add interface to bridge domain | ${dut2} | ${dut2-memif-${number}-if1}
 | | ... | ${number}
index b3e10dc..d0bd929 100644 (file)
 | | ... | mTnC, where m=logical_core_count and n=physical_core_count.
 | | ...
 | | ... | *Arguments:*
-| | ... | - cpu_cnt - Number of physical cores to use. Type: integer
+| | ... | - phy_cores - Number of physical cores to use. Type: integer
 | | ... | - rx_queues - Number of RX queues. Type: integer
 | | ...
 | | ... | *Example:*
 | | ...
 | | ... | \| Add worker threads and rxqueues to all DUTs \| ${1} \| ${1} \|
 | | ...
-| | [Arguments] | ${cpu_cnt} | ${rx_queues}
+| | [Arguments] | ${phy_cores} | ${rx_queues}=${None}
 | | ...
-| | ${cpu_count_int} | Convert to Integer | ${cpu_cnt}
-| | ${thr_count_int} | Convert to Integer | ${cpu_cnt}
+| | ${cpu_count_int} | Convert to Integer | ${phy_cores}
+| | ${thr_count_int} | Convert to Integer | ${phy_cores}
 | | ${duts}= | Get Matches | ${nodes} | DUT*
 | | :FOR | ${dut} | IN | @{duts}
 | | | ${numa}= | Get interfaces numa node | ${nodes['${dut}']}
 | | | ... | skip_cnt=${1} | cpu_cnt=${1}
 | | | ${cpu_wt}= | 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}
+| | | ... | Evaluate | int(${cpu_count_int}*2)
+| | | ... | ELSE | Set variable | ${thr_count_int}
+| | | ${rxq_count_int}= | Run keyword if | ${rx_queues}
+| | | ... | Set variable | ${rx_queues}
+| | | ... | ELSE | Evaluate | int(${thr_count_int}/2)
+| | | ${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 | ${dut}.Add CPU Corelist Workers | ${cpu_wt}
-| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${rx_queues}
-| | | ${thr_count_int}= | Run keyword if | ${smt_used} |
-| | | ... | Evaluate | int(${cpu_count_int}*2) | ELSE | Set variable
-| | | ... | ${thr_count_int}
+| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${rxq_count_int}
 | | | Run keyword if | ${thr_count_int} > 1
 | | | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD
 | | | Set Tags | ${thr_count_int}T${cpu_count_int}C
-
-# FIXME: Remove the keyword after refactor of suites. Currently kept for
-# backward compatibility only.
-| Add '${m}' worker threads and '${n}' rxqueues in 3-node single-link circular topology
-| | [Documentation] | Setup M worker threads and N rxqueues in vpp startup\
-| | ... | configuration on all DUTs in 3-node single-link topology.
-| | ...
-| | Add worker threads and rxqueues to all DUTs | ${m} | ${n}
+| | Set Test Variable | ${smt_used}
+| | Set Test Variable | ${thr_count_int}
+| | Set Test Variable | ${rxq_count_int}
 
 | Add no multi seg to all DUTs
 | | [Documentation] | Add No Multi Seg to VPP startup configuration to all DUTs.
 | | [Arguments] | ${count}
 | | ${duts}= | Get Matches | ${nodes} | DUT*
 | | :FOR | ${dut} | IN | @{duts}
-| | | Run keyword | ${dut}.Add DPDK Cryptodev | ${count}
+| | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']}
+| | | ${thr_count_int}= | Run keyword if | ${smt_used}
+| | | ... | Evaluate | int(${count}*2)
+| | | ... | ELSE | Set variable | ${count}
+| | | Run keyword | ${dut}.Add DPDK Cryptodev | ${thr_count_int}
 
 | Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
 | | [Documentation] | Add required number of SW crypto devices of given type
 | | ... | topology \| aesni-mb \| ${2} \|
 | | ...
 | | [Arguments] | ${sw_pmd_type} | ${count}
+| | ${smt_used}= | Is SMT enabled | ${nodes['DUT1']['cpuinfo']}
+| | ${thr_count_int}= | Run keyword if | ${smt_used}
+| | ... | Evaluate | int(${count}*2)
+| | ... | ELSE | Set variable | ${count}
 | | ${socket_id}= | Get Interface Numa Node | ${nodes['DUT1']} | ${dut1_if2}
 | | Run keyword | DUT1.Add DPDK SW Cryptodev | ${sw_pmd_type} | ${socket_id}
-| | ... | ${count}
+| | ... | ${thr_count_int}
+| | ${smt_used}= | Is SMT enabled | ${nodes['DUT2']['cpuinfo']}
+| | ${thr_count_int}= | Run keyword if | ${smt_used}
+| | ... | Evaluate | int(${count}*2)
+| | ... | ELSE | Set variable | ${count}
 | | ${socket_id}= | Get Interface Numa Node | ${nodes['DUT2']} | ${dut2_if1}
 | | Run keyword | DUT2.Add DPDK SW Cryptodev | ${sw_pmd_type} | ${socket_id}
-| | ... | ${count}
+| | ... | ${thr_count_int}
 
 | Apply startup configuration on all VPP DUTs
 | | [Documentation] | Write startup configuration and restart VPP on all DUTs.
index 3d8236a..1a8162c 100644 (file)
@@ -31,7 +31,9 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
-| Documentation |  *Raw results L2BD test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2BD test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ... | with single links between nodes.
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2bdbasemaclrn-eth-2memif-1lxc
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 Bridge Domain for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 Bridge Domain for '1' memif pairs in 3-node circular topology
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
-| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc01-64B-1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
-| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc02-1518B-1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
-| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc03-9000B-1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
-| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
+| tc04-IMIX-1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
-| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc05-64B-2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
-| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc06-1518B-2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
-| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc07-9000B-2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
-| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
+| tc08-IMIX-2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
-| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc09-64B-4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
-| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc10-1518B-4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
-| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc11-9000B-4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
-| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
+| tc12-IMIX-4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
 | | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index f7488d5..5e99e27 100644 (file)
@@ -32,6 +32,8 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *RFC2544: Pkt throughput L2BD test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with Memif
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| Local template
+| | [Documentation]
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Set Variable If
 | | ${binary_min}= | Set Variable | ${min_rate}
 | | ${binary_max}= | Set Variable | ${max_rate}
 | | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
-| | Add PCI Devices To DUTs In 3-node Single Link Topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
+| | Add PCI devices to all DUTs
 | | Run Keyword If | ${get_framesize} < ${1522} | Add No Multi Seg to all DUTs
 | | Apply startup configuration on all VPP DUTs
-| | Initialize L2 Bridge Domain for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | Initialize L2 Bridge Domain for '1' memif pairs in 3-node circular topology
 | | Run Keyword If | '${search_type}' == 'NDR'
 | | ... | Find NDR using binary search and pps
 | | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
 
 | tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
 
 | tc03-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
 
 | tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
 
 | tc05-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
 
 | tc06-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
 
 | tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
 
 | tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 2C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
 
 | tc09-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
 
 | tc10-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
 
 | tc11-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 2C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
 
 | tc12-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 2C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
index 164af1a..8eb1a7b 100644 (file)
@@ -32,7 +32,7 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
-| Test Template | Check RR for l2xcbase-eth-1memif-1dcr
+| Test Template | Local template
 | ...
 | Documentation |  *Raw results L2XC test cases*
 | ...
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2xcbase-eth-1memif-1dcr
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add single PCI device to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
 | | And Initialize L2 xconnect for single memif in 3-node circular topology
-| | ... | ${rxq}
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 1C
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 1C
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
 | tc03-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 1C
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 2C
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 2C
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc07-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 2C
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 4C
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 4C
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc11-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 4C
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 91350e4..5cece02 100644 (file)
@@ -33,7 +33,7 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
-| Test Template | Find NDRPDR for l2xcbase-eth-1memif-1dcr
+| Test Template | Local template
 | ...
 | Documentation | *RFC2544: Pkt throughput L2XC test cases*
 | ...
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Find NDRPDR for l2xcbase-eth-1memif-1dcr
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Find ${search_type} for ${framesize} frames using binary search\
-| | ... | start at 10GE linerate, step 50kpps.
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq} | ${search_type}
-| | ... | ${min_rate}=${50000}
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${binary_min}= | Set Variable | ${min_rate}
 | | ${binary_max}= | Set Variable | ${max_rate}
 | | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add single PCI device to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
 | | And Initialize L2 xconnect for single memif in 3-node circular topology
-| | ... | ${rxq}
 | | Then Run Keyword If | '${search_type}' == 'NDR'
 | | ... | Find NDR using binary search and pps
 | | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | framesize=${64} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
 
 | tc02-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC
-| | framesize=${64} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
 
 | tc03-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | framesize=${1518} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
 
 | tc04-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC
-| | framesize=${1518} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
 
 | tc05-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 9000B | 1C | NDRDISC
-| | framesize=${9000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${1} | search_type=NDR
 
 | tc06-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 9000B | 1C | PDRDISC
-| | framesize=${9000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${1} | search_type=PDR
 
 | tc07-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
 
 | tc08-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
 
 | tc09-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | framesize=${64} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
 
 | tc10-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC
-| | framesize=${64} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
 
 | tc11-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 2C | NDRDISC
-| | framesize=${1518} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
 
 | tc12-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 2C | PDRDISC
-| | framesize=${1518} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
 
 | tc13-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 9000B | 2C | NDRDISC
-| | framesize=${9000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${2} | search_type=NDR
 
 | tc14-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 9000B | 2C | PDRDISC
-| | framesize=${9000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${2} | search_type=PDR
 
 | tc15-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
 
 | tc16-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
 
 | tc17-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 4C | NDRDISC
-| | framesize=${64} |  wt=4 | rxq=2 | search_type=NDR
+| | framesize=${64} | phy_cores=${4} | search_type=NDR
 
 | tc18-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 4C | PDRDISC
-| | framesize=${64} |  wt=4 | rxq=2 | search_type=PDR
+| | framesize=${64} | phy_cores=${4} | search_type=PDR
 
 | tc19-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 4C | NDRDISC
-| | framesize=${1518} |  wt=4 | rxq=2| search_type=NDR
+| | framesize=${1518} | phy_cores=${4} | search_type=NDR
 
 | tc20-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 4C | PDRDISC
-| | framesize=${1518} |  wt=4 | rxq=2 | search_type=PDR
+| | framesize=${1518} | phy_cores=${4} | search_type=PDR
 
 | tc21-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 9000B | 4C | NDRDISC
-| | framesize=${9000} |  wt=4 | rxq=2 | search_type=NDR
+| | framesize=${9000} | phy_cores=${4} | search_type=NDR
 
 | tc22-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 9000B | 4C | PDRDISC
-| | framesize=${9000} |  wt=4 | rxq=2 | search_type=PDR
+| | framesize=${9000} | phy_cores=${4} | search_type=PDR
 
 | tc23-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C | NDRDISC
-| | framesize=IMIX_v4_1 |  wt=4 | rxq=2 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${4} | search_type=NDR
 
 | tc24-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${4} | search_type=PDR
index edb5112..1febc9a 100644 (file)
@@ -31,7 +31,9 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
-| Documentation |  *Raw results L2XC test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2XC test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ... | with single links between nodes.
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1dcr
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
 | tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index cd1adab..044f09d 100644 (file)
@@ -32,6 +32,8 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *RFC2544: Pkt throughput L2XC test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 
 *** Keywords ***
 | L2 Cross Connect over Memif Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| | [Documentation]
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Set Variable If
 | | ${binary_min}= | Set Variable | ${min_rate}
 | | ${binary_max}= | Set Variable | ${max_rate}
 | | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
-| | Add PCI Devices To DUTs In 3-node Single Link Topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
+| | Add PCI devices to all DUTs
 | | Run Keyword If | ${get_framesize} < ${1522} | Add No Multi Seg to all DUTs
 | | Apply startup configuration on all VPP DUTs
-| | Initialize L2 xconnect for '${container_count}' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | Initialize L2 xconnect for '${container_count}' memif pairs in 3-node circular topology
 | | Run Keyword If | '${search_type}' == 'NDR'
 | | ... | Find NDR using binary search and pps
 | | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
 
 | tc02-64B-1t1c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
 
 | tc03-IMIX-1t1c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
 
 | tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
 
 | tc05-1518B-1t1c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
 
 | tc06-1518B-1t1c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
 
 | tc07-64B-2t2c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
 
 | tc08-64B-2t2c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
 
 | tc09-IMIX-2t2c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
 
 | tc10-IMIX-2t2c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
 
 | tc11-1518B-2t2c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
 
 | tc12-1518B-2t2c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
index 7d4c5f7..b01acfc 100644 (file)
@@ -31,7 +31,9 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
-| Documentation |  *Raw results L2XC test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2XC test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ... | with single links between nodes.
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1lxc
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
 | tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 046f5a8..021c61b 100644 (file)
@@ -32,6 +32,8 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *RFC2544: Pkt throughput L2XC test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 
 *** Keywords ***
 | L2 Cross Connect over Memif Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| | [Documentation]
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Set Variable If
 | | ${binary_min}= | Set Variable | ${min_rate}
 | | ${binary_max}= | Set Variable | ${max_rate}
 | | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
-| | Add PCI Devices To DUTs In 3-node Single Link Topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
+| | Add PCI devices to all DUTs
 | | Run Keyword If | ${get_framesize} < ${1522} | Add No Multi Seg to all DUTs
 | | Apply startup configuration on all VPP DUTs
-| | Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
 | | Run Keyword If | '${search_type}' == 'NDR'
 | | ... | Find NDR using binary search and pps
 | | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
 
 | tc02-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
 
 | tc03-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
 
 | tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
 
 | tc05-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
 
 | tc06-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
 
 | tc07-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
 
 | tc08-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
 
 | tc09-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
 
 | tc10-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
 
 | tc11-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
 
 | tc12-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
index 0c12a5c..f486d79 100644 (file)
@@ -31,7 +31,9 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
-| Documentation |  *Raw results L2BD test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2BD test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ... | with single links between nodes.
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2bdbasemaclrn-eth-2memif-1lxc
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 Bridge Domain for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 Bridge Domain for '1' memif pairs in 3-node circular topology
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
 | tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index f2559b6..0587659 100644 (file)
@@ -31,7 +31,7 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
-| Test Template | Check RR for l2xcbase-eth-1memif-1dcr
+| Test Template | Local template
 | ...
 | Documentation |  *Raw results L2XC test cases*
 | ...
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2xcbase-eth-1memif-1dcr
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add single PCI device to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
 | | And Initialize L2 xconnect for single memif in 3-node circular topology
-| | ... | ${rxq}
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 1C
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 1C
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
 | tc03-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 1C
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 2C
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 2C
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc07-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 2C
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 4C
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 4C
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc11-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 4C
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 386260c..d62e677 100644 (file)
@@ -32,7 +32,7 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
-| Test Template | Find NDRPDR for l2xcbase-eth-1memif-1dcr
+| Test Template | Local template
 | ...
 | Documentation |  *Raw results L2XC test cases*
 | ...
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Find NDRPDR for l2xcbase-eth-1memif-1dcr
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Find ${search_type} for ${framesize} frames using binary search\
-| | ... | start at 10GE linerate, step 50kpps.
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq} | ${search_type}
-| | ... | ${min_rate}=${50000}
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${binary_min}= | Set Variable | ${min_rate}
 | | ${binary_max}= | Set Variable | ${max_rate}
 | | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add single PCI device to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
 | | And Initialize L2 xconnect for single memif in 3-node circular topology
-| | ... | ${rxq}
 | | Then Run Keyword If | '${search_type}' == 'NDR'
 | | ... | Find NDR using binary search and pps
 | | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | framesize=${64} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
 
 | tc02-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC
-| | framesize=${64} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
 
 | tc03-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | framesize=${1518} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
 
 | tc04-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC
-| | framesize=${1518} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
 
 | tc05-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 9000B | 1C | NDRDISC
-| | framesize=${9000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${1} | search_type=NDR
 
 | tc06-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 9000B | 1C | PDRDISC
-| | framesize=${9000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${1} | search_type=PDR
 
 | tc07-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
 
 | tc08-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
 
 | tc09-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | framesize=${64} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
 
 | tc10-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC
-| | framesize=${64} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
 
 | tc11-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 2C | NDRDISC
-| | framesize=${1518} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
 
 | tc12-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 2C | PDRDISC
-| | framesize=${1518} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
 
 | tc13-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 9000B | 2C | NDRDISC
-| | framesize=${9000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${2} | search_type=NDR
 
 | tc14-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 9000B | 2C | PDRDISC
-| | framesize=${9000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${2} | search_type=PDR
 
 | tc15-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
 
 | tc16-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
 
 | tc17-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 4C | NDRDISC
-| | framesize=${64} |  wt=4 | rxq=2 | search_type=NDR
+| | framesize=${64} |  phy_cores=${4} | search_type=NDR
 
 | tc18-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 64B | 4C | PDRDISC
-| | framesize=${64} |  wt=4 | rxq=2 | search_type=PDR
+| | framesize=${64} |  phy_cores=${4} | search_type=PDR
 
 | tc19-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 4C | NDRDISC
-| | framesize=${1518} |  wt=4 | rxq=2 | search_type=NDR
+| | framesize=${1518} |  phy_cores=${4} | search_type=NDR
 
 | tc20-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 1518B | 4C | PDRDISC
-| | framesize=${1518} |  wt=4 | rxq=2 | search_type=PDR
+| | framesize=${1518} |  phy_cores=${4} | search_type=PDR
 
 | tc21-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
 | | [Tags] | 9000B | 4C | NDRDISC
-| | framesize=${9000} |  wt=4 | rxq=2 | search_type=NDR
+| | framesize=${9000} |  phy_cores=${4} | search_type=NDR
 
 | tc22-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
 | | [Tags] | 9000B | 4C | PDRDISC
-| | framesize=${9000} |  wt=4 | rxq=2 | search_type=PDR
+| | framesize=${9000} |  phy_cores=${4} | search_type=PDR
 
 | tc23-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C | NDRDISC
-| | framesize=IMIX_v4_1 |  wt=4 | rxq=2 | search_type=NDR
+| | framesize=IMIX_v4_1 |  phy_cores=${4} | search_type=NDR
 
 | tc24-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${4} | search_type=PDR
index 2f32cd2..2a0a96b 100644 (file)
@@ -31,7 +31,9 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
-| Documentation |  *Raw results L2XC test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2XC test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ... | with single links between nodes.
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1dcr
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
 | tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 6df3b65..34340db 100644 (file)
@@ -31,7 +31,9 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
-| Documentation |  *Raw results L2XC test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2XC test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ... | with single links between nodes.
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1lxc
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
 | tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 256dedc..c4a4b2e 100644 (file)
@@ -31,7 +31,9 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
-| Documentation |  *Raw results L2BD test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2BD test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ... | with single links between nodes.
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2bdbasemaclrn-eth-2memif-1lxc
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
 | | ${max_rate}= | Set Variable If
 | | ... | ${max_rate} > ${s_18.75Mpps} | ${s_18.75Mpps} | ${max_rate}
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 Bridge Domain for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 Bridge Domain for '1' memif pairs in 3-node circular topology
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
 | tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 42a5639..df95686 100644 (file)
@@ -31,6 +31,8 @@
 | ...
 | Test Teardown | Tear down performance mrr test
 | ...
+| Test Template | Local template
+| ...
 | Documentation |  *Raw results L2XC test cases*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${container_cpus}= | ${5}
 
 *** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1lxc
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
 | | ${max_rate}= | Set Variable If
 | | ... | ${max_rate} > ${s_18.75Mpps} | ${s_18.75Mpps} | ${max_rate}
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
 | | And Run Keyword If | ${get_framesize} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
 | | Then Traffic should pass with maximum rate
 | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
 
 *** Test Cases ***
 | tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
 
 | tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
 | | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
 | | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 3386ff4..54bd64b 100644 (file)
 | Suite Teardown | Tear down 3-node performance topology
 | ...
 | Test Setup | Set up performance test
+| ...
 | Test Teardown | Tear down performance mrr test
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Check RR for IPv4 routing with IPSec HW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_24.5G}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
 | | ... | Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index a2b7e98..fba7baf 100644 (file)
@@ -28,6 +28,8 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure NDR or PDR for ${framesize} by bisecting between\
-| | ... | ${min_rate} and computed max rate, using trial loss rate measurements.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
 
 | tc02-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
 
 | tc03-1518B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
 
 | tc04-1518B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
 
 | tc05-IMIX-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
 
 | tc06-IMIX-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
 
 | tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
 
 | tc08-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
index 3525bb3..7f6218e 100644 (file)
 | Suite Teardown | Tear down 3-node performance topology
 | ...
 | Test Setup | Set up performance test
+| ...
 | Test Teardown | Tear down performance mrr test
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Check RR for IPv4 routing with IPSec HW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_24.5G}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
 | | ... | Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 1e52f8c..221f5b8 100644 (file)
@@ -82,7 +82,6 @@
 | | ...
 | | [Tags] | 64B | 1C | NDRDISC
 | | ...
-| | # FIXME: Move repeated lines into a keyword.
 | | ${framesize}= | Set Variable | ${64}
 | | ${min_rate}= | Set Variable | ${50000}
 | | ${max_rate}= | Set Variable | ${s_18.75Mpps}
@@ -91,7 +90,7 @@
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
index 0498eff..0733a43 100644 (file)
@@ -82,7 +82,6 @@
 | | ...
 | | [Tags] | 64B | 1C | NDRDISC
 | | ...
-| | # FIXME: Move repeated lines into a keyword.
 | | ${framesize}= | Set Variable | ${64}
 | | ${min_rate}= | Set Variable | ${50000}
 | | ${max_rate}= | Set Variable | ${s_18.75Mpps}
@@ -91,7 +90,7 @@
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
index cf03429..2df4bd7 100644 (file)
@@ -82,7 +82,6 @@
 | | ...
 | | [Tags] | 64B | 1C | NDRDISC
 | | ...
-| | # FIXME: Move repeated lines into a keyword.
 | | ${framesize}= | Set Variable | ${64}
 | | ${min_rate}= | Set Variable | ${50000}
 | | ${max_rate}= | Set Variable | ${s_18.75Mpps}
@@ -91,7 +90,7 @@
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
index 521df05..6a6ce84 100644 (file)
 | Suite Teardown | Tear down 3-node performance topology
 | ...
 | Test Setup | Set up performance test
+| ...
 | Test Teardown | Tear down performance mrr test
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Check RR for IPv4 routing with IPSec SW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_24.5G}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_gcm | ${${wt}}
+| | ... | aesni_gcm | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index a588aa2..78c3881 100644 (file)
@@ -28,6 +28,8 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure NDR or PDR for ${framesize} by bisecting between\
-| | ... | ${min_rate} and computed max rate, using trial loss rate measurements.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
-| | ...
-| | # Test Variables required for test teardown
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
 | | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_gcm | ${${wt}}
+| | ... | aesni_gcm | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
 
 | tc02-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
 
 | tc03-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
 
 | tc04-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
 
 | tc05-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
 
 | tc06-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
 
 | tc07-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
 
 | tc08-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
index 9a9f465..22a736b 100644 (file)
 | Suite Teardown | Tear down 3-node performance topology
 | ...
 | Test Setup | Set up performance test
+| ...
 | Test Teardown | Tear down performance mrr test
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Check RR for IPv4 routing with IPSec SW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_24.5G}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
 | | ... | Add no multi seg to all DUTs
 | | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_mb | ${${wt}}
+| | ... | aesni_mb | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 150aa33..b380afc 100644 (file)
@@ -28,6 +28,8 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure NDR or PDR for ${framesize} by bisecting between\
-| | ... | ${min_rate} and computed max rate, using trial loss rate measurements.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
 | | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_mb | ${${wt}}
+| | ... | aesni_mb | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
 
 | tc02-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
 
 | tc03-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
 
 | tc04-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
 
 | tc05-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
 
 | tc06-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
 
 | tc07-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
 
 | tc08-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
index 7276e2e..74669e7 100644 (file)
@@ -28,6 +28,8 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure NDR or PDR for ${framesize} by bisecting between\
-| | ... | ${min_rate} and computed max rate, using trial loss rate measurements.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
 | | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_gcm | ${${wt}}
+| | ... | aesni_gcm | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
 
 | tc02-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
 
 | tc03-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
 
 | tc04-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
 
 | tc05-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
 
 | tc06-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
 
 | tc07-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
 
 | tc08-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
index 2447fbf..f8d6953 100644 (file)
@@ -28,6 +28,8 @@
 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
 | ... | ${framesize} | ${traffic_profile}
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure NDR or PDR for ${framesize} by bisecting between\
-| | ... | ${min_rate} and computed max rate, using trial loss rate measurements.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | Set Test Variable | ${min_rate}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
 | | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_mb | ${${wt}}
+| | ... | aesni_mb | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
 
 | tc02-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
 
 | tc03-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
 
 | tc04-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
 
 | tc05-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
 
 | tc06-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
 | | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
 
 | tc07-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
 | | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
 
 | tc08-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
 | | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
index 9bdb1c5..d671121 100644 (file)
 | Suite Teardown | Tear down 3-node performance topology
 | ...
 | Test Setup | Set up performance test
+| ...
 | Test Teardown | Tear down performance mrr test
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Check RR for IPv4 routing with IPSec HW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_24.5G}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
 | | ... | Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 5488e9b..e345557 100644 (file)
@@ -82,7 +82,6 @@
 | | ...
 | | [Tags] | 64B | 1C | NDRDISC
 | | ...
-| | # FIXME: Move repeated lines into a keyword.
 | | ${framesize}= | Set Variable | ${64}
 | | ${min_rate}= | Set Variable | ${50000}
 | | ${max_rate}= | Set Variable | ${s_18.75Mpps}
@@ -91,7 +90,7 @@
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
index f68e27d..3561b9a 100644 (file)
 | Suite Teardown | Tear down 3-node performance topology
 | ...
 | Test Setup | Set up performance test
+| ...
 | Test Teardown | Tear down performance mrr test
 | ...
+| Test Template | Local template
+| ...
 | Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
 | ...
 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
 | ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
 
 *** Keywords ***
-| Check RR for IPv4 routing with IPSec HW cryptodev
+| Local template
 | | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
 | | ... | trial throughput test.
 | | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
 | | ...
-| | # Test Variables required for test teardown
 | | Set Test Variable | ${framesize}
 | | ${get_framesize}= | Get Frame Size | ${framesize}
 | | ${max_rate}= | Calculate pps | ${s_24.5G}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
 | | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
 | | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
 | | ... | Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | And Add DPDK dev default TXD to all DUTs | 2048
 | | And Apply startup configuration on all VPP DUTs
 
 *** Test Cases ***
 | tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
 
 | tc02-1518B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
 
 | tc04-IMIX-1t1c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
 
 | tc05-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
 
 | tc06-1518B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
 
 | tc08-IMIX-2t2c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
 
 | tc09-64B-4t4c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
 | | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
 
 | tc10-1518B-4t4c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
 | | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
 
 | tc12-IMIX-4t4c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
 | | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
index 312c9c5..9a3048c 100644 (file)
@@ -82,7 +82,6 @@
 | | ...
 | | [Tags] | 64B | 1C | NDRDISC
 | | ...
-| | # FIXME: Move repeated lines into a keyword.
 | | ${framesize}= | Set Variable | ${64}
 | | ${min_rate}= | Set Variable | ${50000}
 | | ${max_rate}= | Set Variable | ${s_18.75Mpps}
@@ -91,7 +90,7 @@
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES CBC 128
 | | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${2}
index 473f85c..0022288 100644 (file)
@@ -82,7 +82,6 @@
 | | ...
 | | [Tags] | 64B | 1C | NDRDISC
 | | ...
-| | # FIXME: Move repeated lines into a keyword.
 | | ${framesize}= | Set Variable | ${64}
 | | ${min_rate}= | Set Variable | ${50000}
 | | ${max_rate}= | Set Variable | ${s_18.75Mpps}
@@ -91,7 +90,7 @@
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add no multi seg to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
 | | And Add PCI devices to all DUTs
 | | And Add cryptodev to all DUTs | ${1}
 | | And Add DPDK dev default RXD to all DUTs | 2048
 | | ${threshold}= | Set Variable | ${min_rate}
 | | ${encr_alg}= | Crypto Alg AES GCM 128
 | | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add