Report: Set NIC limit for x553
[csit.git] / resources / tools / presentation / generator_plots.py
index 0f66099..32f146b 100644 (file)
@@ -144,11 +144,22 @@ def plot_performance_box(plot, input_data):
     df.head()
     y_max = list()
     for i, col in enumerate(df.columns):
-        name = "{0}. {1} ({2} run{3})".\
-            format(i + 1,
-                   col.lower().replace('-ndrpdr', ''),
-                   nr_of_samples[i],
-                   's' if nr_of_samples[i] > 1 else '')
+        name = "{nr}. ({samples:02d} run{plural}) {name}".\
+            format(nr=(i + 1),
+                   samples=nr_of_samples[i],
+                   plural='s' if nr_of_samples[i] > 1 else '',
+                   name=col.lower().replace('-ndrpdr', ''))
+        if len(name) > 50:
+            name_lst = name.split('-')
+            name = ""
+            split_name = True
+            for segment in name_lst:
+                if (len(name) + len(segment) + 1) > 50 and split_name:
+                    name += "<br>    "
+                    split_name = False
+                name += segment + '-'
+            name = name[:-1]
+
         logging.debug(name)
         traces.append(plgo.Box(x=[str(i + 1) + '.'] * len(df[col]),
                                y=[y / 1000000 if y else None for y in df[col]],
@@ -287,13 +298,23 @@ def plot_latency_error_bars(plot, input_data):
     y_maxs = list()
     nr_of_samples = list()
     for key, val in y_sorted.items():
-        key = "-".join(key.split("-")[1:-1])
-        x_vals.append(key)  # dir 1
+        name = "-".join(key.split("-")[1:-1])
+        if len(name) > 50:
+            name_lst = name.split('-')
+            name = ""
+            split_name = True
+            for segment in name_lst:
+                if (len(name) + len(segment) + 1) > 50 and split_name:
+                    name += "<br>"
+                    split_name = False
+                name += segment + '-'
+            name = name[:-1]
+        x_vals.append(name)  # dir 1
         y_vals.append(mean(val[1]) if val[1] else None)
         y_mins.append(mean(val[0]) if val[0] else None)
         y_maxs.append(mean(val[2]) if val[2] else None)
         nr_of_samples.append(len(val[1]) if val[1] else 0)
-        x_vals.append(key)  # dir 2
+        x_vals.append(name)  # dir 2
         y_vals.append(mean(val[4]) if val[4] else None)
         y_mins.append(mean(val[3]) if val[3] else None)
         y_maxs.append(mean(val[5]) if val[5] else None)
@@ -309,18 +330,18 @@ def plot_latency_error_bars(plot, input_data):
 
     for idx in range(len(x_vals)):
         if not bool(int(idx % 2)):
-            direction = "West - East"
+            direction = "West-East"
         else:
-            direction = "East - West"
-        hovertext = ("Test: {test}<br>"
-                     "Direction: {dir}<br>"
-                     "No. of Runs: {nr}<br>".format(test=x_vals[idx],
-                                                    dir=direction,
-                                                    nr=nr_of_samples[idx]))
+            direction = "East-West"
+        hovertext = ("No. of Runs: {nr}<br>"
+                     "Test: {test}<br>"
+                     "Direction: {dir}<br>".format(test=x_vals[idx],
+                                                   dir=direction,
+                                                   nr=nr_of_samples[idx]))
         if isinstance(y_maxs[idx], float):
             hovertext += "Max: {max:.2f}uSec<br>".format(max=y_maxs[idx])
         if isinstance(y_vals[idx], float):
-            hovertext += "Avg: {avg:.2f}uSec<br>".format(avg=y_vals[idx])
+            hovertext += "Mean: {avg:.2f}uSec<br>".format(avg=y_vals[idx])
         if isinstance(y_mins[idx], float):
             hovertext += "Min: {min:.2f}uSec".format(min=y_mins[idx])
 
@@ -467,6 +488,16 @@ def plot_throughput_speedup_analysis(plot, input_data):
         try:
             if test_vals["1"][1]:
                 name = "-".join(test_name.split('-')[1:-1])
+                if len(name) > 50:
+                    name_lst = name.split('-')
+                    name = ""
+                    split_name = True
+                    for segment in name_lst:
+                        if (len(name) + len(segment) + 1) > 50 and split_name:
+                            name += "<br>"
+                            split_name = False
+                        name += segment + '-'
+                    name = name[:-1]
 
                 vals[name] = dict()
                 y_val_1 = test_vals["1"][0] / 1000000.0
@@ -515,6 +546,8 @@ def plot_throughput_speedup_analysis(plot, input_data):
             limit = plot["limits"]["nic"]["xxv710"]
         elif "xl710" in test_name:
             limit = plot["limits"]["nic"]["xl710"]
+        elif "x553" in test_name:
+            limit = plot["limits"]["nic"]["x553"]
         else:
             limit = 0
         if limit > nic_limit:
@@ -664,9 +697,9 @@ def plot_throughput_speedup_analysis(plot, input_data):
             for idx in range(len(val["val"])):
                 htext = ""
                 if isinstance(val["val"][idx], float):
-                    htext += "Value: {0:.2f}Mpps<br>" \
-                             "No. of Runs: {1}<br>".format(val["val"][idx],
-                                                        val["count"][idx])
+                    htext += "No. of Runs: {1}<br>" \
+                             "Mean: {0:.2f}Mpps<br>".format(val["val"][idx],
+                                                            val["count"][idx])
                 if isinstance(val["diff"][idx], float):
                     htext += "Diff: {0:.0f}%<br>".format(round(val["diff"][idx]))
                 if isinstance(val["rel"][idx], float):
@@ -697,7 +730,7 @@ def plot_throughput_speedup_analysis(plot, input_data):
                                            color=COLORS[cidx],
                                            width=2,
                                            dash="dash"),
-                                       text=["perfect: {0:.2f}Mpps".format(y)
+                                       text=["Perfect: {0:.2f}Mpps".format(y)
                                              for y in val["ideal"]],
                                        hoverinfo="text"
                                        ))
@@ -774,11 +807,22 @@ def plot_http_server_performance_box(plot, input_data):
     df = pd.DataFrame(y_vals)
     df.head()
     for i, col in enumerate(df.columns):
-        name = "{0}. {1} ({2} run{3})".\
-            format(i + 1,
-                   col.lower().replace('-cps', '').replace('-rps', ''),
-                   nr_of_samples[i],
-                   's' if nr_of_samples[i] > 1 else '')
+        name = "{nr}. ({samples:02d} run{plural}) {name}".\
+            format(nr=(i + 1),
+                   samples=nr_of_samples[i],
+                   plural='s' if nr_of_samples[i] > 1 else '',
+                   name=col.lower().replace('-ndrpdr', ''))
+        if len(name) > 50:
+            name_lst = name.split('-')
+            name = ""
+            split_name = True
+            for segment in name_lst:
+                if (len(name) + len(segment) + 1) > 50 and split_name:
+                    name += "<br>    "
+                    split_name = False
+                name += segment + '-'
+            name = name[:-1]
+
         traces.append(plgo.Box(x=[str(i + 1) + '.'] * len(df[col]),
                                y=df[col],
                                name=name,