perf: Add hoststack NSIM+LDPRELOAD+IPERF3 test suite
[csit.git] / resources / libraries / python / autogen / Regenerator.py
index d47680c..3ef4e85 100644 (file)
@@ -113,7 +113,7 @@ def check_suite_tag(suite_tag, prolog):
     """
     found = prolog.count(u"| " + suite_tag)
     if found != 1:
-        raise ValueError(f"Suite tag found {found} times for {suite_id}")
+        raise ValueError(f"Suite tag found {found} times for {suite_tag}")
 
 
 def add_default_testcases(testcase, iface, suite_id, file_out, tc_kwargs_list):
@@ -280,8 +280,8 @@ def write_default_files(in_filename, in_prolog, kwargs_list):
                 iface, suite_id, suite_tag = get_iface_and_suite_ids(
                     out_filename
                 )
-                # The next replace is probably a noop, but it is safer to maintain
-                # the same structure as for other edits.
+                # The next replace is probably a noop, but it is safer to
+                # maintain the same structure as for other edits.
                 out_prolog = replace_defensively(
                     out_prolog, old_suite_tag, suite_tag, 1,
                     f"Perf suite tag {old_suite_tag} should appear once.",
@@ -440,22 +440,52 @@ class Regenerator:
 
         min_frame_size = PROTOCOL_TO_MIN_FRAME_SIZE[protocol]
         default_kwargs_list = [
-            {u"frame_size": min_frame_size, u"phy_cores": 1},
-            {u"frame_size": min_frame_size, u"phy_cores": 2},
-            {u"frame_size": min_frame_size, u"phy_cores": 4},
-            {u"frame_size": 1518, u"phy_cores": 1},
-            {u"frame_size": 1518, u"phy_cores": 2},
-            {u"frame_size": 1518, u"phy_cores": 4},
-            {u"frame_size": 9000, u"phy_cores": 1},
-            {u"frame_size": 9000, u"phy_cores": 2},
-            {u"frame_size": 9000, u"phy_cores": 4},
-            {u"frame_size": u"IMIX_v4_1", u"phy_cores": 1},
-            {u"frame_size": u"IMIX_v4_1", u"phy_cores": 2},
-            {u"frame_size": u"IMIX_v4_1", u"phy_cores": 4}
+            {u"frame_size": min_frame_size, u"phy_cores": 1, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": min_frame_size, u"phy_cores": 2, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": min_frame_size, u"phy_cores": 4, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": 1518, u"phy_cores": 1, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": 1518, u"phy_cores": 2, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": 1518, u"phy_cores": 4, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": 9000, u"phy_cores": 1, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": 9000, u"phy_cores": 2, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": 9000, u"phy_cores": 4, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": u"IMIX_v4_1", u"phy_cores": 1, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": u"IMIX_v4_1", u"phy_cores": 2, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": u"IMIX_v4_1", u"phy_cores": 4, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"}
         ]
-        tcp_kwargs_list = [
-            {u"phy_cores": i, u"frame_size": 0} for i in (1, 2, 4)
+        hoststack_wrk_kwargs_list = [
+            {u"frame_size": 0, u"phy_cores": i, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"} for i in (1, 2, 4)
         ]
+        hoststack_iperf3_kwargs_list = [
+            {u"frame_size": 0, u"phy_cores": 1, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"frame_size": 0, u"phy_cores": 1, u"clients": 1,
+             u"streams": 10, u"bytes_str": u"1G"},
+        ]
+        hoststack_quic_kwargs_list = [
+            {u"phy_cores": 1, u"frame_size": 0, u"clients": 1,
+             u"streams": 1, u"bytes_str": u"10G"},
+            {u"phy_cores": 1, u"frame_size": 0, u"clients": 1,
+             u"streams": 10, u"bytes_str": u"1G"},
+            {u"phy_cores": 1, u"frame_size": 0, u"clients": 10,
+             u"streams": 1, u"bytes_str": u"1G"},
+            {u"phy_cores": 1, u"frame_size": 0, u"clients": 10,
+             u"streams": 10, u"bytes_str": u"100M"},
+        ]
+
         for in_filename in glob(pattern):
             if not self.quiet:
                 print(
@@ -480,7 +510,14 @@ class Regenerator:
             elif in_filename.endswith(u"-reconf.robot"):
                 write_reconf_files(in_filename, in_prolog, default_kwargs_list)
             elif in_filename[-10:] in (u"-cps.robot", u"-rps.robot"):
-                write_tcp_files(in_filename, in_prolog, tcp_kwargs_list)
+                write_tcp_files(in_filename, in_prolog,
+                                hoststack_wrk_kwargs_list)
+            elif in_filename[-10:] in (u"-bps.robot"):
+                if u"ldpreload-iperf3" in in_filename:
+                    hoststack_kwargs_list = hoststack_iperf3_kwargs_list
+                else:
+                    hoststack_kwargs_list = hoststack_quic_kwargs_list
+                write_tcp_files(in_filename, in_prolog, hoststack_kwargs_list)
             else:
                 raise RuntimeError(
                     f"Error in {in_filename}: non-primary suite type found."