Files
rocm-systems/tests/rocprofv3/advanced-thread-trace/conftest.py
T
Nagaraj, Sriraksha d4a51e4102 Adding att v3 support (#84)
* Adding att v3 support

* misc fix

* bug fix

* Python linting workflow and rules

* fix regex

* Adding temporary args

* fix temporary args

* fix format

* remove att_perfcounters from test input

* Review comments (#163)

Co-authored-by: Giovanni Baraldi <gbaraldi@amd.com>

* Revert "Review comments (#163)"

This reverts commit 9ef0f8e5a4489d5581255e1b70ced2aef5c1c1d0.

* Address review comments 2

* review changes

* review comments

* review

* cmake alias

* review

* review

* review

* review

* Enabling percounter in v3 script

* review

* formatting

* formatting

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
Co-authored-by: Baraldi, Giovanni <Giovanni.Baraldi@amd.com>
Co-authored-by: Giovanni Baraldi <gbaraldi@amd.com>
2025-02-04 04:05:38 -06:00

60 lines
1.5 KiB
Python

#!/usr/bin/env python3
import csv
import pytest
import json
from rocprofiler_sdk.pytest_utils.dotdict import dotdict
from rocprofiler_sdk.pytest_utils import collapse_dict_list
from rocprofiler_sdk.pytest_utils.perfetto_reader import PerfettoReader
import re
import os
def pytest_addoption(parser):
parser.addoption(
"--input",
action="store",
help="Path to JSON file.",
)
parser.addoption(
"--code-object-input",
action="store",
help="Path to code object file.",
)
parser.addoption(
"--output-path",
action="store",
help="Output Path.",
)
@pytest.fixture
def json_data(request):
filename = request.config.getoption("--input")
with open(filename, "r") as inp:
return dotdict(collapse_dict_list(json.load(inp)))
@pytest.fixture
def output_path(request):
return request.config.getoption("--output-path")
@pytest.fixture
def code_object_file_path(request):
file_path = request.config.getoption("--code-object-input")
# hsa_file_load = re.compile(".*copy.hsaco$")
code_object_files = {}
code_object_memory = []
hsa_memory_load_pattern = "gfx[a-z0-9]+_copy_memory.hsaco"
for root, dirs, files in os.walk(file_path, topdown=True):
for file in files:
filename = os.path.join(root, file)
if re.search(hsa_memory_load_pattern, filename):
code_object_memory.append(filename)
code_object_files["hsa_memory_load"] = code_object_memory
return code_object_files