- if msg.message.count("Runtime:"):
- self._show_run_lookup_nr += 1
- if self._lookup_kw_nr == 1 and self._show_run_lookup_nr == 1:
- self._data["tests"][self._test_ID]["show-run"] = str()
- if self._lookup_kw_nr > 1:
- self._msg_type = None
- if self._show_run_lookup_nr > 0:
- message = str(msg.message).replace(' ', '').replace('\n', '').\
- replace("'", '"').replace('b"', '"').replace('u"', '"')[8:]
- runtime = loads(message)
- try:
- threads_nr = len(runtime[0]["clocks"])
- except (IndexError, KeyError):
- return
- tbl_hdr = ["Name", "Calls", "Vectors", "Suspends", "Clocks"]
- table = [[tbl_hdr, ] for _ in range(threads_nr)]
- for item in runtime:
- for idx in range(threads_nr):
+ if not "show-run" in self._data["tests"][self._test_ID].keys():
+ self._data["tests"][self._test_ID]["show-run"] = str()
+
+ if msg.message.count("stats runtime"):
+ host = str(re.search(self.REGEX_TC_PAPI_CLI, msg.message).\
+ group(1))
+ socket = str(re.search(self.REGEX_TC_PAPI_CLI, msg.message).\
+ group(2))
+ message = str(msg.message).replace(' ', '').replace('\n', '').\
+ replace("'", '"').replace('b"', '"').replace('u"', '"').\
+ split(":",1)[1]
+ runtime = loads(message)
+ try:
+ threads_nr = len(runtime[0]["clocks"])
+ except (IndexError, KeyError):
+ return
+ tbl_hdr = ["Name", "Calls", "Vectors", "Suspends", "Clocks",
+ "Vectors/Calls"]
+ table = [[tbl_hdr, ] for _ in range(threads_nr)]
+ for item in runtime:
+ for idx in range(threads_nr):
+ name = format(item["name"])
+ calls = format(item["calls"][idx])
+ vectors = format(item["vectors"][idx])
+ suspends = format(item["suspends"][idx])
+ if item["vectors"][idx] > 0:
+ clocks = format(
+ item["clocks"][idx]/item["vectors"][idx], ".2e")
+ elif item["calls"][idx] > 0:
+ clocks = format(
+ item["clocks"][idx]/item["calls"][idx], ".2e")
+ elif item["suspends"][idx] > 0:
+ clocks = format(
+ item["clocks"][idx]/item["suspends"][idx], ".2e")
+ else:
+ clocks = 0
+ if item["calls"][idx] > 0:
+ vectors_call = format(
+ item["vectors"][idx]/item["calls"][idx], ".2f")
+ else:
+ vectors_call = format(0, ".2f")
+ if int(calls) + int(vectors) + int(suspends):