Enable rocpd output format with rocprofiler sdk (#790)
* Add `rocpd` choice for `--format-rocprof-output` option
* Add rocpd_data.py which defines SQL queries to extract data from rocpd database
* Use sqlite3 package to read the database
* Add `--retain-rocpd-output` option in profile mode to retain raw
rocpd database
* Add warning notice to say `--format-rocprof-output rocpd` will be
default in future release
For rocpd output:
* Use only `pmc_perf.csv` instead of reading individual coll_level results csv files
* Post process csv files using pandas in analysis mode instead of profile mode
* Use ACCUM counters instead of SQ_ACCUM_PREV_HIRES
* Add test cases for rocpd output format
* Fix code formatting issues
* Update CHANGELOG
[ROCm/rocprofiler-compute commit: 03d27c0ba0]
Цей коміт міститься в:
@@ -128,11 +128,13 @@ class OmniAnalyze_Base:
|
||||
if not normalization_filter:
|
||||
for k, v in self._arch_configs.items():
|
||||
parser.build_metric_value_string(
|
||||
v.dfs, v.dfs_type, self.__args.normal_unit
|
||||
v.dfs, v.dfs_type, self.__args.normal_unit, self._profiling_config
|
||||
)
|
||||
else:
|
||||
for k, v in self._arch_configs.items():
|
||||
parser.build_metric_value_string(v.dfs, v.dfs_type, normalization_filter)
|
||||
parser.build_metric_value_string(
|
||||
v.dfs, v.dfs_type, normalization_filter, self._profiling_config
|
||||
)
|
||||
|
||||
args = self.__args
|
||||
# Error checking for multiple runs and multiple kernel filters
|
||||
|
||||
@@ -47,6 +47,7 @@ class cli_analysis(OmniAnalyze_Base):
|
||||
self.get_args().spatial_multiplexing,
|
||||
self.get_args().kernel_verbose,
|
||||
self.get_args().verbose,
|
||||
self._profiling_config,
|
||||
)
|
||||
|
||||
if self.get_args().spatial_multiplexing:
|
||||
@@ -72,7 +73,11 @@ class cli_analysis(OmniAnalyze_Base):
|
||||
|
||||
# create the loaded table
|
||||
parser.load_table_data(
|
||||
workload=self._runs[d[0]], dir=d[0], is_gui=False, args=self.get_args()
|
||||
workload=self._runs[d[0]],
|
||||
dir=d[0],
|
||||
is_gui=False,
|
||||
args=self.get_args(),
|
||||
config=self._profiling_config,
|
||||
)
|
||||
|
||||
@demarcate
|
||||
|
||||
@@ -120,6 +120,7 @@ class webui_analysis(OmniAnalyze_Base):
|
||||
self.get_args().spatial_multiplexing,
|
||||
self.get_args().kernel_verbose,
|
||||
self.get_args().verbose,
|
||||
self._profiling_config,
|
||||
)
|
||||
|
||||
if self.get_args().spatial_multiplexing:
|
||||
@@ -168,6 +169,7 @@ class webui_analysis(OmniAnalyze_Base):
|
||||
dir=self.dest_dir,
|
||||
is_gui=True,
|
||||
args=self.get_args(),
|
||||
config=self._profiling_config,
|
||||
)
|
||||
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -300,6 +302,7 @@ class webui_analysis(OmniAnalyze_Base):
|
||||
self.get_args().spatial_multiplexing,
|
||||
self.get_args().kernel_verbose,
|
||||
args.verbose,
|
||||
self._profiling_config,
|
||||
)
|
||||
|
||||
if self.get_args().spatial_multiplexing:
|
||||
|
||||
Посилання в новій задачі
Заблокувати користувача