[PATCH 1/4] Utils: fix dict_to_dot for tuples
by Ondrej Lichtner
From: Ondrej Lichtner <olichtne(a)redhat.com>
Pylint complained that iter_key was undefined, this is a mistake caused
by copy pasting code from list_to_dot. This patch fixes the issue.
Signed-off-by: Ondrej Lichtner <olichtne(a)redhat.com>
---
lnst/Common/Utils.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lnst/Common/Utils.py b/lnst/Common/Utils.py
index 727f82a..c2fabd1 100644
--- a/lnst/Common/Utils.py
+++ b/lnst/Common/Utils.py
@@ -250,7 +250,9 @@ def dict_to_dot(original_dict, prefix=""):
elif isinstance(value, tuple):
#TODO temporary fix, tuples shouldn't be here
if len(value) == 2:
- return_list.append((iter_key+'.'+value[0], value[1]))
+ return_list.append((prefix+key,
+ "(%s, %s)" % (value[0],
+ value[1]) ))
else:
return_list.append((prefix+key, str(value)))
return return_list
--
2.6.2
8 years
[PATCH] TaskAPI: convert parameter value to string when generating
hash
by Jan Tluka
This patch fixes latest regression related to multithreaded netperf.
The nperf_num_parallel is converted to int() but when it is used while
generating hash the controller fails with exception since only string is
accepted. The patch converts the passed parameter value to string.
Signed-off-by: Jan Tluka <jtluka(a)redhat.com>
---
lnst/Controller/Task.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lnst/Controller/Task.py b/lnst/Controller/Task.py
index 01aadab..db4ef9c 100644
--- a/lnst/Controller/Task.py
+++ b/lnst/Controller/Task.py
@@ -771,7 +771,7 @@ class PerfRepoResult(object):
if skip:
continue
sha1.update(i[0])
- sha1.update(i[1])
+ sha1.update(str(i[1]))
return sha1.hexdigest()
class PerfRepoBaseline(object):
--
2.4.3
8 years
[PATCH] recipes: don't convert nperf_num_parallel to int
by Jan Tluka
This patch fixes latest regression related to multithreaded netperf.
Originally the nperf_num_parallel was converted to int() but when it is
used while generating hash the controller fails with exception since
only string is accepted.
The Netperf module converts the parameter to int anyway, so removing the
conversion from python task is an easy fix.
Signed-off-by: Jan Tluka <jtluka(a)redhat.com>
---
recipes/regression_tests/phase1/3_vlans.py | 2 +-
recipes/regression_tests/phase1/3_vlans_over_bond.py | 2 +-
recipes/regression_tests/phase1/bonding_test.py | 2 +-
recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py | 2 +-
recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py | 2 +-
recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py | 2 +-
recipes/regression_tests/phase2/3_vlans_over_team.py | 2 +-
recipes/regression_tests/phase2/team_test.py | 2 +-
.../phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py | 2 +-
recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py | 2 +-
recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py | 2 +-
11 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/recipes/regression_tests/phase1/3_vlans.py b/recipes/regression_tests/phase1/3_vlans.py
index 907ad3c..b795496 100644
--- a/recipes/regression_tests/phase1/3_vlans.py
+++ b/recipes/regression_tests/phase1/3_vlans.py
@@ -39,7 +39,7 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpupin = ctl.get_alias("nperf_cpupin")
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
m1_phy1 = m1.get_interface("eth1")
m1_phy1.set_mtu(mtu)
diff --git a/recipes/regression_tests/phase1/3_vlans_over_bond.py b/recipes/regression_tests/phase1/3_vlans_over_bond.py
index c14f1f0..5e1adec 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/3_vlans_over_bond.py
@@ -38,7 +38,7 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpupin = ctl.get_alias("nperf_cpupin")
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
m1_bond = m1.get_interface("test_bond")
m1_bond.set_mtu(mtu)
diff --git a/recipes/regression_tests/phase1/bonding_test.py b/recipes/regression_tests/phase1/bonding_test.py
index cc93af0..cfb03e3 100644
--- a/recipes/regression_tests/phase1/bonding_test.py
+++ b/recipes/regression_tests/phase1/bonding_test.py
@@ -38,7 +38,7 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpupin = ctl.get_alias("nperf_cpupin")
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
test_if1 = m1.get_interface("test_if")
test_if1.set_mtu(mtu)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
index 1b908cf..50ae7e4 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
@@ -43,7 +43,7 @@ nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
mtu = ctl.get_alias("mtu")
enable_udp_perf = ctl.get_alias("enable_udp_perf")
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
index d3cc786..cb7839a 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
@@ -39,7 +39,7 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpupin = ctl.get_alias("nperf_cpupin")
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
mtu = ctl.get_alias("mtu")
enable_udp_perf = ctl.get_alias("enable_udp_perf")
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
index ca169af..2d87c9b 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
@@ -39,7 +39,7 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpupin = ctl.get_alias("nperf_cpupin")
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
mtu = ctl.get_alias("mtu")
enable_udp_perf = ctl.get_alias("enable_udp_perf")
diff --git a/recipes/regression_tests/phase2/3_vlans_over_team.py b/recipes/regression_tests/phase2/3_vlans_over_team.py
index dc163c0..038117b 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_team.py
+++ b/recipes/regression_tests/phase2/3_vlans_over_team.py
@@ -38,7 +38,7 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpupin = ctl.get_alias("nperf_cpupin")
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
m1_team = m1.get_interface("test_if")
m1_team.set_mtu(mtu)
diff --git a/recipes/regression_tests/phase2/team_test.py b/recipes/regression_tests/phase2/team_test.py
index 8a1d275..eab0b05 100644
--- a/recipes/regression_tests/phase2/team_test.py
+++ b/recipes/regression_tests/phase2/team_test.py
@@ -37,7 +37,7 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpupin = ctl.get_alias("nperf_cpupin")
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
test_if1 = m1.get_interface("test_if")
test_if1.set_mtu(mtu)
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
index 240f056..08fadf3 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
@@ -43,7 +43,7 @@ nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
h1_nic1 = h1.get_interface("nic1")
h1_nic2 = h1.get_interface("nic2")
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
index 76aa386..2ca1222 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
@@ -39,7 +39,7 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpupin = ctl.get_alias("nperf_cpupin")
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
h2_vlan10 = h2.get_interface("vlan10")
g1_vlan10 = g1.get_interface("vlan10")
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
index dcde1b2..25066bf 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
@@ -39,7 +39,7 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
nperf_cpupin = ctl.get_alias("nperf_cpupin")
nperf_cpu_util = ctl.get_alias("nperf_cpu_util")
nperf_mode = ctl.get_alias("nperf_mode")
-nperf_num_parallel = int(ctl.get_alias("nperf_num_parallel"))
+nperf_num_parallel = ctl.get_alias("nperf_num_parallel")
h2_vlan10 = h2.get_interface("vlan10")
g1_guestnic = g1.get_interface("guestnic")
--
2.4.3
8 years
[PATCH] regression_tests: multithreading fixes
by Ondrej Lichtner
From: Ondrej Lichtner <olichtne(a)redhat.com>
This patch adds two minor fixes for the multithreading support of the
regression tests.
First is that cpu pinning should be ignored when running multiple
netperf clients.
Second is that result objects sent to PerfRepo should carry information
about the number of netperf clients used.
Signed-off-by: Ondrej Lichtner <olichtne(a)redhat.com>
---
recipes/regression_tests/phase1/3_vlans.py | 14 ++++++++++-
.../regression_tests/phase1/3_vlans_over_bond.py | 14 ++++++++++-
recipes/regression_tests/phase1/bonding_test.py | 14 ++++++++++-
.../phase1/virtual_bridge_2_vlans_over_bond.py | 12 ++++++++++
.../phase1/virtual_bridge_vlan_in_guest.py | 14 ++++++++++-
.../phase1/virtual_bridge_vlan_in_host.py | 14 ++++++++++-
.../regression_tests/phase2/3_vlans_over_team.py | 14 ++++++++++-
recipes/regression_tests/phase2/team_test.py | 28 ++++++++++++++++++++--
...l_ovs_bridge_2_vlans_over_active_backup_bond.py | 12 ++++++++++
.../phase2/virtual_ovs_bridge_vlan_in_guest.py | 14 ++++++++++-
.../phase2/virtual_ovs_bridge_vlan_in_host.py | 14 ++++++++++-
11 files changed, 154 insertions(+), 10 deletions(-)
diff --git a/recipes/regression_tests/phase1/3_vlans.py b/recipes/regression_tests/phase1/3_vlans.py
index 163daa9..907ad3c 100644
--- a/recipes/regression_tests/phase1/3_vlans.py
+++ b/recipes/regression_tests/phase1/3_vlans.py
@@ -136,7 +136,7 @@ for vlan1 in vlans:
netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
p_opts = "-L %s" % (m2_vlan2.get_ip(0))
- if nperf_cpupin:
+ if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
netperf_cli_tcp.update_options({"netperf_server": m1_vlan1.get_ip(0),
@@ -183,6 +183,9 @@ for vlan1 in vlans:
result_tcp.set_parameter('netperf_server_on_vlan', vlan1)
result_tcp.set_parameter('netperf_client_on_vlan', vlan2)
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -203,6 +206,9 @@ for vlan1 in vlans:
result_udp.set_parameter('netperf_server_on_vlan', vlan1)
result_udp.set_parameter('netperf_client_on_vlan', vlan2)
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -234,6 +240,9 @@ for vlan1 in vlans:
result_tcp.set_parameter('netperf_server_on_vlan', vlan1)
result_tcp.set_parameter('netperf_client_on_vlan', vlan2)
result_tcp.set_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -255,6 +264,9 @@ for vlan1 in vlans:
result_udp.set_parameter('netperf_server_on_vlan', vlan1)
result_udp.set_parameter('netperf_client_on_vlan', vlan2)
result_udp.set_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase1/3_vlans_over_bond.py b/recipes/regression_tests/phase1/3_vlans_over_bond.py
index 2c4131b..c14f1f0 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/3_vlans_over_bond.py
@@ -138,7 +138,7 @@ for vlan1 in vlans:
netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
p_opts = "-L %s" % (m2_vlan2.get_ip(0))
- if nperf_cpupin:
+ if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
netperf_cli_tcp.update_options({"netperf_server": m1_vlan1.get_ip(0),
@@ -187,6 +187,9 @@ for vlan1 in vlans:
result_tcp.set_parameter('netperf_server_on_vlan', vlan1)
result_tcp.set_parameter('netperf_client_on_vlan', vlan2)
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -208,6 +211,9 @@ for vlan1 in vlans:
result_udp.set_parameter('netperf_server_on_vlan', vlan1)
result_udp.set_parameter('netperf_client_on_vlan', vlan2)
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -239,6 +245,9 @@ for vlan1 in vlans:
result_tcp.set_parameter('netperf_server_on_vlan', vlan1)
result_tcp.set_parameter('netperf_client_on_vlan', vlan2)
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -260,6 +269,9 @@ for vlan1 in vlans:
result_udp.set_parameter('netperf_server_on_vlan', vlan1)
result_udp.set_parameter('netperf_client_on_vlan', vlan2)
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase1/bonding_test.py b/recipes/regression_tests/phase1/bonding_test.py
index 2ee8ee5..cc93af0 100644
--- a/recipes/regression_tests/phase1/bonding_test.py
+++ b/recipes/regression_tests/phase1/bonding_test.py
@@ -75,7 +75,7 @@ netperf_srv6 = ctl.get_module("Netperf",
})
p_opts = "-L %s" % (test_if2.get_ip(0))
-if nperf_cpupin:
+if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
netperf_cli_tcp = ctl.get_module("Netperf",
@@ -164,6 +164,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -183,6 +186,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -210,6 +216,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -229,6 +238,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
index dd427e0..1b908cf 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
@@ -256,6 +256,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -279,6 +282,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -312,6 +318,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -335,6 +344,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
index 1f7595b..d3cc786 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
@@ -80,7 +80,7 @@ netperf_srv6 = ctl.get_module("Netperf",
})
p_opts = "-L %s" % (h2_vlan10.get_ip(0))
-if nperf_cpupin:
+if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s" % nperf_cpupin
netperf_cli_tcp = ctl.get_module("Netperf",
@@ -184,6 +184,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -207,6 +210,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -237,6 +243,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -260,6 +269,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
index e192bba..ca169af 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
@@ -79,7 +79,7 @@ netperf_srv6 = ctl.get_module("Netperf",
})
p_opts = "-L %s" % (h2_vlan10.get_ip(0))
-if nperf_cpupin:
+if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s" % nperf_cpupin
netperf_cli_tcp = ctl.get_module("Netperf",
@@ -184,6 +184,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -207,6 +210,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -237,6 +243,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -260,6 +269,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase2/3_vlans_over_team.py b/recipes/regression_tests/phase2/3_vlans_over_team.py
index 7f5cf8f..dc163c0 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_team.py
+++ b/recipes/regression_tests/phase2/3_vlans_over_team.py
@@ -139,7 +139,7 @@ for vlan1 in vlans:
netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
p_opts = "-L %s" % (m2_vlan2.get_ip(0))
- if nperf_cpupin:
+ if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
netperf_cli_tcp.update_options({"netperf_server": m1_vlan1.get_ip(0),
@@ -187,6 +187,9 @@ for vlan1 in vlans:
result_tcp.set_parameter('netperf_server_on_vlan', vlan1)
result_tcp.set_parameter('netperf_client_on_vlan', vlan2)
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -208,6 +211,9 @@ for vlan1 in vlans:
result_udp.set_parameter('netperf_server_on_vlan', vlan1)
result_udp.set_parameter('netperf_client_on_vlan', vlan2)
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -238,6 +244,9 @@ for vlan1 in vlans:
result_tcp.set_parameter('netperf_server_on_vlan', vlan1)
result_tcp.set_parameter('netperf_client_on_vlan', vlan2)
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -259,6 +268,9 @@ for vlan1 in vlans:
result_udp.set_parameter('netperf_server_on_vlan', vlan1)
result_udp.set_parameter('netperf_client_on_vlan', vlan2)
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase2/team_test.py b/recipes/regression_tests/phase2/team_test.py
index 5fa9b4e..8a1d275 100644
--- a/recipes/regression_tests/phase2/team_test.py
+++ b/recipes/regression_tests/phase2/team_test.py
@@ -75,7 +75,7 @@ netperf_srv6 = ctl.get_module("Netperf",
})
p_opts = "-L %s" % (test_if2.get_ip(0))
-if nperf_cpupin:
+if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
netperf_cli_tcp = ctl.get_module("Netperf",
@@ -166,6 +166,9 @@ for setting in offload_settings:
result_tcp.set_parameter('netperf_server', "testmachine1")
result_tcp.set_parameter('netperf_client', "testmachine2")
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -187,6 +190,9 @@ for setting in offload_settings:
result_udp.set_parameter('netperf_server', "testmachine1")
result_udp.set_parameter('netperf_client', "testmachine2")
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -215,6 +221,9 @@ for setting in offload_settings:
result_tcp.set_parameter('netperf_server', "testmachine1")
result_tcp.set_parameter('netperf_client', "testmachine2")
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -236,6 +245,9 @@ for setting in offload_settings:
result_udp.set_parameter('netperf_server', "testmachine1")
result_udp.set_parameter('netperf_client', "testmachine2")
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
@@ -266,7 +278,7 @@ netperf_srv.update_options({"bind" : test_if2.get_ip(0)})
netperf_srv6.update_options({"bind" : test_if2.get_ip(1)})
p_opts = "-L %s" % (test_if1.get_ip(0))
-if nperf_cpupin:
+if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
netperf_cli_tcp.update_options({"netperf_server" : test_if2.get_ip(0),
@@ -305,6 +317,9 @@ for setting in offload_settings:
result_tcp.set_parameter('netperf_server', "testmachine2")
result_tcp.set_parameter('netperf_client', "testmachine1")
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -326,6 +341,9 @@ for setting in offload_settings:
result_udp.set_parameter('netperf_server', "testmachine2")
result_udp.set_parameter('netperf_client', "testmachine1")
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -354,6 +372,9 @@ for setting in offload_settings:
result_tcp.set_parameter('netperf_server', "testmachine2")
result_tcp.set_parameter('netperf_client', "testmachine1")
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -375,6 +396,9 @@ for setting in offload_settings:
result_udp.set_parameter('netperf_server', "testmachine2")
result_udp.set_parameter('netperf_client', "testmachine1")
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
index 5c16355..240f056 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
@@ -234,6 +234,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -257,6 +260,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -290,6 +296,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -313,6 +322,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
index a94b70c..76aa386 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
@@ -77,7 +77,7 @@ netperf_srv6 = ctl.get_module("Netperf",
})
p_opts = "-L %s" % (h2_vlan10.get_ip(0))
-if nperf_cpupin:
+if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s" % nperf_cpupin
netperf_cli_tcp = ctl.get_module("Netperf",
@@ -172,6 +172,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -195,6 +198,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -225,6 +231,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -248,6 +257,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
index 9697f28..dcde1b2 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
@@ -76,7 +76,7 @@ netperf_srv6 = ctl.get_module("Netperf",
})
p_opts = "-L %s" % (h2_vlan10.get_ip(0))
-if nperf_cpupin:
+if nperf_cpupin and nperf_mode != "multi":
p_opts += " -T%s" % nperf_cpupin
netperf_cli_tcp = ctl.get_module("Netperf",
@@ -171,6 +171,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp, baseline)
@@ -194,6 +197,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp, baseline)
@@ -225,6 +231,9 @@ for setting in offload_settings:
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_tcp.add_tag("multithreaded")
+ result_tcp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_tcp)
netperf_baseline_template(netperf_cli_tcp6, baseline)
@@ -248,6 +257,9 @@ for setting in offload_settings:
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
+ if nperf_mode == "multi":
+ result_udp.add_tag("multithreaded")
+ result_udp.set_parameter('num_parallel', nperf_num_parallel)
baseline = perf_api.get_baseline_of_result(result_udp)
netperf_baseline_template(netperf_cli_udp6, baseline)
--
2.6.2
8 years
[PATCH 1/2] Netperf: use "runs" when "confidence" is specified
by Ondrej Lichtner
From: Ondrej Lichtner <olichtne(a)redhat.com>
The "runs" module option was used to specify how many times should the
test module run the netperf client, however it was ignored when
"confidence" was specified since the user was expected to specify the
"-i" option in the task.
After this patch the "runs" parameter will be used even when
"confidence" is specified and will be used to add the "-i" parameter to
the client command.
This patch also updates all the recipes tracked in the LNST recipe that
specified the -i parameter, to instead use the "runs" option.
Signed-off-by: Ondrej Lichtner <olichtne(a)redhat.com>
---
recipes/regression_tests/phase1/3_vlans.py | 18 +++++++++++-------
recipes/regression_tests/phase1/3_vlans_over_bond.py | 18 +++++++++++-------
recipes/regression_tests/phase1/bonding_test.py | 10 +++++++---
.../phase1/virtual_bridge_2_vlans_over_bond.py | 16 ++++++++++------
.../phase1/virtual_bridge_vlan_in_guest.py | 10 +++++++---
.../phase1/virtual_bridge_vlan_in_host.py | 10 +++++++---
recipes/regression_tests/phase2/3_vlans_over_team.py | 18 +++++++++++-------
recipes/regression_tests/phase2/team_test.py | 16 ++++++++++------
...rtual_ovs_bridge_2_vlans_over_active_backup_bond.py | 16 ++++++++++------
.../phase2/virtual_ovs_bridge_vlan_in_guest.py | 10 +++++++---
.../phase2/virtual_ovs_bridge_vlan_in_host.py | 10 +++++++---
test_modules/Netperf.py | 8 +++-----
12 files changed, 101 insertions(+), 59 deletions(-)
diff --git a/recipes/regression_tests/phase1/3_vlans.py b/recipes/regression_tests/phase1/3_vlans.py
index 69b958e..19c897e 100644
--- a/recipes/regression_tests/phase1/3_vlans.py
+++ b/recipes/regression_tests/phase1/3_vlans.py
@@ -77,7 +77,8 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
netperf_cli_udp = ctl.get_module("Netperf",
options={
@@ -85,7 +86,8 @@ netperf_cli_udp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
options={
@@ -93,7 +95,8 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
netperf_cli_udp6 = ctl.get_module("Netperf",
options={
@@ -101,7 +104,8 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
for vlan1 in vlans:
@@ -118,7 +122,7 @@ for vlan1 in vlans:
netperf_srv.update_options({"bind": m1_vlan1.get_ip(0)})
netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
- p_opts = "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))
+ p_opts = "-L %s" % (m2_vlan2.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
@@ -129,10 +133,10 @@ for vlan1 in vlans:
"netperf_opts": p_opts })
netperf_cli_tcp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
+ "netperf_opts": "-L %s -6" % (m2_vlan2.get_ip(1))})
netperf_cli_udp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
+ "netperf_opts": "-L %s -6" % (m2_vlan2.get_ip(1))})
if vlan1 == vlan2:
# These tests should pass
diff --git a/recipes/regression_tests/phase1/3_vlans_over_bond.py b/recipes/regression_tests/phase1/3_vlans_over_bond.py
index adaf426..06c6b98 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/3_vlans_over_bond.py
@@ -78,7 +78,8 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
netperf_cli_udp = ctl.get_module("Netperf",
options={
@@ -86,7 +87,8 @@ netperf_cli_udp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
options={
@@ -94,7 +96,8 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
netperf_cli_udp6 = ctl.get_module("Netperf",
options={
@@ -102,7 +105,8 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
for vlan1 in vlans:
@@ -120,7 +124,7 @@ for vlan1 in vlans:
netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
- p_opts = "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))
+ p_opts = "-L %s" % (m2_vlan2.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
@@ -131,10 +135,10 @@ for vlan1 in vlans:
"netperf_opts": p_opts })
netperf_cli_tcp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
+ "netperf_opts": "-L %s -6" % (m2_vlan2.get_ip(1))})
netperf_cli_udp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
+ "netperf_opts": "-L %s -6" % (m2_vlan2.get_ip(1))})
if vlan1 == vlan2:
# These tests should pass
diff --git a/recipes/regression_tests/phase1/bonding_test.py b/recipes/regression_tests/phase1/bonding_test.py
index b73f0dc..70827a2 100644
--- a/recipes/regression_tests/phase1/bonding_test.py
+++ b/recipes/regression_tests/phase1/bonding_test.py
@@ -72,7 +72,7 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
-p_opts = "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
+p_opts = "-L %s" % (test_if2.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
@@ -84,6 +84,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -95,6 +96,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -107,8 +109,9 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, test_if2.get_ip(1))
+ "-L %s -6" % (test_if2.get_ip(1))
})
netperf_cli_udp6 = ctl.get_module("Netperf",
options={
@@ -119,8 +122,9 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, test_if2.get_ip(1))
+ "-L %s -6" % (test_if2.get_ip(1))
})
ctl.wait(15)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
index 266530c..e241f1a 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
@@ -107,8 +107,9 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, g3_guestnic.get_ip(0))
+ "runs": nperf_max_runs,
+ "netperf_opts" : "-L %s" %
+ (g3_guestnic.get_ip(0))
})
netperf_cli_udp = ctl.get_module("Netperf",
@@ -119,8 +120,9 @@ netperf_cli_udp = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, g3_guestnic.get_ip(0))
+ "runs": nperf_max_runs,
+ "netperf_opts" : "-L %s" %
+ (g3_guestnic.get_ip(0))
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
@@ -132,8 +134,9 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, g3_guestnic.get_ip(1))
+ "-L %s -6" % (g3_guestnic.get_ip(1))
})
netperf_cli_udp6 = ctl.get_module("Netperf",
@@ -145,8 +148,9 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, g3_guestnic.get_ip(1))
+ "-L %s -6" % (g3_guestnic.get_ip(1))
})
ping_mod_bad = ctl.get_module("IcmpPing",
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
index ee78d7d..1830051 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
@@ -77,7 +77,7 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
-p_opts = "-i %s -L %s" % (nperf_max_runs, h2_vlan10.get_ip(0))
+p_opts = "-L %s" % (h2_vlan10.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s" % nperf_cpupin
@@ -89,6 +89,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -100,6 +101,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -112,8 +114,9 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
+ "-L %s -6" % (h2_vlan10.get_ip(1))
})
netperf_cli_udp6 = ctl.get_module("Netperf",
@@ -125,8 +128,9 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
+ "-L %s -6" % (h2_vlan10.get_ip(1))
})
# configure mtu
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
index a8d99dd..8337687 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
@@ -76,7 +76,7 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
-p_opts = "-i %s -L %s" % (nperf_max_runs, h2_vlan10.get_ip(0))
+p_opts = "-L %s" % (h2_vlan10.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s" % nperf_cpupin
@@ -88,6 +88,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -99,6 +100,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -111,8 +113,9 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
+ "-L %s -6" % (h2_vlan10.get_ip(1))
})
netperf_cli_udp6 = ctl.get_module("Netperf",
@@ -124,8 +127,9 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
+ "-L %s -6" % (h2_vlan10.get_ip(1))
})
# configure mtu
diff --git a/recipes/regression_tests/phase2/3_vlans_over_team.py b/recipes/regression_tests/phase2/3_vlans_over_team.py
index 5855915..25f42d1 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_team.py
+++ b/recipes/regression_tests/phase2/3_vlans_over_team.py
@@ -79,7 +79,8 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
netperf_cli_udp = ctl.get_module("Netperf",
options={
@@ -87,7 +88,8 @@ netperf_cli_udp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
options={
@@ -95,7 +97,8 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
netperf_cli_udp6 = ctl.get_module("Netperf",
options={
@@ -103,7 +106,8 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "cpu_util" : nperf_cpu_util
+ "cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs
})
for vlan1 in vlans:
@@ -121,7 +125,7 @@ for vlan1 in vlans:
netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
- p_opts = "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))
+ p_opts = "-L %s" % (m2_vlan2.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
@@ -132,10 +136,10 @@ for vlan1 in vlans:
"netperf_opts": p_opts})
netperf_cli_tcp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
+ "netperf_opts": "-L %s -6" % (m2_vlan2.get_ip(1))})
netperf_cli_udp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
+ "netperf_opts": "-L %s -6" % (m2_vlan2.get_ip(1))})
if vlan1 == vlan2:
# These tests should pass
diff --git a/recipes/regression_tests/phase2/team_test.py b/recipes/regression_tests/phase2/team_test.py
index 4897d8d..e670d2c 100644
--- a/recipes/regression_tests/phase2/team_test.py
+++ b/recipes/regression_tests/phase2/team_test.py
@@ -72,7 +72,7 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6"
})
-p_opts = "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
+p_opts = "-L %s" % (test_if2.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
@@ -84,6 +84,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -95,6 +96,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -107,8 +109,9 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, test_if2.get_ip(1))
+ "-L %s -6" % (test_if2.get_ip(1))
})
netperf_cli_udp6 = ctl.get_module("Netperf",
options={
@@ -119,8 +122,9 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, test_if2.get_ip(1))
+ "-L %s -6" % (test_if2.get_ip(1))
})
ctl.wait(15)
@@ -248,7 +252,7 @@ netperf_srv.update_options({"bind" : test_if2.get_ip(0)})
netperf_srv6.update_options({"bind" : test_if2.get_ip(1)})
-p_opts = "-i %s -L %s" % (nperf_max_runs, test_if1.get_ip(0))
+p_opts = "-L %s" % (test_if1.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
@@ -259,10 +263,10 @@ netperf_cli_udp.update_options({"netperf_server" : test_if2.get_ip(0),
"netperf_opts" : p_opts})
netperf_cli_tcp6.update_options({"netperf_server" : test_if2.get_ip(1),
- "netperf_opts" : "-i %s -L %s -6" % (nperf_max_runs, test_if1.get_ip(1))})
+ "netperf_opts" : "-L %s -6" % (test_if1.get_ip(1))})
netperf_cli_udp6.update_options({"netperf_server" : test_if2.get_ip(1),
- "netperf_opts" : "-i %s -L %s -6" % (nperf_max_runs, test_if1.get_ip(1))})
+ "netperf_opts" : "-L %s -6" % (test_if1.get_ip(1))})
for setting in offload_settings:
dev_features = ""
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
index 521b268..742bc1a 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
@@ -105,8 +105,9 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, g3_guestnic.get_ip(0))
+ "runs": nperf_max_runs,
+ "netperf_opts" : "-L %s" %
+ (g3_guestnic.get_ip(0))
})
netperf_cli_udp = ctl.get_module("Netperf",
@@ -117,8 +118,9 @@ netperf_cli_udp = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, g3_guestnic.get_ip(0))
+ "runs": nperf_max_runs,
+ "netperf_opts" : "-L %s" %
+ (g3_guestnic.get_ip(0))
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
@@ -130,8 +132,9 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, g3_guestnic.get_ip(1))
+ "-L %s -6" % (g3_guestnic.get_ip(1))
})
netperf_cli_udp6 = ctl.get_module("Netperf",
@@ -143,8 +146,9 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, g3_guestnic.get_ip(1))
+ "-L %s -6" % (g3_guestnic.get_ip(1))
})
ping_mod_bad = ctl.get_module("IcmpPing",
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
index 27bc63b..bf67b77 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
@@ -74,7 +74,7 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
-p_opts = "-i %s -L %s" % (nperf_max_runs, h2_vlan10.get_ip(0))
+p_opts = "-L %s" % (h2_vlan10.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s" % nperf_cpupin
@@ -86,6 +86,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -97,6 +98,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -109,8 +111,9 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
+ "-L %s -6" % (h2_vlan10.get_ip(1))
})
netperf_cli_udp6 = ctl.get_module("Netperf",
@@ -122,8 +125,9 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
+ "-L %s -6" % (h2_vlan10.get_ip(1))
})
ctl.wait(15)
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
index 3284851..1050871 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
@@ -73,7 +73,7 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
-p_opts = "-i %s -L %s" % (nperf_max_runs, h2_vlan10.get_ip(0))
+p_opts = "-L %s" % (h2_vlan10.get_ip(0))
if nperf_cpupin:
p_opts += " -T%s" % nperf_cpupin
@@ -85,6 +85,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -96,6 +97,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" : p_opts
})
@@ -108,8 +110,9 @@ netperf_cli_tcp6 = ctl.get_module("Netperf",
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
+ "-L %s -6" % (h2_vlan10.get_ip(1))
})
netperf_cli_udp6 = ctl.get_module("Netperf",
@@ -121,8 +124,9 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"cpu_util" : nperf_cpu_util,
+ "runs": nperf_max_runs,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
+ "-L %s -6" % (h2_vlan10.get_ip(1))
})
ctl.wait(15)
diff --git a/test_modules/Netperf.py b/test_modules/Netperf.py
index 10c993b..4ff8643 100644
--- a/test_modules/Netperf.py
+++ b/test_modules/Netperf.py
@@ -36,12 +36,7 @@ class Netperf(TestGeneric):
self._family = self.get_opt("family")
self._cpu_util = self.get_opt("cpu_util")
self._num_parallel = int(self.get_opt("num_parallel", default=1))
-
self._runs = self.get_opt("runs", default=1)
- if self._runs > 1 and self._confidence is not None:
- logging.warning("Ignoring 'runs' because 'confidence' "\
- "was specified.")
- self._runs = 1
self._threshold = self._parse_threshold(self.get_opt("threshold"))
self._threshold_deviation = self._parse_threshold(
@@ -91,6 +86,9 @@ class Netperf(TestGeneric):
confidence level that Netperf should try to achieve
"""
cmd += " -I %s" % self._confidence
+ if self._runs >= 3:
+ cmd += " -i %d,%d" % (self._runs, self._runs)
+ self._runs = 1
if self._cpu_util is not None:
if self._cpu_util.lower() == "both":
--
2.6.2
8 years
[PATCH 1/4] NetTestCommand: extend format_res_data for lists
by Ondrej Lichtner
From: Ondrej Lichtner <olichtne(a)redhat.com>
This extends the format_res_data method to support lists. This is very
usefull for test modules that return multiple entries of result data,
for example Netperf with multiple runs.
Signed-off-by: Ondrej Lichtner <olichtne(a)redhat.com>
---
lnst/Common/NetTestCommand.py | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/lnst/Common/NetTestCommand.py b/lnst/Common/NetTestCommand.py
index 7385e47..409076b 100644
--- a/lnst/Common/NetTestCommand.py
+++ b/lnst/Common/NetTestCommand.py
@@ -332,6 +332,13 @@ class NetTestCommandGeneric(object):
if type(value) == dict:
formatted_data += level*4*" " + str(key) + ":\n"
formatted_data += self.format_res_data(value, level+1)
+ if type(value) == list:
+ formatted_data += level*4*" " + str(key) + ":\n"
+ for i in range(0, len(value)):
+ formatted_data += (level+1)*4*" " +\
+ "item %d:" % (i+1) + "\n"
+ formatted_data += self.format_res_data(value[i],
+ level+2)
else:
formatted_data += level*4*" " + str(key) + ":" + \
(max_key_len-len(key))*" " + \
--
2.6.2
8 years
[PATCH] recipes: add missing hash ignores to phase1 virtual tests
by Jan Tluka
I forgot to add tap device MAC addresses and dev names to hash_ignore in
all TCP_STREAM test. Without this patch the hashes will change between test
runs.
Signed-off-by: Jan Tluka <jtluka(a)redhat.com>
---
.../regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py | 8 ++++++--
recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py | 8 ++++++--
recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py | 8 ++++++--
3 files changed, 18 insertions(+), 6 deletions(-)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
index 4ad0dc9..266530c 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
@@ -233,7 +233,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
@@ -287,7 +289,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
index ec2400b..ee78d7d 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
@@ -161,7 +161,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
@@ -212,7 +214,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
index 8b235f8..a8d99dd 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
@@ -161,7 +161,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
@@ -212,7 +214,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
--
2.4.3
8 years
[PATCH v3] test_modules/netperf: Add support for measuring CPU utilization, cleaner parsing of netperf output
by Jiri Prochazka
This patch adds support for measuring both local and remote CPU utilization:
New option for netperf client have been added:
cpu_util - when set to "local", netperf is run with -c argument, enabling measure of local CPU utilization during run,
when set to "remote", netperf is run with -C argument, enabling measure of remote CPU utilization during run,
when set to "both", netperf is run with both -c and -C arguments
Parsing of throughput and confidence interval has been made cleaner:
Using omni netperf output, all relevant data are now stored in key=val format,
which can be parsed more easily and is the same for all netperf test types.
Changes in v2:
Changed format of cpu_util argument (described above)
Renamed keys in res_val dict to from loc_cpu_util and rem_cpu util
to LOCAL_CPU_UTIL and REMOTE_CPU_UTIL
Fixed incorrect real confidence value, now the touple correctly
returns (CONFIDENCE_LEVEL, THROUGHPUT_CONFIDENCE_INTERVAL/2)
Changes in v3:
Removed redundant error value parsing from _parse_confidence method
Signed-off-by: Jiri Prochazka <jprochaz(a)redhat.com>
---
test_modules/Netperf.py | 89 ++++++++++++++++++++++++-------------------------
1 file changed, 43 insertions(+), 46 deletions(-)
diff --git a/test_modules/Netperf.py b/test_modules/Netperf.py
index 868cca0..49340b3 100644
--- a/test_modules/Netperf.py
+++ b/test_modules/Netperf.py
@@ -34,6 +34,7 @@ class Netperf(TestGeneric):
self._confidence = self.get_opt("confidence")
self._bind = self.get_opt("bind", opt_type="addr")
self._family = self.get_opt("family")
+ self._cpu_util = self.get_opt("cpu_util")
self._runs = self.get_opt("runs", default=1)
if self._runs > 1 and self._confidence is not None:
@@ -61,7 +62,8 @@ class Netperf(TestGeneric):
composes commands for netperf and netserver based on xml recipe
"""
if self._role == "client":
- cmd = "netperf -H %s -f k" % self._netperf_server
+ # -P 0 disables banner header of output
+ cmd = "netperf -H %s -f k -P 0" % self._netperf_server
if self._port is not None:
"""
client connects on this port
@@ -89,11 +91,22 @@ class Netperf(TestGeneric):
"""
cmd += " -I %s" % self._confidence
+ if self._cpu_util is not None:
+ if self._cpu_util.lower() == "both":
+ cmd += " -c -C"
+ elif self._cpu_util.lower() == "local":
+ cmd += " -c"
+ elif self._cpu_util.lower() == "remote":
+ cmd += " -C"
+
if self._netperf_opts is not None:
"""
custom options for netperf
"""
cmd += " %s" % self._netperf_opts
+ # Print only relevant output
+ cmd += ' -- -k "THROUGHPUT, LOCAL_CPU_UTIL, REMOTE_CPU_UTIL, CONFIDENCE_LEVEL, THROUGHPUT_CONFID"'
+
elif self._role == "server":
cmd = "netserver -D"
if self._bind is not None:
@@ -114,58 +127,43 @@ class Netperf(TestGeneric):
return cmd
def _parse_output(self, output):
- if self._testname == "UDP_STREAM":
- # pattern for UDP_STREAM throughput output
- # decimal float decimal (float)
- pattern_udp_stream = "\d+\s+\d+\.\d+\s+\d+\s+(\d+(\.\d+){0,1})\n"
- r2 = re.search(pattern_udp_stream, output.lower())
- elif self._testname == "TCP_STREAM":
- # pattern for TCP_STREAM throughput output
- # decimal decimal decimal float (float)
- pattern_tcp_stream = "\d+\s+\d+\s+\d+\s+\d+\.\d+\s+(\d+(\.\d+){0,1})"
- r2 = re.search(pattern_tcp_stream, output.lower())
- elif self._testname == "TCP_RR" or self._testname == "UDP_RR"\
- or self._testname == "SCTP_RR":
- # pattern for TCP_RR, UDP_RR and SCTP_RR throughput output
- # decimal decimal decimal decimal float (float)
- pattern_tcp_rr = "\d+\s+\d+\s+\d+\s+\d+\s+\d+\.\d+\s+(\d+(\.\d+){0,1})"
- r2 = re.search(pattern_tcp_rr, output.lower())
- else:
- # pattern for SCTP streams and other tests
- # decimal decimal decimal float (float)
- pattern_sctp = "\d+\s+\d+\s+\d+\s+\d+\.\d+\s+(\d+(\.\d+){0,1})"
- r2 = re.search(pattern_sctp, output.lower())
+ res_val = {}
- if r2 is None:
+ pattern_throughput = "THROUGHPUT=(\d+\.\d+)"
+ throughput = re.search(pattern_throughput, output)
+
+ if throughput is None:
rate_in_kb = 0.0
else:
- rate_in_kb = float(r2.group(1))
+ rate_in_kb = float(throughput.group(1))
+
+ res_val["rate"] = rate_in_kb*1000
+ res_val["unit"] = "bps"
+
+ if self._cpu_util is not None:
+ if self._cpu_util == "local" or self._cpu_util == "both":
+ pattern_loc_cpu_util = "LOCAL_CPU_UTIL=([-]?\d+\.\d+)"
+ loc_cpu_util = re.search(pattern_loc_cpu_util, output)
+ res_val["LOCAL_CPU_UTIL"] = float(loc_cpu_util.group(1))
+
+ if self._cpu_util == "remote" or self._cpu_util == "both":
+ pattern_rem_cpu_util = "REMOTE_CPU_UTIL=([-]?\d+\.\d+)"
+ rem_cpu_util = re.search(pattern_rem_cpu_util, output)
+ res_val["REMOTE_CPU_UTIL"] = float(rem_cpu_util.group(1))
if self._confidence is not None:
confidence = self._parse_confidence(output)
- return {"rate": rate_in_kb*1000,
- "unit": "bps",
- "confidence": confidence}
- else:
- return {"rate": rate_in_kb*1000,
- "unit": "bps"}
+ res_val["confidence"] = confidence
+
+ return res_val
def _parse_confidence(self, output):
- normal_pattern = r'\+/-(\d+\.\d*)% @ (\d+)% conf\.'
- warning_pattern = r'!!! Confidence intervals: Throughput\s+: (\d+\.\d*)%'
- normal_confidence = re.search(normal_pattern, output)
- warning_confidence = re.search(warning_pattern, output)
-
- if normal_confidence is None:
- logging.error("Failed to parse confidence!!")
- return (0, 0.0)
-
- if warning_confidence is None:
- real_confidence = (float(normal_confidence.group(2)),
- float(normal_confidence.group(1)))
- else:
- real_confidence = (float(normal_confidence.group(2)),
- float(warning_confidence.group(1))/2)
+ pattern_throughput_confid = "THROUGHPUT_CONFID=([-]?\d+\.\d+)"
+ pattern_confidence_level = "CONFIDENCE_LEVEL=(\d+)"
+ throughput_confid = float(re.search(pattern_throughput_confid, output).group(1))
+ confidence_level = int(re.search(pattern_confidence_level, output).group(1))
+
+ real_confidence = (confidence_level, throughput_confid/2)
return real_confidence
@@ -216,7 +214,6 @@ class Netperf(TestGeneric):
"throughput option"
return (False, res_data)
threshold_rate = float(r1.group(1))
- threshold_unit_size = ""
threshold_unit_type = "tps"
return {"rate": threshold_rate,
--
2.4.3
8 years
[RFC] LNST Python Recipe (PyRecipe) Draft
by Jiri Prochazka
LNST Python Recipe (PyRecipe) Draft
===================================
Format of Execution
-------------------
Option 1)
lnst-ctl $OPTS $ARGS
Example of execution:
lnst-ctl -d -A ipv=ipv4 run ping_test.py netperf_test.py
Pros and cons:
+ easy execution of multiple PyRecipes
+ parsing of $OPTS remains unchanged
+ no issues with config files
+ allowed mixing of XML recipes and PyRecipes
- parsing of files from command line will have to be changed
- XML and PyRecipes will need different network topology parsing and
execution of tasks
My thoughts:
This preserves the whole execution format and all it's advantages, such
as execution of multiple recipes in one run, parsing of opts, config files,
etc.
However one big question about this format is, how the PyRecipe would
be parsed and run if we want to keep XML recipes (at least for now).
Option 2)
python recipe.py $OPTS
Example of execution:
python ping_test.py -d -A ipv=ipv4
or
chmod +x ping_test
./ping_test.py -d -A ipv=ipv4
Pros and cons:
+ cleaner execution format when executing one PyRecipe
- parsing of $OPTS will have to be modified to a public method callable
both from lnst-ctl (for XML recipes) and PyRecipe file
- in fact, the whole lnst-ctl and NetTestController class should be
refactorized because running XML recipes would be different from PyRecipes
and we want to support both variants
- config files will have to be either in default location /etc/ or
passed via -c option
- for executing of multiple PyRecipes, some wrappers/scripts would have
to be created
My thoughts:
Although the first idea of using this format seemed nice, overall it
looks like a lot of things would have to be changes to make this work and I
don't see many pros.
Option 3)
support both formats
My thoughts:
I don't think this is necessary and it would need a ton of work to make
it work
My two cents:
I would go for option 1. We could go for supporting option 2 as well
later, when there is more time and reasons for it. I think that right now,
this format suits better our use-case scenarios we use with ENRT.
Please, express your opinion on this matter, so we can start working on
this ASAP
--
Best regards,
Jiri Prochazka
LNST Developer
| www.lnst-project.org
+420 532 294 633 | jprochaz(a)redhat.com
Red Hat Czech | Purkyňova 71/99, 612 00 Brno
8 years
[PATCH 2/2] recipes: adding pin_dev_irqs to regression tests
by Jan Tluka
While tuning the regression tests we have found out that keeping NIC IRQs on
one CPU gives stable results. This patch uses pin_dev_irqs test tool to lock
NIC IRQs to CPU#0.
Signed-off-by: Jan Tluka <jtluka(a)redhat.com>
---
recipes/regression_tests/phase1/3_vlans.py | 14 +++++++++--
.../regression_tests/phase1/3_vlans_over_bond.py | 15 ++++++++++--
recipes/regression_tests/phase1/bonding_test.py | 27 +++++++++++++++++++---
.../phase1/virtual_bridge_2_vlans_over_bond.py | 12 ++++++++++
.../phase1/virtual_bridge_vlan_in_guest.py | 12 +++++++++-
.../phase1/virtual_bridge_vlan_in_host.py | 10 +++++++-
.../regression_tests/phase2/3_vlans_over_team.py | 14 +++++++++--
recipes/regression_tests/phase2/team_test.py | 25 ++++++++++++++++++--
...l_ovs_bridge_2_vlans_over_active_backup_bond.py | 10 ++++++++
.../phase2/virtual_ovs_bridge_vlan_in_guest.py | 11 ++++++++-
.../phase2/virtual_ovs_bridge_vlan_in_host.py | 11 ++++++++-
11 files changed, 146 insertions(+), 15 deletions(-)
diff --git a/recipes/regression_tests/phase1/3_vlans.py b/recipes/regression_tests/phase1/3_vlans.py
index c4d229b..e807ed4 100644
--- a/recipes/regression_tests/phase1/3_vlans.py
+++ b/recipes/regression_tests/phase1/3_vlans.py
@@ -15,8 +15,10 @@ product_name = ctl.get_alias("product_name")
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
# ------
# TESTS
@@ -49,6 +51,14 @@ for vlan in vlans:
vlan_if2 = m2.get_interface(vlan)
vlan_if2.set_mtu(mtu)
+if nperf_cpupin:
+ # this will pin devices irqs to cpu #0
+ m1.run("./pin_dev_irqs.sh %s %s" % (m1_phy1.get_devname(), 0),
+ tool="pin_dev_irqs")
+
+ m2.run("./pin_dev_irqs.sh %s %s" % (m2_phy1.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
ping_mod = ctl.get_module("IcmpPing",
diff --git a/recipes/regression_tests/phase1/3_vlans_over_bond.py b/recipes/regression_tests/phase1/3_vlans_over_bond.py
index e998480..19b5d67 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/3_vlans_over_bond.py
@@ -15,8 +15,10 @@ product_name = ctl.get_alias("product_name")
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
# ------
# TESTS
@@ -50,6 +52,15 @@ for vlan in vlans:
vlan_if2 = m2.get_interface(vlan)
vlan_if2.set_mtu(mtu)
+if nperf_cpupin:
+ # this will pin devices irqs to cpu #0
+ for phy_dev in [ m1_phy1, m1_phy2 ]:
+ m1.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+
+ m2.run("./pin_dev_irqs.sh %s %s" % (m2_phy1.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
ping_mod = ctl.get_module("IcmpPing",
diff --git a/recipes/regression_tests/phase1/bonding_test.py b/recipes/regression_tests/phase1/bonding_test.py
index 8909ca0..56ca632 100644
--- a/recipes/regression_tests/phase1/bonding_test.py
+++ b/recipes/regression_tests/phase1/bonding_test.py
@@ -15,9 +15,10 @@ product_name = ctl.get_alias("product_name")
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
# ------
# TESTS
@@ -42,6 +43,17 @@ test_if1.set_mtu(mtu)
test_if2 = m2.get_interface("test_if")
test_if2.set_mtu(mtu)
+m1_phy1 = m1.get_interface("eth1")
+m1_phy2 = m1.get_interface("eth2")
+
+m2_phydevs = []
+if test_if2.get_driver().get_val() == "bonding":
+ m2_phy1 = m2.get_interface("eth1")
+ m2_phy2 = m2.get_interface("eth2")
+ m2_phydevs.extend([m2_phy1, m2_phy2])
+else:
+ m2_phydevs.append(test_if2)
+
ping_mod = ctl.get_module("IcmpPing",
options={
"addr" : test_if2.get_ip(0),
@@ -118,6 +130,15 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"-i %s -L %s -6" % (nperf_max_runs, test_if2.get_ip(1))
})
+if nperf_cpupin:
+ # this will pin devices irqs to cpu #0
+ for phy_dev in [ m1_phy1, m1_phy2 ]:
+ m1.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+ for phy_dev in m2_phydevs:
+ m2.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
for setting in offload_settings:
diff --git a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
index 8b580a9..68a5833 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
@@ -14,6 +14,7 @@ product_name = ctl.get_alias("product_name")
# Host 1 + guests 1 and 2
h1 = ctl.get_host("host1")
+h1.sync_resources(tools=["pin_dev_irqs"])
g1 = ctl.get_host("guest1")
g1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
g2 = ctl.get_host("guest2")
@@ -21,6 +22,7 @@ g2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
# Host 2 + guests 3 and 4
h2 = ctl.get_host("host2")
+h2.sync_resources(tools=["pin_dev_irqs"])
g3 = ctl.get_host("guest3")
g3.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
g4 = ctl.get_host("guest4")
@@ -42,6 +44,7 @@ nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+
mtu = ctl.get_alias("mtu")
enable_udp_perf = ctl.get_alias("enable_udp_perf")
@@ -198,6 +201,15 @@ g2.get_interface("guestnic").set_mtu(mtu)
g3.get_interface("guestnic").set_mtu(mtu)
g4.get_interface("guestnic").set_mtu(mtu)
+
+# this will pin devices irqs to cpu #0
+for phy_dev in [ h1_nic1, h1_nic2 ]:
+ h1.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+for phy_dev in [ h2_nic1, h2_nic2 ]:
+ h2.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
for setting in offload_settings:
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
index de46b51..317a64c 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
@@ -13,12 +13,14 @@ perf_api = ctl.connect_PerfRepo(mapping_file)
product_name = ctl.get_alias("product_name")
h1 = ctl.get_host("host1")
+h1.sync_resources(tools=["pin_dev_irqs"])
g1 = ctl.get_host("guest1")
h2 = ctl.get_host("host2")
g1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-h2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
+h2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
# ------
# TESTS
@@ -134,6 +136,14 @@ g1.get_interface("vlan10").set_mtu(mtu)
h2.get_interface("nic").set_mtu(mtu)
+
+if nperf_cpupin:
+ # this will pin devices irqs to cpu #0
+ h1.run("./pin_dev_irqs.sh %s %s" % (h1_nic.get_devname(), 0),
+ tool="pin_dev_irqs")
+ h2.run("./pin_dev_irqs.sh %s %s" % (h2_nic.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
for setting in offload_settings:
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
index 1ea1d46..947d8f8 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
@@ -13,12 +13,14 @@ perf_api = ctl.connect_PerfRepo(mapping_file)
product_name = ctl.get_alias("product_name")
h1 = ctl.get_host("host1")
+h1.sync_resources(tools=["pin_dev_irqs"])
g1 = ctl.get_host("guest1")
h2 = ctl.get_host("host2")
g1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-h2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
+h2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
# ------
# TESTS
@@ -134,6 +136,12 @@ g1.get_interface("guestnic").set_mtu(mtu)
h2.get_interface("nic").set_mtu(mtu)
h2.get_interface("vlan10").set_mtu(mtu)
+# this will pin devices irqs to cpu #0
+h1.run("./pin_dev_irqs.sh %s %s" % (h1_nic.get_devname(), 0),
+ tool="pin_dev_irqs")
+h2.run("./pin_dev_irqs.sh %s %s" % (h2_nic.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
for setting in offload_settings:
diff --git a/recipes/regression_tests/phase2/3_vlans_over_team.py b/recipes/regression_tests/phase2/3_vlans_over_team.py
index de7f955..1c800bc 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_team.py
+++ b/recipes/regression_tests/phase2/3_vlans_over_team.py
@@ -15,8 +15,10 @@ product_name = ctl.get_alias("product_name")
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
# ------
# TESTS
@@ -50,6 +52,14 @@ for vlan in vlans:
vlan_if2 = m2.get_interface(vlan)
vlan_if2.set_mtu(mtu)
+if nperf_cpupin:
+ # this will pin devices irqs to cpu #0
+ for phy_dev in (m1_phy1, m1_phy2):
+ m1.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+
+ m2.run("./pin_dev_irqs.sh %s %s" % (m2_phy1.get_devname(), 0),
+ tool="pin_dev_irqs")
ctl.wait(15)
diff --git a/recipes/regression_tests/phase2/team_test.py b/recipes/regression_tests/phase2/team_test.py
index 50e8364..3aa7574 100644
--- a/recipes/regression_tests/phase2/team_test.py
+++ b/recipes/regression_tests/phase2/team_test.py
@@ -15,8 +15,10 @@ product_name = ctl.get_alias("product_name")
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
# ------
# TESTS
@@ -41,6 +43,16 @@ test_if1.set_mtu(mtu)
test_if2 = m2.get_interface("test_if")
test_if2.set_mtu(mtu)
+m1_phy1 = m1.get_interface("eth1")
+m1_phy2 = m1.get_interface("eth2")
+
+m2_phydevs = []
+if test_if2.get_driver().get_val() in ["team", "bonding"]:
+ m2_phy1 = m2.get_interface("eth1")
+ m2_phy2 = m2.get_interface("eth2")
+ m2_phydevs.extend([m2_phy1, m2_phy2])
+else:
+ m2_phydevs.append(test_if2)
ping_mod = ctl.get_module("IcmpPing",
options={
@@ -118,6 +130,15 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"-i %s -L %s -6" % (nperf_max_runs, test_if2.get_ip(1))
})
+if nperf_cpupin:
+ # this will pin devices irqs to cpu #0
+ for phy_dev in (m1_phy1, m1_phy2):
+ m1.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+ for phy_dev in m2_phydevs:
+ m2.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
for setting in offload_settings:
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
index 6f02921..200df20 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
@@ -14,6 +14,7 @@ product_name = ctl.get_alias("product_name")
# Host 1 + guests 1 and 2
h1 = ctl.get_host("host1")
+h1.sync_resources(tools=["pin_dev_irqs"])
g1 = ctl.get_host("guest1")
g1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
g2 = ctl.get_host("guest2")
@@ -21,6 +22,7 @@ g2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
# Host 2 + guests 3 and 4
h2 = ctl.get_host("host2")
+h2.sync_resources(tools=["pin_dev_irqs"])
g3 = ctl.get_host("guest3")
g3.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
g4 = ctl.get_host("guest4")
@@ -175,6 +177,14 @@ ping_mod6_bad2 = ctl.get_module("Icmp6Ping",
"interval" : 0.1
})
+# this will pin devices irqs to cpu #0
+for phy_dev in [ h1_nic1, h1_nic2 ]:
+ h1.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+for phy_dev in [ h2_nic1, h2_nic2 ]:
+ h2.run("./pin_dev_irqs.sh %s %s" % (phy_dev.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
for setting in offload_settings:
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
index 32c1335..8acc0cc 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
@@ -13,12 +13,14 @@ perf_api = ctl.connect_PerfRepo(mapping_file)
product_name = ctl.get_alias("product_name")
h1 = ctl.get_host("host1")
+h1.sync_resources(tools=["pin_dev_irqs"])
g1 = ctl.get_host("guest1")
h2 = ctl.get_host("host2")
g1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-h2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
+h2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
# ------
# TESTS
@@ -121,6 +123,13 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
})
+if nperf_cpupin:
+ # this will pin devices irqs to cpu #0
+ h1.run("./pin_dev_irqs.sh %s %s" % (h1_nic.get_devname(), 0),
+ tool="pin_dev_irqs")
+ h2.run("./pin_dev_irqs.sh %s %s" % (h2_nic.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
for setting in offload_settings:
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
index 209b85a..713a4ce 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
@@ -18,7 +18,9 @@ g1 = ctl.get_host("guest1")
h2 = ctl.get_host("host2")
g1.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
-h2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"])
+h1.sync_resources(tools=["pin_dev_irqs"])
+h2.sync_resources(modules=["IcmpPing", "Icmp6Ping", "Netperf"],
+ tools=["pin_dev_irqs"])
# ------
# TESTS
@@ -119,6 +121,13 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
"netperf_opts" :
"-i %s -L %s -6" % (nperf_max_runs, h2_vlan10.get_ip(1))
})
+
+# this will pin devices irqs to cpu #0
+h1.run("./pin_dev_irqs.sh %s %s" % (h1_nic.get_devname(), 0),
+ tool="pin_dev_irqs")
+h2.run("./pin_dev_irqs.sh %s %s" % (h2_nic.get_devname(), 0),
+ tool="pin_dev_irqs")
+
ctl.wait(15)
for setting in offload_settings:
--
2.4.3
8 years