{txqueuesconfig}
{pciconfig}
{rssconfig}
+{nomultiseg}
}}
"""
# End VPP configuration template.
logger.debug('Setting hostname {} max_tx_queues config to {}'.\
format(hostname, max_tx_queues_config))
+ def add_no_multi_seg_config(self, node):
+ """Add No Multi Seg configuration for node.
+
+ :param node: DUT node.
+ :type node: dict
+ :return: nothing
+ """
+ if node['type'] != NodeType.DUT:
+ raise ValueError('Node type is not a DUT')
+ hostname = Topology.get_node_hostname(node)
+ if not hostname in self._nodeconfig:
+ self._nodeconfig[hostname] = {}
+ if not 'no_multi_seg_config' in self._nodeconfig[hostname]:
+ self._nodeconfig[hostname]['no_multi_seg_config'] = []
+ self._nodeconfig[hostname]['no_multi_seg_config'].append(
+ "no-multi-seg")
+ logger.debug('Setting hostname {} config with {}'.\
+ format(hostname, "no-multi-seg"))
+
def remove_all_pci_devices(self, node):
"""Remove PCI device configuration from node.
logger.debug('Clearing Max TX Queues config for hostname {}.'.\
format(hostname))
+ def remove_no_multi_seg_config(self, node):
+ """Remove No Multi Seg configuration from node.
+
+ :param node: DUT node.
+ :type node: dict
+ :return: nothing
+ """
+ if node['type'] != NodeType.DUT:
+ raise ValueError('Node type is not a DUT')
+ hostname = Topology.get_node_hostname(node)
+ if hostname in self._nodeconfig:
+ self._nodeconfig[hostname]['no_multi_seg_config'] = []
+ logger.debug('Clearing No Multi Seg config for hostname {}.'.\
+ format(hostname))
+
def apply_config(self, node, waittime=5, retries=12):
"""Generate and apply VPP configuration for node.
heapsizeconfig = ""
rssconfig = ""
txqueuesconfig = ""
+ nomultiseg = ""
if hostname in self._nodeconfig:
cfg = self._nodeconfig[hostname]
txqueuesconfig = " " + "\n ".join(
cfg['max_tx_queues_config'])
+ if 'no_multi_seg_config' in cfg:
+ nomultiseg = " " + "\n ".join(cfg['no_multi_seg_config'])
+
vppconfig = VPP_CONFIG_TEMPLATE.format(cpuconfig=cpuconfig,
pciconfig=pciconfig,
socketmemconfig=socketmemconfig,
heapsizeconfig=heapsizeconfig,
rssconfig=rssconfig,
- txqueuesconfig=txqueuesconfig)
+ txqueuesconfig=txqueuesconfig,
+ nomultiseg = nomultiseg)
logger.debug('Writing VPP config to host {}: "{}"'.format(hostname,
vppconfig))
| | [Documentation] | Prepare all TGs before traffic scripts execution
| | All TGs Set Interface Default Driver | ${nodes}
-| Setup '${m}' worker threads and rss '${n}' without HTT on all DUTs
+| Add '${m}' worker threads and rss '${n}' without HTT to all DUTs
| | [Documentation] | Setup M worker threads without HTT and rss N in startup
-| | ... | configuration of VPP on all DUTs
+| | ... | configuration of VPP to all DUTs
| | ${cpu}= | Catenate | main-core | 0 | corelist-workers
| | ${cpu}= | Run Keyword If | '${m}' == '1' | Catenate | ${cpu} | 1
| | ... | ELSE IF | '${m}' == '2' | Catenate | ${cpu} | 1-2
| | ... | ELSE IF | '${m}' == '6' | Catenate | ${cpu} | 1-6
| | ... | ELSE | Fail | Not supported combination
| | ${rss}= | Catenate | rss | ${n}
-| | Setup worker threads and rss on all DUTs | ${cpu} | ${rss}
+| | Add worker threads and rss to all DUTs | ${cpu} | ${rss}
-| Setup '${m}' worker threads and rss '${n}' with HTT on all DUTs
+| Add '${m}' worker threads and rss '${n}' with HTT to all DUTs
| | [Documentation] | Setup M worker threads with HTT and rss N in startup
-| | ... | configuration of VPP on all DUTs
+| | ... | configuration of VPP to all DUTs
| | ${cpu}= | Catenate | main-core | 0 | corelist-workers
| | ${cpu}= | Run Keyword If | '${m}' == '2' | Catenate | ${cpu} | 1,10
| | ... | ELSE IF | '${m}' == '4' | Catenate | ${cpu} | 1-2,10-11
| | ... | ELSE IF | '${m}' == '8' | Catenate | ${cpu} | 1-4,10-13
| | ... | ELSE | Fail | Not supported combination
| | ${rss}= | Catenate | rss | ${n}
-| | Setup worker threads and rss on all DUTs | ${cpu} | ${rss}
+| | Add worker threads and rss to all DUTs | ${cpu} | ${rss}
-| Setup worker threads and rss on all DUTs
-| | [Documentation] | Setup worker threads and rss in startup configuration of
-| | ... | VPP on all DUTs
+| Add worker threads and rss to all DUTs
+| | [Documentation] | Setup worker threads and rss in VPP startup configuration
+| | ... | to all DUTs
+| | ...
+| | ... | *Arguments:*
+| | ... | - ${cpu} - CPU configuration. Type: string
+| | ... | - ${rss} - RSS configuration. Type: string
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Add worker threads and rss to all DUTs \| main-core 0 \
+| | ... | \| rss 2
| | [Arguments] | ${cpu} | ${rss}
| | ${duts}= | Get Matches | ${nodes} | DUT*
| | :FOR | ${dut} | IN | @{duts}
| | | Add CPU config | ${nodes['${dut}']}
| | | ... | ${cpu}
-| | | Add PCI device | ${nodes['${dut}']}
| | | Add RSS config | ${nodes['${dut}']}
| | | ... | ${rss}
-| | | Apply config | ${nodes['${dut}']}
-| Reset startup configuration of VPP on all DUTs
-| | [Documentation] | Reset startup configuration of VPP on all DUTs
-| | ${cpu}= | Catenate | main-core | 1
+| Add all PCI devices to all DUTs
+| | [Documentation] | Add all available PCI devices from topology file to VPP
+| | ... | startup configuration to all DUTs
+| | ${duts}= | Get Matches | ${nodes} | DUT*
+| | :FOR | ${dut} | IN | @{duts}
+| | | Add PCI device | ${nodes['${dut}']}
+
+| Add PCI device to DUT
+| | [Documentation] | Add PCI device to VPP startup configuration
+| | ... | to DUT specified as argument
+| | ...
+| | ... | *Arguments:*
+| | ... | - ${node} - DUT node. Type: dictionary
+| | ... | - ${pci_address} - PCI address. Type: string
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Add PCI device to DUT \| ${nodes['DUT1']} \
+| | ... | \| 0000:00:00.0
+| | [Arguments] | ${node} | ${pci_address}
+| | Add PCI device | ${node} | ${pci_address}
+
+| Add No Multi Seg to all DUTs
+| | [Documentation] | Add No Multi Seg to VPP startup configuration to all
+| | ... | DUTs
+| | ${duts}= | Get Matches | ${nodes} | DUT*
+| | :FOR | ${dut} | IN | @{duts}
+| | | Add No Multi Seg Config | ${nodes['${dut}']}
+
+| Add Max Tx Queues '${m}' to all DUTs
+| | [Documentation] | Add Max Tx Queues M to VPP startup configuration to all
+| | ... | DUTs
+| | ${queues}= | Catenate | max-tx-queues | ${m}
+| | ${duts}= | Get Matches | ${nodes} | DUT*
+| | :FOR | ${dut} | IN | @{duts}
+| | | Add Max Tx Queues Config | ${nodes['${dut}']} | ${queues}
+
+| Remove startup configuration of VPP from all DUTs
+| | [Documentation] | Remove VPP startup configuration from all DUTs
| | ${duts}= | Get Matches | ${nodes} | DUT*
| | :FOR | ${dut} | IN | @{duts}
| | | Remove All PCI Devices | ${nodes['${dut}']}
| | | Remove Socketmem Config | ${nodes['${dut}']}
| | | Remove Heapsize Config | ${nodes['${dut}']}
| | | Remove RSS Config | ${nodes['${dut}']}
-| | | Add CPU Config | ${nodes['${dut}']}
-| | | ... | ${cpu}
-| | | Add PCI Device | ${nodes['${dut}']}
-| | | Apply Config | ${nodes['${dut}']}
+| | | Remove Max Tx Queues Config | ${nodes['${dut}']}
+| | | Remove No Multi Seg Config | ${nodes['${dut}']}
+| Setup default startup configuration of VPP on all DUTs
+| | [Documentation] | Setup default startup configuration of VPP to all DUTs
+| | Remove startup configuration of VPP from all DUTs
+| | Add '1' worker threads and rss '1' without HTT to all DUTs
+| | Add all PCI devices to all DUTs
+| | Apply startup configuration on all VPP DUTs
+
+| Apply startup configuration on all VPP DUTs
+| | [Documentation] | Apply startup configuration of VPP and restart VPP on all
+| | ... | DUTs
+| | ${duts}= | Get Matches | ${nodes} | DUT*
+| | :FOR | ${dut} | IN | @{duts}
+| | | Apply Config | ${nodes['${dut}']}
| 3-node Performance Suite Setup
| | [Arguments] | ${topology_type}
-| | Reset startup configuration of VPP on all DUTs
+| | Setup default startup configuration of VPP on all DUTs
| | Update All Interface Data On All Nodes | ${nodes}
| | 3-node circular Topology Variables Setup
| | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2}
3-node Performance Suite Setup with DUT's NIC model
| | [Arguments] | ${topology_type} | ${nic_model}
-| | Reset startup configuration of VPP on all DUTs
+| | Setup default startup configuration of VPP on all DUTs
| | Update All Interface Data On All Nodes | ${nodes}
| | 3-node circular Topology Variables Setup with DUT interface model
| | ... | ${nic_model}
| ... | L2 | Intel-X520-DA2
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | *Throughput search suite (based on RFC2544).*
| ...
| ... | Test suite uses 3-node topology TG - DUT1 - DUT2 - TG, with one link
| Find NDR by using RFC2544 linear search and 64B frames through bridge domain in 3-node topology
| | [Documentation]
| | ... | Find throughput with non drop rate for 64B frames by using
-| | ... | linear search starting at 4.1Mpps, stepping down with step of 0.1Mpps
+| | ... | linear search starting at 5.0Mpps, stepping down with step of 0.1Mpps
| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
| | ${framesize}= | Set Variable | 64
-| | ${start_rate}= | Set Variable | 4100000
+| | ${start_rate}= | Set Variable | 5000000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-bridge
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-bridge
+| | ... | ${min_rate} | ${max_rate}
| Find NDR by using RFC2544 linear search and 1518B frames through bridge domain in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-bridge
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-bridge
+| | ... | ${min_rate} | ${max_rate}
| Find NDR by using RFC2544 linear search and 9000B frames through bridge domain in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
| | ... | ${step_rate} | 3-node-bridge
| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 64B frames through bridge domain in 3-node topology
| | [Documentation]
| | ... | Find throughput on 2 cores with non drop rate for 64B frames by using
-| | ... | linear search starting at 8.2Mpps, stepping down with step of 0.1Mpps
+| | ... | linear search starting at 9.0Mpps, stepping down with step of 0.1Mpps
| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
| | ${framesize}= | Set Variable | 64
-| | ${start_rate}= | Set Variable | 8200000
+| | ${start_rate}= | Set Variable | 9000000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-bridge
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-bridge
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 1518B frames through bridge domain in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-bridge
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-bridge
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 9000B frames through bridge domain in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-bridge
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-bridge
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 64B frames through bridge domain in 3-node topology
| | [Documentation]
| | ... | Find throughput on 4 cores and rss 2 with non drop rate for 64B
-| | ... | frames by using linear search starting at 9.8Mpps, stepping down
+| | ... | frames by using linear search starting at 13.2Mpps, stepping down
| | ... | with step of 0.1Mpps
| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
| | ${framesize}= | Set Variable | 64
-| | ${start_rate}= | Set Variable | 9800000
+| | ${start_rate}= | Set Variable | 13200000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-bridge
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-bridge
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 1518B frames through bridge domain in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-bridge
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-bridge
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 9000B frames through bridge domain in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-bridge
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-bridge
+| | ... | ${min_rate} | ${max_rate}
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+
*** Settings ***
| Resource | resources/libraries/robot/performance.robot
| Library | resources.libraries.python.topology.Topology
| ... | L3 | Intel-X520-DA2
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | *Throughput search suite (based on RFC2544).*
| ...
| ... | Test suite uses 3-node topology TG - DUT1 - DUT2 - TG, with one link
| Find NDR by using RFC2544 linear search and 64B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | ... | Find throughput with non drop rate for 64B frames by using
-| | ... | linear search starting at 4.1Mpps, stepping down with step of 0.1Mpps
+| | ... | linear search starting at 5.0Mpps, stepping down with step of 0.1Mpps
| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
| | ${framesize}= | Set Variable | 64
-| | ${start_rate}= | Set Variable | 4400000
+| | ${start_rate}= | Set Variable | 5000000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
| Find NDR by using RFC2544 linear search and 1518B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
| Find NDR by using RFC2544 linear search and 9000B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 64B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | ... | Find throughput on 2 cores with non drop rate for 64B frames by using
-| | ... | linear search starting at 8.8Mpps, stepping down with step of 0.1Mpps
+| | ... | linear search starting at 10Mpps, stepping down with step of 0.1Mpps
| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
| | ${framesize}= | Set Variable | 64
-| | ${start_rate}= | Set Variable | 8800000
+| | ${start_rate}= | Set Variable | 10000000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 1518B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 9000B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 64B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | ... | Find throughput on 4 cores and rss 2 with non drop rate for 64B
-| | ... | frames by using linear search starting at 9.8Mpps, stepping down with
+| | ... | frames by using linear search starting at 13Mpps, stepping down with
| | ... | step of 0.1Mpps
| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
| | ${framesize}= | Set Variable | 64
-| | ${start_rate}= | Set Variable | 9800000
+| | ${start_rate}= | Set Variable | 13000000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 1518B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 9000B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores by using RFC2544 binary search and 64B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
| | ${framesize}= | Set Variable | 64
| | ${binary_min}= | Set Variable | 6000000
-| | ${binary_max}= | Set Variable | 12000000
+| | ${binary_max}= | Set Variable | 14000000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
| | ${threshold}= | Set Variable | 5000
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
-| | ... | ${binary_max} | 3-node-IPv4
-| | ... | ${min_rate} | ${max_rate}
-| | ... | ${threshold}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
+| | ... | ${binary_max} | 3-node-IPv4
+| | ... | ${min_rate} | ${max_rate}
+| | ... | ${threshold}
| Find NDR with 4 cores and rss 2 by using RFC2544 binary search and 64B frames through IPv4 forwarding in 3-node topology
| | [Documentation]
| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
| | ${framesize}= | Set Variable | 64
| | ${binary_min}= | Set Variable | 6000000
-| | ${binary_max}= | Set Variable | 12000000
+| | ${binary_max}= | Set Variable | 14000000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
| | ${threshold}= | Set Variable | 5000
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
| | ... | ${binary_max} | 3-node-IPv4
| | ... | ${min_rate} | ${max_rate}
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+
*** Settings ***
| Resource | resources/libraries/robot/performance.robot
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | PERFTEST_LONG
| ... | L3 | Intel-X520-DA2
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | *Throughput search suite (based on RFC2544).*
| ...
| ... | Test suite uses 3-node topology TG - DUT1 - DUT2 - TG, with one link
| Find NDR by using RFC2544 linear search and 78B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | ... | Find throughput with non drop rate for 78B frames by using
-| | ... | linear search starting at 4.0Mpps, stepping down with step of 0.1Mpps
+| | ... | linear search starting at 5.0Mpps, stepping down with step of 0.1Mpps
| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
| | ${framesize}= | Set Variable | 78
-| | ${start_rate}= | Set Variable | 4000000
+| | ${start_rate}= | Set Variable | 5000000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
-| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | ${max_rate}= | Set Variable | 12755102
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
| Find NDR by using RFC2544 linear search and 1518B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
| Find NDR by using RFC2544 linear search and 9000B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 78B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | ... | Find throughput on 2 cores with non drop rate for 78B frames by using
-| | ... | linear search starting at 7.8Mpps, stepping down with step of 0.1Mpps
+| | ... | linear search starting at 9Mpps, stepping down with step of 0.1Mpps
| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
| | ${framesize}= | Set Variable | 78
-| | ${start_rate}= | Set Variable | 7800000
+| | ${start_rate}= | Set Variable | 9000000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
-| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | ${max_rate}= | Set Variable | 12755102
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 1518B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 9000B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 78B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | ... | Find throughput on 4 cores and rss 2 with non drop rate for 78B
-| | ... | frames by using linear search starting at 9.8Mpps, stepping down with
+| | ... | frames by using linear search starting at 12.2Mpps, stepping down with
| | ... | step of 0.1Mpps
| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
| | ${framesize}= | Set Variable | 78
-| | ${start_rate}= | Set Variable | 9800000
+| | ${start_rate}= | Set Variable | 12200000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
-| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | ${max_rate}= | Set Variable | 12755102
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 1518B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 9000B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores by using RFC2544 binary search and 78B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
| | ${framesize}= | Set Variable | 78
| | ${binary_min}= | Set Variable | 5000000
-| | ${binary_max}= | Set Variable | 9000000
+| | ${binary_max}= | Set Variable | 12000000
| | ${min_rate}= | Set Variable | 100000
-| | ${max_rate}= | Set Variable | 14880952
+| | ${max_rate}= | Set Variable | 12755102
| | ${threshold}= | Set Variable | 5000
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
-| | ... | ${binary_max} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
-| | ... | ${threshold}
+| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
+| | ... | ${binary_max} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
+| | ... | ${threshold}
| Find NDR with 4 cores and rss 2 by using RFC2544 binary search and 78B frames through IPv6 forwarding in 3-node topology
| | [Documentation]
| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
| | ${framesize}= | Set Variable | 78
| | ${binary_min}= | Set Variable | 6000000
-| | ${binary_max}= | Set Variable | 11000000
+| | ${binary_max}= | Set Variable | 12000000
| | ${min_rate}= | Set Variable | 100000
-| | ${max_rate}= | Set Variable | 14880952
+| | ${max_rate}= | Set Variable | 12755102
| | ${threshold}= | Set Variable | 5000
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
-| | ... | ${binary_max} | 3-node-IPv6
-| | ... | ${min_rate} | ${max_rate}
-| | ... | ${threshold}
+| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
+| | ... | ${binary_max} | 3-node-IPv6
+| | ... | ${min_rate} | ${max_rate}
+| | ... | ${threshold}
| ... | L2 | Intel-X520-DA2
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | *Throughput search suite (based on RFC2544).*
| ...
| ... | Test suite uses 3-node topology TG - DUT1 - DUT2 - TG, with one link
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+
*** Settings ***
| Resource | resources/libraries/robot/performance.robot
| Library | resources.libraries.python.InterfaceUtil
| ... | L2 | Intel-X520-DA2
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | *Throughput search suite (based on RFC2544).*
| ...
| ... | Test suite uses 3-node topology TG - DUT1 - DUT2 - TG, with one link
| Find NDR by using RFC2544 linear search and 64B frames through L2 cross connect in 3-node topology
| | [Documentation]
| | ... | Find throughput with non drop rate for 64B frames by using
-| | ... | linear search starting at 5Mpps, stepping down with step of 0.1Mpps
+| | ... | linear search starting at 6.0Mpps, stepping down with step of 0.1Mpps
| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
| | ${framesize}= | Set Variable | 64
-| | ${start_rate}= | Set Variable | 4800000
+| | ${start_rate}= | Set Variable | 6000000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-xconnect
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
| Find NDR by using RFC2544 linear search and 1518B frames through L2 cross connect in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-xconnect
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
| Find NDR by using RFC2544 linear search and 9000B frames through L2 cross connect in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-xconnect
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 64B frames through L2 cross connect in 3-node topology
| | [Documentation]
| | ... | Find throughput on 2 cores with non drop rate for 64B frames by using
-| | ... | linear search starting at 8.2Mpps, stepping down with step of 0.1Mpps
+| | ... | linear search starting at 11Mpps, stepping down with step of 0.1Mpps
| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
| | ${framesize}= | Set Variable | 64
-| | ${start_rate}= | Set Variable | 12000000
+| | ${start_rate}= | Set Variable | 11000000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-xconnect
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 1518B frames through L2 cross connect in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-xconnect
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 9000B frames through L2 cross connect in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-xconnect
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 64B frames through L2 cross connect in 3-node topology
| | [Documentation]
| | ... | Find throughput on 4 cores and rss 2 with non drop rate for 64B
-| | ... | frames by using linear search starting at 12.2Mpps, stepping down
+| | ... | frames by using linear search starting at 13.5Mpps, stepping down
| | ... | with step of 0.1Mpps
| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
| | ${framesize}= | Set Variable | 64
-| | ${start_rate}= | Set Variable | 12200000
+| | ${start_rate}= | Set Variable | 13500000
| | ${step_rate}= | Set Variable | 100000
| | ${min_rate}= | Set Variable | 100000
| | ${max_rate}= | Set Variable | 14880952
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-xconnect
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 1518B frames through L2 cross connect in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 10000
| | ${min_rate}= | Set Variable | 10000
| | ${max_rate}= | Set Variable | 812743
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-xconnect
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 9000B frames through L2 cross connect in 3-node topology
| | [Documentation]
| | ${step_rate}= | Set Variable | 5000
| | ${min_rate}= | Set Variable | 5000
| | ${max_rate}= | Set Variable | 138580
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
-| | ... | ${step_rate} | 3-node-xconnect
-| | ... | ${min_rate} | ${max_rate}
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
| ... | L2 | Intel-X520-DA2
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | Minimal throughput acceptance test cases
*** Test Cases ***
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 3.2mpps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-bridge
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-bridge
| 1core VPP passes 1518B frames through bridge domain at 2x 812,743pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-bridge
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-bridge
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 6.9mpps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-bridge
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-bridge
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-bridge
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 7.4mpps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-bridge
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-bridge
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 bridge domain initialized in a 3-node circular topology
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 bridge domain initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-bridge
| ... | L3 | Intel-X520-DA2
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | Minimal throughput acceptance test cases
*** Test Cases ***
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 3.5mpps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv4
| 1core VPP passes 1518B frames through IPv4 forwarding at 2x 812,743pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv4
| 1core VPP passes 9000B frames through IPv4 forwarding at 2x 138,580pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-IPv4
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 7.5mpps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-IPv4
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-IPv4
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-IPv4
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 7.8mpps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-IPv4
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-IPv4
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND IPv4 forwarding initialized in a 3-node circular topology
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And IPv4 forwarding initialized in a 3-node circular topology
| | Then Traffic should pass with no loss | ${duration} | ${rate}
| | ... | ${framesize} | 3-node-IPv4
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | Minimal throughput acceptance test cases
*** Test Cases ***
| | ${framesize}= | Set Variable | 78
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 2.9mpps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv6
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv6
| 1core VPP passes 1518B frames through IPv6 forwarding at 2x 812,743pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv6
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv6
| 1core VPP passes 9000B frames through IPv6 forwarding at 2x 138,580pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv6
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv6
| 2core VPP with rss 1 passes 78B frames through IPv6 forwarding at 2x 5.9Mpps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 78
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 5.9mpps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv6
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv6
| 2core VPP with rss 1 passes 1518B frames through IPv6 forwarding at 2x 812,743pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv6
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv6
| 2core VPP with rss 1 passes 9000B frames through IPv6 forwarding at 2x 138,580pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv6
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv6
| 4core VPP with rss 2 passes 78B frames through IPv6 forwarding at 2x 7.3Mpps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 78
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 7.3mpps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv6
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv6
| 4core VPP with rss 2 passes 1518B frames through IPv6 forwarding at 2x 812,743pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv6
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv6
| 4core VPP with rss 2 passes 9000B frames through IPv6 forwarding at 2x 138,580pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
| | And IPv6 forwarding initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv6
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-IPv6
| ... | L2 | Intel-X520-DA2
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | Minimal throughput acceptance test cases
*** Variables ***
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 2.9mpps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 720000pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 120000pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 5.8mpps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 720000pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 120000pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 9.0mpps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 720000pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 120000pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | And VPP interfaces in path are up
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And VPP interfaces in path are up
| | When VLAN dot1q subinterfaces initialized on 3-node topology
| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
| | And L2 tag rewrite method setup on interfaces
| ... | L2 | Intel-X520-DA2
| Suite Teardown | 3-node Performance Suite Teardown
| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Test Teardown | Run Keywords | Show statistics on all DUTs
+| ... | Remove startup configuration of VPP from all DUTs
| Documentation | Minimal throughput acceptance test cases
*** Test Cases ***
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 3.6mpps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-xconnect
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
| 1core VPP passes 1518B frames through L2 cross connect at 2x 812,743pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-xconnect
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
| 1core VPP passes 9000B frames through L2 cross connect at 2x 138,580pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-xconnect
+| | Given Add '1' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
| 2core VPP with rss 1 passes 64B frames through L2 cross connect at 2x 8.3Mpps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 8.3mpps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-xconnect
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
| 2core VPP with rss 1 passes 1518B frames through L2 cross connect at 2x 812,743pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-xconnect
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
| 2core VPP with rss 1 passes 9000B frames through L2 cross connect at 2x 138,580pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-xconnect
+| | Given Add '2' worker threads and rss '1' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
| 4core VPP with rss 2 passes 64B frames through L2 cross connect at 2x 9.3Mpps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 64
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 9.3mpps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-xconnect
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
| 4core VPP with rss 2 passes 1518B frames through L2 cross connect at 2x 812,743pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 1518
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 812743pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-xconnect
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Add No Multi Seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
| 4core VPP with rss 2 passes 9000B frames through L2 cross connect at 2x 138,580pps in 3-node topology
| | [Documentation]
| | ${framesize}= | Set Variable | 9000
| | ${duration}= | Set Variable | 10
| | ${rate}= | Set Variable | 138580pps
-| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
-| | AND L2 xconnect initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-xconnect
+| | Given Add '4' worker threads and rss '2' without HTT to all DUTs
+| | And Add all PCI devices to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And L2 xconnect initialized in a 3-node circular topology
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect