2905fb5e95
* Temp: Fixing node id * source formatting (clang-format v11) (#709) Co-authored-by: ammarwa <3832908+ammarwa@users.noreply.github.com> * Using logical node id * Update agent.cpp * Update agent.cpp * Python formatting * Update run-ci.py * Update run-ci.py * Update continuous_integration.yml * Update continuous_integration.yml running directly using the prepared runner container * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update run-ci.py * Clean up * Fixing install paths * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Update continuous_integration.yml * Fixing GPU Agents Test Validation * python formatting (black) (#712) Co-authored-by: ammarwa <3832908+ammarwa@users.noreply.github.com> * Fixing the issue with rocclr detected kernels __amd_rocclr_.* * python formatting (black) (#713) Co-authored-by: ammarwa <3832908+ammarwa@users.noreply.github.com> * Fixing the issue with rocclr detected kernels __amd_rocclr_.* * Fixing static number of async copies and using hsa_api instead for validation * python formatting (black) (#714) Co-authored-by: ammarwa <3832908+ammarwa@users.noreply.github.com> * Increasing the time limit for waiting on active signals * Update continuous_integration.yml * Update async_copy.cpp * Update CMakeLists.txt * changing node id to logical node id in rocprofv3 * Update tool.cpp * testing async mem copy signal decrement * Update logging.cpp * Update validate.py --------- Co-authored-by: Ammar ELWazir <aelwazir@rocprofiler1.amd.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: ammarwa <3832908+ammarwa@users.noreply.github.com> Co-authored-by: Ammar ELWazir <aelwazir@rocprofiler2.amd.com> Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
58 lines
1.8 KiB
Python
58 lines
1.8 KiB
Python
#!/usr/bin/env python3
|
|
|
|
import sys
|
|
import pytest
|
|
|
|
|
|
# helper function
|
|
def node_exists(name, data, min_len=1):
|
|
assert name in data
|
|
assert data[name] is not None
|
|
assert len(data[name]) >= min_len
|
|
|
|
|
|
def test_data_structure(input_data):
|
|
"""verify minimum amount of expected data is present"""
|
|
node_exists("rocprofiler-sdk-json-tool", input_data)
|
|
rocp_data = input_data
|
|
node_exists("names", rocp_data["rocprofiler-sdk-json-tool"]["buffer_records"])
|
|
node_exists(
|
|
"counter_collection", rocp_data["rocprofiler-sdk-json-tool"]["buffer_records"]
|
|
)
|
|
|
|
|
|
def test_counter_values(input_data):
|
|
data = input_data
|
|
|
|
scaling_factor = 1
|
|
for itr in data["rocprofiler-sdk-json-tool"]["agents"]:
|
|
if itr["type"] == 2 and itr["wave_front_size"] > 0:
|
|
scaling_factor = 64 / itr["wave_front_size"]
|
|
break
|
|
|
|
scaling_factor = 64 / itr["wave_front_size"]
|
|
|
|
for itr in data["rocprofiler-sdk-json-tool"]["buffer_records"][
|
|
"counter_collection"
|
|
]:
|
|
value = itr["counter_value"]
|
|
assert int(round(value, 0)) == int(round(1 * scaling_factor, 0)), (
|
|
f"Failure on agent "
|
|
f"{str(itr)} expected {1 * scaling_factor} but got {value} "
|
|
f"Debug Info:\n {str(data)}"
|
|
)
|
|
|
|
for itr in data["rocprofiler-sdk-json-tool"]["buffer_records"][
|
|
"counter_collection"
|
|
]:
|
|
value = itr["counter_value"]
|
|
assert int(round(value, 0)) == int(round(1 * scaling_factor, 0)), (
|
|
f"Failure on agent "
|
|
f"{str(itr)} expected {1 * scaling_factor} but got {value} "
|
|
f"Debug Info:\n {str(data)}"
|
|
)
|
|
|
|
if __name__ == "__main__":
|
|
exit_code = pytest.main(["-x", __file__] + sys.argv[1:])
|
|
sys.exit(exit_code)
|