aboutsummaryrefslogtreecommitdiffstats
path: root/csit.infra.dash/app/cdash/trending
diff options
context:
space:
mode:
authorTibor Frank <tifrank@cisco.com>2023-02-01 15:50:36 +0100
committerTibor Frank <tifrank@cisco.com>2023-02-03 09:20:24 +0100
commita214378b5d0589fcbd9a9cc8c9b25bce8a862cec (patch)
treebeb025afc4ca2133ef89126039dc25756d5298eb /csit.infra.dash/app/cdash/trending
parenta68514255a58ae6c982e40c47247abf64e58f3f4 (diff)
C-Dash: Add hoststack
Signed-off-by: Tibor Frank <tifrank@cisco.com> Change-Id: I5055bc785f5ba5c9b13ba83eaf646975cfe86ea4
Diffstat (limited to 'csit.infra.dash/app/cdash/trending')
-rw-r--r--csit.infra.dash/app/cdash/trending/graphs.py15
-rw-r--r--csit.infra.dash/app/cdash/trending/layout.py18
-rw-r--r--csit.infra.dash/app/cdash/trending/layout.yaml2
3 files changed, 24 insertions, 11 deletions
diff --git a/csit.infra.dash/app/cdash/trending/graphs.py b/csit.infra.dash/app/cdash/trending/graphs.py
index 79e2697f54..b6581e67f4 100644
--- a/csit.infra.dash/app/cdash/trending/graphs.py
+++ b/csit.infra.dash/app/cdash/trending/graphs.py
@@ -11,7 +11,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-"""
+"""Implementation of graphs for trending data.
"""
import plotly.graph_objects as go
@@ -68,14 +68,19 @@ def select_trending_data(data: pd.DataFrame, itm: dict) -> pd.DataFrame:
else:
return None
- core = str() if itm["dut"] == "trex" else f"{itm['core']}"
- ttype = "ndrpdr" if itm["testtype"] in ("ndr", "pdr") else itm["testtype"]
-
+ if itm["testtype"] in ("ndr", "pdr"):
+ test_type = "ndrpdr"
+ elif itm["testtype"] == "mrr":
+ test_type = "mrr"
+ elif itm["area"] == "hoststack":
+ test_type = "hoststack"
df = data.loc[(
- (data["test_type"] == ttype) &
+ (data["test_type"] == test_type) &
(data["passed"] == True)
)]
df = df[df.job.str.endswith(f"{topo}-{arch}")]
+ core = str() if itm["dut"] == "trex" else f"{itm['core']}"
+ ttype = "ndrpdr" if itm["testtype"] in ("ndr", "pdr") else itm["testtype"]
df = df[df.test_id.str.contains(
f"^.*[.|-]{nic}.*{itm['framesize']}-{core}-{drv}{itm['test']}-{ttype}$",
regex=True
diff --git a/csit.infra.dash/app/cdash/trending/layout.py b/csit.infra.dash/app/cdash/trending/layout.py
index 2d65567489..2a91bf4755 100644
--- a/csit.infra.dash/app/cdash/trending/layout.py
+++ b/csit.infra.dash/app/cdash/trending/layout.py
@@ -111,11 +111,10 @@ class Layout:
# Get structure of tests:
tbs = dict()
- for _, row in self._data[["job", "test_id"]].drop_duplicates().\
- iterrows():
+ cols = ["job", "test_id", "test_type", "tg_type"]
+ for _, row in self._data[cols].drop_duplicates().iterrows():
lst_job = row["job"].split("-")
dut = lst_job[1]
- ttype = lst_job[3]
tbed = "-".join(lst_job[-2:])
lst_test = row["test_id"].split(".")
if dut == "dpdk":
@@ -160,14 +159,23 @@ class Layout:
tbs[dut][infra][area][test]["frame-size"].append(
framesize.upper()
)
- if ttype == "mrr":
+ if row["test_type"] == "mrr":
if "MRR" not in tbs[dut][infra][area][test]["test-type"]:
tbs[dut][infra][area][test]["test-type"].append("MRR")
- elif ttype == "ndrpdr":
+ elif row["test_type"] == "ndrpdr":
if "NDR" not in tbs[dut][infra][area][test]["test-type"]:
tbs[dut][infra][area][test]["test-type"].extend(
("NDR", "PDR")
)
+ elif row["test_type"] == "hoststack":
+ if row["tg_type"] in ("iperf", "vpp"):
+ if "BPS" not in tbs[dut][infra][area][test]["test-type"]:
+ tbs[dut][infra][area][test]["test-type"].append("BPS")
+ elif row["tg_type"] == "ab":
+ if "CPS" not in tbs[dut][infra][area][test]["test-type"]:
+ tbs[dut][infra][area][test]["test-type"].extend(
+ ("CPS", "RPS")
+ )
self._spec_tbs = tbs
# Read from files:
diff --git a/csit.infra.dash/app/cdash/trending/layout.yaml b/csit.infra.dash/app/cdash/trending/layout.yaml
index bc11dde61f..5e41b03118 100644
--- a/csit.infra.dash/app/cdash/trending/layout.yaml
+++ b/csit.infra.dash/app/cdash/trending/layout.yaml
@@ -4,7 +4,7 @@ plot-trending-tput:
yaxis:
showticklabels: True
tickformat: ".3s"
- title: "Throughput [pps]"
+ title: "Throughput [pps|cps|rps|bps]"
hoverformat: ".5s"
gridcolor: "rgb(238, 238, 238)"
linecolor: "rgb(238, 238, 238)"