From c1bdb7115f12e7d4ec586ec0673fd19dce3a2414 Mon Sep 17 00:00:00 2001 From: pmikus Date: Thu, 7 Apr 2016 16:36:31 +0200 Subject: Multicore VPP setup for performance testing - add multithread TAGS documentation - add methods to VppConfigGenerator for RSS configuration - create KW for multithread setup - create sample test case using multithread vpp setup - add Documentation into TCs Change-Id: Id40862490d49380dc76d1d3ce39314603f983fd3 Signed-off-by: pmikus --- tests/suites/performance/short_ipv4.robot | 81 +++++++++++++++++++++++++++---- 1 file changed, 71 insertions(+), 10 deletions(-) (limited to 'tests/suites/performance/short_ipv4.robot') diff --git a/tests/suites/performance/short_ipv4.robot b/tests/suites/performance/short_ipv4.robot index 95e135147e..f96623beb6 100644 --- a/tests/suites/performance/short_ipv4.robot +++ b/tests/suites/performance/short_ipv4.robot @@ -21,26 +21,87 @@ | Suite Setup | 3-node Performance Suite Setup | L3 | Suite Teardown | 3-node Performance Suite Teardown | Test Setup | Setup all DUTs before test -| Test Teardown | Run Keyword If Test Failed | Show statistics on all DUTs +| Test Teardown | Run Keywords | Show statistics on all DUTs +| ... | AND | Reset startup configuration of VPP on all DUTs +| Documentation | Minimal throughput acceptance test cases *** Test Cases *** -| 1core VPP passes 64B frames through IPv4 forwarding at 3.5mpps in 3-node topology +| 1core VPP passes 64B frames through IPv4 forwarding at 2x 3.5mpps in 3-node topology +| | [Documentation] +| | ... | VPP with 1 core should pass 64B frames through IPv4 forwarding +| | ... | at 2x3.5mpps in 3-node topology +| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD +| | # Variables | | ${framesize}= | Set Variable | 64 | | ${duration}= | Set Variable | 10 | | ${rate}= | Set Variable | 3.5mpps -| | Given IPv4 forwarding initialized in a 3-node circular topology -| | Then Traffic should pass with no loss | ${duration} | ${rate} | ${framesize} | 3-node-IPv4 +| | # VPP setup +| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs +| | AND IPv4 forwarding initialized in a 3-node circular topology +| | # Sent traffic with specified rate +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 -| 1core VPP passes 1518B frames through IPv4 forwarding at 10gbps in 3-node topology +| 1core VPP passes 1518B frames through IPv4 forwarding at 2x 10gbps in 3-node topology +| | [Documentation] +| | ... | VPP with 1 core should pass 1518B frames through IPv4 forwarding +| | ... | at 2x10gbps in 3-node topology +| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD +| | # Variables | | ${framesize}= | Set Variable | 1518 | | ${duration}= | Set Variable | 10 | | ${rate}= | Set Variable | 10gbps -| | Given IPv4 forwarding initialized in a 3-node circular topology -| | Then Traffic should pass with no loss | ${duration} | ${rate} | ${framesize} | 3-node-IPv4 +| | # VPP setup +| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs +| | AND IPv4 forwarding initialized in a 3-node circular topology +| | # Sent traffic with specified rate +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 -| 1core VPP passes 9000B frames through IPv4 forwarding at 10gbps in 3-node topology +| 1core VPP passes 9000B frames through IPv4 forwarding at 2x 10gbps in 3-node topology +| | [Documentation] +| | ... | VPP with 1 core should pass 9000B frames through IPv4 forwarding +| | ... | at 2x10gbps in 3-node topology +| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD +| | # Variables | | ${framesize}= | Set Variable | 9000 | | ${duration}= | Set Variable | 10 | | ${rate}= | Set Variable | 10gbps -| | Given IPv4 forwarding initialized in a 3-node circular topology -| | Then Traffic should pass with no loss | ${duration} | ${rate} | ${framesize} | 3-node-IPv4 +| | # VPP setup +| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs +| | AND IPv4 forwarding initialized in a 3-node circular topology +| | # Sent traffic with specified rate +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| 2core VPP with rss 1 passes 64B frames through IPv4 forwarding at 2x 8.2mpps in 3-node topology +| | [Documentation] +| | ... | VPP with 2 cores should pass 64B frames through IPv4 forwarding +| | ... | at 2x8.2mpps in 3-node topology +| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD +| | # Variables +| | ${framesize}= | Set Variable | 64 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 8.2mpps +| | # VPP setup +| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs +| | AND IPv4 forwarding initialized in a 3-node circular topology +| | # Sent traffic with specified rate +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| 4core VPP with rss 2 passes 64B frames through IPv4 forwarding at 2x 9.2mpps in 3-node topology +| | [Documentation] +| | ... | VPP with 4 cores and rss 2 should pass 64B frames through IPv4 +| | ... | forwarding at 2x9.2mpps in 3-node topology +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD +| | # Variables +| | ${framesize}= | Set Variable | 64 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 9.2mpps +| | # VPP setup +| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs +| | AND IPv4 forwarding initialized in a 3-node circular topology +| | # Sent traffic with specified rate +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 -- cgit 1.2.3-korg