Move dispatch id patch to proper util func in utils. Enable in rocprofv2 post-processing

Signed-off-by: coleramos425 <colramos@amd.com>


[ROCm/rocprofiler-compute commit: e0556f32ab]
Этот коммит содержится в:
coleramos425
2024-04-01 13:42:30 -05:00
коммит произвёл Cole Ramos
родитель 22b596dc32
Коммит 55ebe7059c
2 изменённых файлов: 21 добавлений и 17 удалений
+8 -17
Просмотреть файл
@@ -24,7 +24,12 @@
import os
from omniperf_profile.profiler_base import OmniProfiler_Base
from utils.utils import demarcate, console_log, replace_timestamps
from utils.utils import (
demarcate,
console_log,
replace_timestamps,
fixup_rocprofv2_dispatch_ids,
)
class rocprof_v2_profiler(OmniProfiler_Base):
@@ -74,22 +79,6 @@ class rocprof_v2_profiler(OmniProfiler_Base):
else:
console_log("roofline", "Detected existing pmc_perf.csv")
@demarcate
def fixup_rocprofv2_dispatch_ids(self):
# Workaround for rocprofv2 being silly and using 1-based dispatch indicies
import pandas as pd
import glob
# first read pmc_perf
df = pd.read_csv(self.get_args().path + "/pmc_perf.csv")
df["Dispatch_ID"] -= 1
df.to_csv(self.get_args().path + "/pmc_perf.csv", index=False)
# next glob for *LEVEL*.csv
for f in glob.glob(self.get_args().path + "/*LEVEL*.csv"):
df = pd.read_csv(f)
df["Dispatch_ID"] -= 1
df.to_csv(f, index=False)
@demarcate
def post_processing(self):
"""Perform any post-processing steps prior to profiling."""
@@ -98,5 +87,7 @@ class rocprof_v2_profiler(OmniProfiler_Base):
if self.ready_to_profile:
# Manually join each pmc_perf*.csv output
self.join_prof()
# Correct dispatch ids
fixup_rocprofv2_dispatch_ids(self.get_args().path)
# Replace timestamp data to solve a known rocprof bug
replace_timestamps(self.get_args().path)
+13
Просмотреть файл
@@ -613,3 +613,16 @@ def set_locale_encoding():
exit=False,
)
console_error(error)
def fixup_rocprofv2_dispatch_ids(workload_dir):
# Workaround for rocprofv2 using 1-based dispatch indicies
# first read pmc_perf
df = pd.read_csv(workload_dir + "/pmc_perf.csv")
df["Dispatch_ID"] -= 1
df.to_csv(workload_dir + "/pmc_perf.csv", index=False)
# next glob for *LEVEL*.csv
for f in glob.glob(workload_dir + "/*LEVEL*.csv"):
df = pd.read_csv(f)
df["Dispatch_ID"] -= 1
df.to_csv(f, index=False)