From 92d4e47bfbca31e10c44dee7f74da4c6fd9e6e4c Mon Sep 17 00:00:00 2001 From: Peter Mikus Date: Tue, 7 Aug 2018 08:17:12 +0000 Subject: Refactor VHOST code CSIT-1164 Create VM vhost tests for 2-node topology CSIT-1173 Implement VM vhost KWs for 2-node topology - Cleanup QemuUtils.py Library (PEP8, some TODOs, readability, multi queue, ring size, qemu version detection) - Cleanup VHOST KWs perf (Unify running QEMU on N-node topology) - Add ability to configure Queues, Hyperthreading, automatically compute number of CPU for VM/Testpmd and RXQ for Testpmd workload. - Partial cleanup of configuration KWs (l2xc, l2bd) for 2-node - Create IPv4 2-node KW Change-Id: I8aae1355bafa651de715cd438fe706c443ea1d88 Signed-off-by: Peter Mikus --- ...maclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdr.robot | 35 ++++++++++------------ 1 file changed, 16 insertions(+), 19 deletions(-) (limited to 'tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdr.robot') diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdr.robot index 4af0b3ccdc..78051f8bcb 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdr.robot @@ -60,23 +60,26 @@ | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** -| ${perf_qemu_qsz}= | 1024 # X520-DA2 bandwidth limit | ${s_limit}= | ${10000000000} -# Socket names -| ${bd_id1}= | 1 -| ${bd_id2}= | 2 -| ${sock1}= | /tmp/sock-1-${bd_id1} -| ${sock2}= | /tmp/sock-1-${bd_id2} # Traffic profile: | ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 *** Keywords *** | Local Template -| | [Documentation] | FIXME. +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... | | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None} | | ... -| | Set Test Variable | ${use_tuned_cfs} | ${True} | | Set Test Variable | ${framesize} | | Set Test Variable | ${min_rate} | ${10000} | | ${dut1_vm_refs}= | Create Dictionary @@ -89,17 +92,11 @@ | | ${max_rate} | ${jumbo} = | Get Max Rate And Jumbo And Handle Multi Seg | | ... | ${s_limit} | ${framesize} | | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains with Vhost-User in 3-node circular topology -| | ... | ${bd_id1} | ${bd_id2} | ${sock1} | ${sock2} -| | ${vm1}= | And Configure guest VM with dpdk-testpmd connected via vhost-user -| | ... | ${dut1} | ${sock1} | ${sock2} | DUT1_VM1 -| | ... | jumbo_frames=${jumbo} -| | Set To Dictionary | ${dut1_vm_refs} | DUT1_VM1 | ${vm1} -| | ${vm2}= | And Configure guest VM with dpdk-testpmd connected via vhost-user -| | ... | ${dut2} | ${sock1} | ${sock2} | DUT2_VM1 -| | ... | jumbo_frames=${jumbo} -| | Set To Dictionary | ${dut2_vm_refs} | DUT2_VM1 | ${vm2} -| | Setup Scheduler Policy for Vpp On All DUTs +| | When Initialize L2 bridge domains with Vhost-User | vm_count=${1} +| | And Configure guest VMs with dpdk-testpmd connected via vhost-user +| | ... | vm_count=${1} | jumbo=${jumbo} | perf_qemu_qsz=${1024} +| | ... | use_tuned_cfs=${True} +| | And Setup Scheduler Policy for Vpp On All DUTs | | Then Find NDR and PDR intervals using optimized search | | ... | ${framesize} | ${traffic_profile} | ${min_rate} | ${max_rate} -- cgit 1.2.3-korg