diff --git a/src/omniperf b/src/omniperf index 0b1119b822..cbff84634b 100755 --- a/src/omniperf +++ b/src/omniperf @@ -30,6 +30,7 @@ import glob import pandas as pd from datetime import datetime from pathlib import Path as path +import warnings from parser import parse from utils import specs @@ -115,11 +116,14 @@ def isWorkloadEmpty(my_parser, path): def replace_timestamps(workload_dir): df_stamps = pd.read_csv(workload_dir + "/timestamps.csv") - df_pmc_perf = pd.read_csv(workload_dir + "/pmc_perf.csv") + if "BeginNs" in df_stamps.columns and "EndNs" in df_stamps.columns: + df_pmc_perf = pd.read_csv(workload_dir + "/pmc_perf.csv") - df_pmc_perf["BeginNs"] = df_stamps["BeginNs"] - df_pmc_perf["EndNs"] = df_stamps["EndNs"] - df_pmc_perf.to_csv(workload_dir + "/pmc_perf.csv", index=False) + df_pmc_perf["BeginNs"] = df_stamps["BeginNs"] + df_pmc_perf["EndNs"] = df_stamps["EndNs"] + df_pmc_perf.to_csv(workload_dir + "/pmc_perf.csv", index=False) + else: + warnings.warn("WARNING: Incomplete profiling data detected. Unable to update timestamps.") def gen_sysinfo(workload_name, workload_dir, ip_blocks, app_cmd, skip_roof):