diff options
Diffstat (limited to 'resources/libraries/robot')
-rw-r--r-- | resources/libraries/robot/hoststack/hoststack.robot | 27 | ||||
-rw-r--r-- | resources/libraries/robot/performance/performance_vars.robot | 4 | ||||
-rw-r--r-- | resources/libraries/robot/shared/interfaces.robot | 11 |
3 files changed, 33 insertions, 9 deletions
diff --git a/resources/libraries/robot/hoststack/hoststack.robot b/resources/libraries/robot/hoststack/hoststack.robot index 20c071dc2d..ece1d8a1f4 100644 --- a/resources/libraries/robot/hoststack/hoststack.robot +++ b/resources/libraries/robot/hoststack/hoststack.robot @@ -31,7 +31,6 @@ | ${quic_crypto_engine}= | nocrypto | ${quic_fifo_size}= | 4M | &{vpp_hoststack_attr}= -| ... | rxq=${1} | ... | rxd=${256} | ... | txd=${256} | ... | phy_cores=${1} @@ -140,7 +139,6 @@ | | ... | Set the VPP HostStack attributes in the vpp_hoststack_attr dictionary. | | | | ... | *Arguments:* -| | ... | - ${rxq} - Number of Rx Queues Type: int | | ... | - ${rxd} - Number of Rx Descriptors Type: int | | ... | - ${txd} - Number of Tx Descriptors Type: int | | ... | - ${phy_cores} - Number of cores for workers Type: int @@ -168,7 +166,6 @@ | | ... | \| Set VPP Hoststack Attributes \| phy_cores=${phy_cores} \| | | | | [Arguments] -| | ... | ${rxq}=${vpp_hoststack_attr}[rxq] | | ... | ${rxd}=${vpp_hoststack_attr}[rxd] | | ... | ${txd}=${vpp_hoststack_attr}[txd] | | ... | ${phy_cores}=${vpp_hoststack_attr}[phy_cores] @@ -183,7 +180,6 @@ | | ... | ${sess_lendpt_buckets}=${vpp_hoststack_attr}[sess_lendpt_buckets] | | ... | ${sess_lendpt_mem}=${vpp_hoststack_attr}[sess_lendpt_mem] | | -| | Set To Dictionary | ${vpp_hoststack_attr} | rxq | ${rxq} | | Set To Dictionary | ${vpp_hoststack_attr} | rxd | ${rxd} | | Set To Dictionary | ${vpp_hoststack_attr} | txd | ${txd} | | Set To Dictionary | ${vpp_hoststack_attr} | phy_cores | ${phy_cores} @@ -453,8 +449,8 @@ | | | | Set Max Rate And Jumbo | | Add worker threads to all DUTs -| | ... | ${vpp_hoststack_attr}[phy_cores] | ${vpp_hoststack_attr}[rxq] -| | ... | ${vpp_hoststack_attr}[rxd] | ${vpp_hoststack_attr}[txd] +| | ... | ${vpp_hoststack_attr}[phy_cores] +| | ... | rxd=${vpp_hoststack_attr}[rxd] | txd=${vpp_hoststack_attr}[txd] | | Pre-initialize layer driver | ${nic_driver} | | FOR | ${dut} | IN | @{duts} | | | Import Library | resources.libraries.python.VppConfigGenerator @@ -505,6 +501,9 @@ | | ${numa}= | Get interfaces numa node | ${dut2} | ${dut2_if1} | | ${core_list}= | Cpu list per node str | ${dut2} | ${numa} | | ... | skip_cnt=${skip_cnt} | cpu_cnt=${vpp_echo_server_attr}[cpu_cnt] +| | FOR | ${action} | IN | @{stat_pre_trial} +| | | Run Keyword | Additional Statistics Action For ${action} +| | END | | ${server_pid}= | Run hoststack test program on DUT | | ... | ${dut2} | ${dut2_if1} | ${dut2_if1_ip4_addr} | ${dut2_if1_ip4_prefix} | | ... | ${vpp_echo_server_attr}[namespace] | ${core_list} @@ -528,6 +527,9 @@ | | ${server_defer_fail} | ${server_output}= | | ... | Analyze hoststack test program output | ${dut2} | Server | | ... | ${vpp_nsim_attr} | ${vpp_echo_server} +| | FOR | ${action} | IN | @{stat_post_trial} +| | | Run Keyword | Additional Statistics Action For ${action} +| | END | | Set test message | ${server_output} | append=True | | Run Keyword And Return | Hoststack Test Program Defer Fail | | ... | ${server_defer_fail} | ${client_defer_fail} @@ -549,6 +551,9 @@ | | ${numa}= | Get interfaces numa node | ${dut2} | ${dut2_if1} | | ${core_list}= | Cpu list per node str | ${dut2} | ${numa} | | ... | skip_cnt=${skip_cnt} | cpu_cnt=${iperf3_server_attr}[cpu_cnt] +| | FOR | ${action} | IN | @{stat_pre_trial} +| | | Run Keyword | Additional Statistics Action For ${action} +| | END | | ${server_pid}= | Run hoststack test program on DUT | | ... | ${dut2} | ${dut2_if1} | ${dut2_if1_ip4_addr} | ${dut2_if1_ip4_prefix} | | ... | ${iperf3_server_attr}[namespace] | ${core_list} @@ -563,6 +568,9 @@ | | ... | ${iperf3_client_attr}[cfg_vpp_feature] | ${iperf3_client} | | When Hoststack Test Program Finished | ${dut1} | ${client_pid} | | ... | ${iperf3_client} | ${dut2} | ${iperf3_server} +| | FOR | ${action} | IN | @{stat_post_trial} +| | | Run Keyword | Additional Statistics Action For ${action} +| | END | | ${client_defer_fail} | ${client_output}= | | ... | Analyze hoststack test program output | ${dut1} | Client | | ... | ${vpp_nsim_attr} | ${iperf3_client} @@ -638,11 +646,16 @@ | | | | ${dut_ip_addrs_str} | Evaluate | ','.join(${dut_ip_addrs}) | | ${ad_ip_addrs_str} | Evaluate | ','.join(${ab_ip_addrs}) +| | FOR | ${action} | IN | @{stat_pre_trial} +| | | Run Keyword | Additional Statistics Action For ${action} +| | END | | ${output}= | Run ab | ${tg} | ${dut_ip_addrs_str} | ${ad_ip_addrs_str} | | ... | ${tls_tcp} | ${ciphers} | ${files} | ${mode} | ${r_total} | ${c_total} | | ... | ${listen_port} +| | FOR | ${action} | IN | @{stat_post_trial} +| | | Run Keyword | Additional Statistics Action For ${action} +| | END | | Set test message | ${output} -| | Log VPP Hoststack data | ${dut1} | Configure VPP startup configuration for NGINX | | [Documentation] diff --git a/resources/libraries/robot/performance/performance_vars.robot b/resources/libraries/robot/performance/performance_vars.robot index a0fa277e4c..1bab1071b7 100644 --- a/resources/libraries/robot/performance/performance_vars.robot +++ b/resources/libraries/robot/performance/performance_vars.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2023 Cisco and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at: @@ -413,7 +413,7 @@ | | | | # Some suites (e.g. device) are not calling Set Max Rate And Jumbo. | | Set Numeric Frame Sizes -| | ${jumbo} = | Evaluate | ${max_frame_size} >= 1522 +| | ${jumbo} = | Evaluate | ${max_frame_size} >= 1800 | | Set Test Variable | \${jumbo} | | ${recommended_mtu} = | Set Variable If | ${jumbo} | ${9200} | ${1800} | | Set Test Variable | \${recommended_mtu} diff --git a/resources/libraries/robot/shared/interfaces.robot b/resources/libraries/robot/shared/interfaces.robot index 4af68d0e28..b4d6959d01 100644 --- a/resources/libraries/robot/shared/interfaces.robot +++ b/resources/libraries/robot/shared/interfaces.robot @@ -16,6 +16,7 @@ | Library | resources.libraries.python.VhostUser *** Variables *** +| ${dpdk_enable_tcp_udp_checksum}= | ${False} | ${dpdk_no_tx_checksum_offload}= | ${True} *** Keywords *** @@ -136,11 +137,19 @@ | | | Unbind PCI Devices From Other Driver | ${nodes['${dut}']} | vfio-pci | | | | ... | @{${dut}_pf_pci} | | | Run keyword | ${dut}.Add DPDK Dev | @{${dut}_pf_pci} +| | | Run Keyword If | ${dpdk_enable_tcp_udp_checksum} +| | | ... | ${dut}.Add DPDK Enable TCP UDP Checksum | | | Run Keyword If | ${dpdk_no_tx_checksum_offload} | | | ... | ${dut}.Add DPDK No Tx Checksum Offload | | | Run Keyword | ${dut}.Add DPDK Log Level | debug | | | Run Keyword | ${dut}.Add DPDK Uio Driver | vfio-pci | | | Run Keyword | ${dut}.Add DPDK Dev Default RXQ | ${rxq_count_int} +| | | Run Keyword If | '${nic_name}' == 'Amazon-Nitro-100G' +| | | ... | ${dut}.Add DPDK Dev Default Devargs | +| | | ... | "normal_llq_hdr=1,enable_llq=1,control_path_poll_interval=0" +| | | Run Keyword If | '${nic_name}' == 'Amazon-Nitro-200G' +| | | ... | ${dut}.Add DPDK Dev Default Devargs | +| | | ... | "normal_llq_hdr=1,enable_llq=1,control_path_poll_interval=0" | | | Run Keyword If | not ${jumbo} | | | ... | ${dut}.Add DPDK No Multi Seg | | | Run Keyword If | ${nic_rxq_size} > 0 @@ -195,6 +204,8 @@ | | Run Keyword If | ${index} >= 0 | Return From Keyword | | FOR | ${dut} | IN | @{duts} | | | Run keyword | ${dut}.Add DPDK Dev | @{${dut}_pf_pci} +| | | Run Keyword If | ${dpdk_enable_tcp_udp_checksum} +| | | ... | ${dut}.Add DPDK Enable TCP UDP Checksum | | | Run Keyword If | ${dpdk_no_tx_checksum_offload} | | | ... | ${dut}.Add DPDK No Tx Checksum Offload | | | Run Keyword | ${dut}.Add DPDK Log Level | debug |