Add 'projects/rocprofiler-compute/' from commit 'd2cec001161fc49761bd71a498474a447b1d6975'

git-subtree-dir: projects/rocprofiler-compute
git-subtree-mainline: 8a4d7262f8
git-subtree-split: d2cec00116
This commit is contained in:
systems-assistant[bot]
2025-07-17 18:13:42 +00:00
4484 changed files with 289584 additions and 0 deletions
@@ -0,0 +1,15 @@
{
"version": {"major": 1, "minor": 0},
"local": [
{
"gpus": [
{
"id": "0",
},
{"id": "1"},
{"id": "2"},
{"id": "3"},
]
}
],
}
@@ -0,0 +1,32 @@
set(CMAKE_HIP_COMPILER
"amdclang++"
CACHE STRING "desired c++ compiler" FORCE)
if(CMAKE_HIP_COMPILER_ID STREQUAL "Clang")
message(STATUS "Using ${CMAKE_HIP_COMPILER} to build for amdgpu backend")
else()
message(
FATAL_ERROR
"'amdclang++' compiler required to compile test binaries for ROCm platform.")
endif()
set(VCOPY_SOURCES ../sample/vcopy.cpp)
set_source_files_properties(${VCOPY_SOURCES} PROPERTIES LANGUAGE HIP)
add_executable(vcopy ${VCOPY_SOURCES})
set_target_properties(vcopy PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/tests)
set(VMEM_SOURCES ../sample/vmem.hip)
set_source_files_properties(${VMEM_SOURCES} PROPERTIES LANGUAGE HIP)
add_executable(vmem ${VMEM_SOURCES})
set_target_properties(vmem PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/tests)
set(VSEQ_SOURCES ../sample/vsequential_access.cpp)
set_source_files_properties(${VSEQ_SOURCES} PROPERTIES LANGUAGE HIP)
add_executable(vsequential_access ${VSEQ_SOURCES})
set_target_properties(vsequential_access PROPERTIES RUNTIME_OUTPUT_DIRECTORY
${CMAKE_SOURCE_DIR}/tests)
set(VRAND_SOURCES ../sample/vrandom_access.cpp)
set_source_files_properties(${VRAND_SOURCES} PROPERTIES LANGUAGE HIP)
add_executable(vrandom_access ${VRAND_SOURCES})
set_target_properties(vrandom_access PROPERTIES RUNTIME_OUTPUT_DIRECTORY
${CMAKE_SOURCE_DIR}/tests)
@@ -0,0 +1,122 @@
##############################################################################bl
# MIT License
#
# Copyright (c) 2025 Advanced Micro Devices, Inc. All Rights Reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
##############################################################################el
import subprocess
from importlib.machinery import SourceFileLoader
from unittest.mock import patch
import pytest
rocprof_compute = SourceFileLoader("rocprof-compute", "src/rocprof-compute").load_module()
def pytest_addoption(parser):
parser.addoption(
"--call-binary",
action="store_true",
default=False,
help="Call standalone binary instead of main function during tests",
)
parser.addoption(
"--rocprofiler-sdk-library-path",
type=str,
default="/opt/rocm/lib/librocprofiler-sdk.so",
help="Path to the rocprofiler-sdk library",
)
@pytest.fixture
def binary_handler_profile_rocprof_compute(request):
def _handler(
config, workload_dir, options=[], check_success=True, roof=False, app_name="app_1"
):
if request.config.getoption("--rocprofiler-sdk-library-path"):
options.extend(
[
"--rocprofiler-sdk-library-path",
request.config.getoption("--rocprofiler-sdk-library-path"),
],
)
if request.config.getoption("--call-binary"):
baseline_opts = [
"build/rocprof-compute.bin",
"profile",
"-n",
app_name,
"-VVV",
]
if not roof:
baseline_opts.append("--no-roof")
process = subprocess.run(
baseline_opts
+ options
+ ["--path", workload_dir, "--"]
+ config[app_name],
text=True,
)
# verify run status
if check_success:
assert process.returncode == 0
return process.returncode
else:
baseline_opts = ["rocprof-compute", "profile", "-n", app_name, "-VVV"]
if not roof:
baseline_opts.append("--no-roof")
with pytest.raises(SystemExit) as e:
with patch(
"sys.argv",
baseline_opts
+ options
+ ["--path", workload_dir, "--"]
+ config[app_name],
):
rocprof_compute.main()
# verify run status
if check_success:
assert e.value.code == 0
return e.value.code
return _handler
@pytest.fixture
def binary_handler_analyze_rocprof_compute(request):
def _handler(arguments):
if request.config.getoption("--call-binary"):
process = subprocess.run(
["build/rocprof-compute.bin", *arguments],
text=True,
)
return process.returncode
else:
with pytest.raises(SystemExit) as e:
with patch(
"sys.argv",
["rocprof-compute", *arguments],
):
rocprof_compute.main()
return e.value.code
return _handler
@@ -0,0 +1,60 @@
##############################################################################bl
# MIT License
#
# Copyright (c) 2025 Advanced Micro Devices, Inc. All Rights Reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
##############################################################################el
import argparse
import glob
import os
import sys
if __name__ == "__main__":
my_parser = argparse.ArgumentParser(description="create test_analyze_workloads.py")
my_parser.add_argument(
"-p", "--path", dest="path", required=True, type=str, help="Specify directory."
)
args = my_parser.parse_args()
workloads_path = args.path
workloads = glob.glob(workloads_path + "/*")
with open("test_analyze_workloads.py", "a") as f:
for workload in workloads:
workload_name = workload[workload.rfind("/") + 1 :]
archs = os.listdir(workload)
for arch in archs:
test = (
"\n\ndef test_analyze_"
+ workload_name
+ "_"
+ arch
+ "():"
+ "\n\twith pytest.raises(SystemExit) as e:"
+ "\n\t\twith patch('sys.argv',['rocprof-compute', 'analyze', '--path', '"
+ workload
+ "/"
+ arch
+ "']):\n\t\t\trocprof_compute.main()"
+ "\n\tassert e.value.code == 0"
)
f.write(test)
+61
View File
@@ -0,0 +1,61 @@
#!/bin/bash
declare -A commands=(
[path]=' '
[no_roof]='--no-roof'
[kernel_names]='--roof-only --kernel-names'
[device_filter]='--device 0'
[kernel]='--kernel "vecCopy(double*, double*, double*, int, int) [clone .kd]"'
[ipblocks_SQ]='-b SQ'
[ipblocks_SQC]='-b SQC'
[ipblocks_TA]='-b TA'
[ipblocks_TD]='-b TD'
[ipblocks_TCP]='-b TCP'
[ipblocks_TCC]='-b TCC'
[ipblocks_SPI]='-b SPI'
[ipblocks_CPC]='-b CPC'
[ipblocks_CPF]='-b CPF'
[ipblocks_SQ_CPC]='-b SQ CPC'
[ipblocks_SQ_TA]='-b SQ TA'
[ipblocks_SQ_SPI]='-b SQ SPI'
[ipblocks_SQ_SQC_TCP_CPC]='-b SQ SQC TCP CPC'
[ipblocks_SQ_SPI_TA_TCC_CPF]='-b SQ SPI TA TCC CPF'
[dispatch_0]='--dispatch 0'
[dispatch_0_1]='--dispatch 0:2'
[dispatch_2]='--dispatch 1'
[kernel_verbose_0]='--kernel-verbose 0'
[kernel_verbose_1]='--kernel-verbose 1'
[kernel_verbose_2]='--kernel-verbose 2'
[kernel_verbose_3]='--kernel-verbose 3'
[kernel_verbose_4]='--kernel-verbose 4'
[kernel_verbose_5]='--kernel-verbose 5'
[join_type_grid]='--join-type grid'
[join_type_kernel]='--join-type kernel'
[sort_dispatches]='--roof-only --sort dispatches'
[sort_kernels]='--roof-only --sort kernels'
[mem_levels_HBM]='--roof-only --mem-level HBM'
[mem_levels_L2]='--roof-only --mem-level L2'
[mem_levels_vL1D]='--roof-only --mem-level vL1D'
[mem_levels_LDS]='--roof-only --mem-level LDS'
[mem_levels_HBM_LDS]='--roof-only --mem-level HBM LDS'
[mem_levels_vL1d_LDS]='--roof-only --mem-level vL1D LDS'
[mem_levels_L2_vL1d_LDS]='--roof-only --mem-level L2 vL1D LDS'
#########################################################
# Attempt to break rocprofiler-compute #
#########################################################
[dispatch_7]='--dispatch 7'
[dispatch_6_8]='--dispatch 6:8'
[dispatch_inv]='--dispatch invalid'
[kernel_substr]='--kernel vecCopy'
[kernel_inv_str]='--kernel vecPaste'
[kernel_inv_int]='--kernel 42'
[device_inv]='--device invalid' # does not generate a workload
[device_inv_int]='--device -1'
)
soc=MI300X_A1
echo "starting"
for key in "${!commands[@]}"; do
echo profiling $key;
command="${commands[$key]}"
echo "$key = ./src/rocprof-compute profile -n $key ${dirs[@]}"
./src/rocprof-compute profile -n $key $command -p tests/workloads/$key/$soc -- ./tests/vcopy -n 1048576 -b 256 -i 3 ;
echo "done" ; done
@@ -0,0 +1,194 @@
##############################################################################bl
# MIT License
#
# Copyright (c) 2025 Advanced Micro Devices, Inc. All Rights Reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
##############################################################################el
import csv
import inspect
import os
import re
import shutil
import subprocess
import sys
from importlib.machinery import SourceFileLoader
from pathlib import Path
from unittest.mock import patch
import pandas as pd
import pytest
import test_utils
rocprof_compute = SourceFileLoader("rocprof-compute", "src/rocprof-compute").load_module()
config = {}
config["vseq"] = ["./tests/vsequential_access"]
config["vrand"] = ["./tests/vrandom_access"]
config["cleanup"] = True
config["COUNTER_LOGGING"] = False
config["METRIC_COMPARE"] = False
config["METRIC_LOGGING"] = False
SUPPORTED_ARCHS = {
"gfx940": {"mi300": ["MI300A_A0"]},
"gfx941": {"mi300": ["MI300X_A0"]},
"gfx942": {"mi300": ["MI300A_A1", "MI300X_A1"]},
}
MI300_CHIP_IDS = {
"29856": "MI300A_A1",
"29857": "MI300X_A1",
"29858": "MI308X",
}
def run(cmd):
p = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
if cmd[0] == "amd-smi" and p.returncode == 8:
print("ERROR: No GPU detected. Unable to load amd-smi")
assert 0
return p.stdout.decode("ascii")
def gpu_soc():
## 1) Parse arch details from rocminfo
rocminfo = str(
# decode with utf-8 to account for rocm-smi changes in latest rocm
subprocess.run(
["rocminfo"], stdout=subprocess.PIPE, stderr=subprocess.PIPE
).stdout.decode("utf-8")
)
rocminfo = rocminfo.split("\n")
soc_regex = re.compile(r"^\s*Name\s*:\s+ ([a-zA-Z0-9]+)\s*$", re.MULTILINE)
devices = list(filter(soc_regex.match, rocminfo))
gpu_arch = devices[0].split()[1]
if not gpu_arch in SUPPORTED_ARCHS.keys():
return None
## 2) Parse chip id from rocminfo
chip_id = re.compile(r"^\s*Chip ID:\s+ ([a-zA-Z0-9]+)\s*", re.MULTILINE)
ids = list(filter(chip_id.match, rocminfo))
for id in ids:
chip_id = re.match(r"^[^()]+", id.split()[2]).group(0)
## 3) Deduce gpu model name from arch
gpu_model = list(SUPPORTED_ARCHS[gpu_arch].keys())[0].upper()
# For testing purposes we only care about gpu model series not the specific model
# if gpu_model == "MI300":
# if chip_id in MI300_CHIP_IDS:
# gpu_model = MI300_CHIP_IDS[chip_id]
# else:
# return None
return gpu_model
def load_metrics(csv_file_path):
"""
Reads the CSV file into a dictionary of dictionaries:
{
"Metric_1": {
"Avg": value,
"Min": value,
"Max": value,
"Unit": "unit"
},
"Metric_2": { ... },
...
}
"""
metrics_data = {}
with open(csv_file_path, newline="") as csvfile:
reader = csv.DictReader(csvfile) # reads header from first line
for row in reader:
metric_name = row["Metric"].strip()
metrics_data[metric_name] = {
"Avg": float(row["Avg"]) if row["Avg"] else None,
"Min": float(row["Min"]) if row["Min"] else None,
"Max": float(row["Max"]) if row["Max"] else None,
"Unit": row["Unit"].strip() if row["Unit"] else None,
}
return metrics_data
soc = gpu_soc()
@pytest.mark.L1_cache
def test_L1_cache_counters(
binary_handler_profile_rocprof_compute, binary_handler_analyze_rocprof_compute
):
if not soc or "MI300" not in soc:
pytest.skip("Skipping L1 cache test for non-mi300 socs.")
# set up two apps: sequential and random access
app_names = ["vseq", "vrand"]
options = ["-b", "TCP"]
result = {}
metrics = ["Read Req", "Write Req", "Cache Hit Rate"]
base = Path(test_utils.get_output_dir())
for app_name in app_names:
workload_dir = str(base / app_name)
# 1. profile the app
return_code = binary_handler_profile_rocprof_compute(
config,
workload_dir,
options,
check_success=False,
roof=False,
app_name=app_name,
)
assert return_code == 0
# 2. analyze the results
return_code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", workload_dir, "-b", "16.3", "--save-dfs", workload_dir]
)
assert return_code == 0
# 3. save results in local
# FIXME: customize file name to avoid hardcode
csv_path = workload_dir + "/16.3_L1D_Cache_Accesses.csv"
data = load_metrics(csv_path)
for metric in metrics:
if app_name not in result or not isinstance(result[app_name], dict):
result[app_name] = {}
result[app_name][metric] = data[metric]["Avg"]
# 4. clean local output
test_utils.clean_output_dir(config["cleanup"], workload_dir)
test_utils.clean_output_dir(config["cleanup"], base)
# 5. check results are expected
# FIXME: use a range for comparison to account for different results
assert result["vseq"]["Cache Hit Rate"] >= result["vrand"]["Cache Hit Rate"]
assert result["vseq"]["Read Req"] <= result["vrand"]["Read Req"]
assert result["vseq"]["Write Req"] <= result["vrand"]["Write Req"]
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,970 @@
##############################################################################bl
# MIT License
#
# Copyright (c) 2025 Advanced Micro Devices, Inc. All Rights Reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
##############################################################################el
from unittest.mock import patch
import pytest
##################################################
## Generated tests ##
##################################################
def test_analyze_vcopy_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/vcopy/MI100"]
)
assert code == 0
def test_analyze_vcopy_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/vcopy/MI200"]
)
assert code == 0
def test_analyze_ipblocks_TCP_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TCP/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_TCP_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TCP/MI100"]
)
assert code == 0
def test_analyze_ipblocks_TCP_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TCP/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_TCP_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TCP/MI200"]
)
assert code == 0
def test_analyze_ipblocks_SQC_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQC/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQC_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQC/MI100"]
)
assert code == 0
def test_analyze_ipblocks_SQC_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQC/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQC_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQC/MI200"]
)
assert code == 0
def test_analyze_mem_levels_HBM_LDS_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/mem_levels_HBM_LDS/MI200"]
)
assert code == 0
def test_analyze_ipblocks_TCC_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TCC/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_TCC_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TCC/MI100"]
)
assert code == 0
def test_analyze_ipblocks_TCC_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TCC/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_TCC_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TCC/MI200"]
)
assert code == 0
def test_analyze_no_roof_MI350(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/no_roof/MI350"]
)
assert code == 0
def test_analyze_no_roof_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/no_roof/MI300X_A1"]
)
assert code == 0
def test_analyze_no_roof_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/no_roof/MI100"]
)
assert code == 0
def test_analyze_no_roof_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/no_roof/MI300A_A1"]
)
assert code == 0
def test_analyze_no_roof_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/no_roof/MI200"]
)
assert code == 0
def test_analyze_ipblocks_SQ_CPC_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_CPC/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_CPC_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_CPC/MI100"]
)
assert code == 0
def test_analyze_ipblocks_SQ_CPC_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_CPC/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_CPC_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_CPC/MI200"]
)
assert code == 0
def test_analyze_dispatch_0_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_0/MI300X_A1"]
)
assert code == 0
def test_analyze_dispatch_0_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_0/MI100"]
)
assert code == 0
def test_analyze_dispatch_0_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_0/MI300A_A1"]
)
assert code == 0
def test_analyze_dispatch_0_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_0/MI200"]
)
assert code == 0
def test_analyze_join_type_grid_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/join_type_grid/MI300X_A1"]
)
assert code == 0
def test_analyze_join_type_grid_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/join_type_grid/MI100"]
)
assert code == 0
def test_analyze_join_type_grid_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/join_type_grid/MI300A_A1"]
)
assert code == 0
def test_analyze_join_type_grid_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/join_type_grid/MI200"]
)
assert code == 0
def test_analyze_kernel_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel/MI300X_A1"]
)
assert code == 0
def test_analyze_kernel_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel/MI100"]
)
assert code == 0
def test_analyze_kernel_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel/MI300A_A1"]
)
assert code == 0
def test_analyze_kernel_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel/MI200"]
)
assert code == 0
def test_analyze_kernel_substr_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_substr/MI300X_A1"]
)
assert code == 0
def test_analyze_kernel_substr_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_substr/MI100"]
)
assert code == 0
def test_analyze_kernel_substr_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_substr/MI300A_A1"]
)
assert code == 0
def test_analyze_kernel_substr_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_substr/MI200"]
)
assert code == 0
def test_analyze_dispatch_7_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_7/MI300X_A1"]
)
assert code == 0
def test_analyze_dispatch_7_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_7/MI100"]
)
assert code == 1
def test_analyze_dispatch_7_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_7/MI300A_A1"]
)
assert code == 0
def test_analyze_dispatch_7_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_7/MI200"]
)
assert code == 1
def test_analyze_kernel_inv_int_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_inv_int/MI300X_A1"]
)
assert code == 0
def test_analyze_kernel_inv_int_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_inv_int/MI100"]
)
assert code == 1
def test_analyze_kernel_inv_int_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_inv_int/MI300A_A1"]
)
assert code == 0
def test_analyze_kernel_inv_int_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_inv_int/MI200"]
)
assert code == 1
def test_analyze_mem_levels_vL1D_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/mem_levels_vL1D/MI200"]
)
assert code == 0
def test_analyze_sort_kernels_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/sort_kernels/MI200"]
)
assert code == 0
def test_analyze_kernel_inv_str_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_inv_str/MI300X_A1"]
)
assert code == 0
def test_analyze_kernel_inv_str_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_inv_str/MI100"]
)
assert code == 1
def test_analyze_kernel_inv_str_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_inv_str/MI300A_A1"]
)
assert code == 0
def test_analyze_kernel_inv_str_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_inv_str/MI200"]
)
assert code == 1
def test_analyze_ipblocks_SQ_SPI_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SPI/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SPI_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SPI/MI100"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SPI_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SPI/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SPI_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SPI/MI200"]
)
assert code == 0
def test_analyze_dispatch_2_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_2/MI300X_A1"]
)
assert code == 0
def test_analyze_dispatch_2_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_2/MI100"]
)
assert code == 0
def test_analyze_dispatch_2_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_2/MI300A_A1"]
)
assert code == 0
def test_analyze_dispatch_2_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_2/MI200"]
)
assert code == 0
def test_analyze_dispatch_0_1_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_0_1/MI300X_A1"]
)
assert code == 0
def test_analyze_dispatch_0_1_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_0_1/MI100"]
)
assert code == 0
def test_analyze_dispatch_0_1_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_0_1/MI300A_A1"]
)
assert code == 0
def test_analyze_dispatch_0_1_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_0_1/MI200"]
)
assert code == 0
def test_analyze_mem_levels_LDS_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/mem_levels_LDS/MI200"]
)
assert code == 0
def test_analyze_ipblocks_TA_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TA/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_TA_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TA/MI100"]
)
assert code == 0
def test_analyze_ipblocks_TA_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TA/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_TA_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TA/MI200"]
)
assert code == 0
def test_analyze_dispatch_6_8_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_6_8/MI300X_A1"]
)
assert code == 0
def test_analyze_dispatch_6_8_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_6_8/MI100"]
)
assert code == 1
def test_analyze_dispatch_6_8_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_6_8/MI300A_A1"]
)
assert code == 0
def test_analyze_dispatch_6_8_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_6_8/MI200"]
)
assert code == 1
def test_analyze_device_inv_int_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/device_inv_int/MI300X_A1"]
)
assert code == 0
def test_analyze_device_inv_int_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/device_inv_int/MI100"]
)
assert code == 0
def test_analyze_device_inv_int_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/device_inv_int/MI300A_A1"]
)
assert code == 0
def test_analyze_device_inv_int_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/device_inv_int/MI200"]
)
assert code == 0
def test_analyze_ipblocks_SQ_TA_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_TA/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_TA_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_TA/MI100"]
)
assert code == 0
def test_analyze_ipblocks_SQ_TA_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_TA/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_TA_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_TA/MI200"]
)
assert code == 0
def test_analyze_ipblocks_TD_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TD/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_TD_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TD/MI100"]
)
assert code == 0
def test_analyze_ipblocks_TD_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TD/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_TD_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_TD/MI200"]
)
assert code == 0
def test_analyze_device_filter_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/device_filter/MI300X_A1"]
)
assert code == 0
def test_analyze_device_filter_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/device_filter/MI100"]
)
assert code == 0
def test_analyze_device_filter_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/device_filter/MI300A_A1"]
)
assert code == 0
def test_analyze_device_filter_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/device_filter/MI200"]
)
assert code == 0
def test_analyze_join_type_kernel_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/join_type_kernel/MI300X_A1"]
)
assert code == 0
def test_analyze_join_type_kernel_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/join_type_kernel/MI100"]
)
assert code == 0
def test_analyze_join_type_kernel_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/join_type_kernel/MI300A_A1"]
)
assert code == 0
def test_analyze_join_type_kernel_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/join_type_kernel/MI200"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SQC_TCP_CPC_MI300X_A1(
binary_handler_analyze_rocprof_compute,
):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SQC_TCP_CPC/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SQC_TCP_CPC_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SQC_TCP_CPC/MI100"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SQC_TCP_CPC_MI300A_A1(
binary_handler_analyze_rocprof_compute,
):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SQC_TCP_CPC/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SQC_TCP_CPC_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SQC_TCP_CPC/MI200"]
)
assert code == 0
def test_analyze_mem_levels_L2_vL1d_LDS_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/mem_levels_L2_vL1d_LDS/MI200"]
)
assert code == 0
def test_analyze_ipblocks_CPF_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_CPF/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_CPF_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_CPF/MI100"]
)
assert code == 0
def test_analyze_ipblocks_CPF_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_CPF/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_CPF_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_CPF/MI200"]
)
assert code == 0
def test_analyze_sort_dispatches_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/sort_dispatches/MI200"]
)
assert code == 0
def test_analyze_kernel_names_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/kernel_names/MI200"]
)
assert code == 0
def test_analyze_mem_levels_vL1d_LDS_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/mem_levels_vL1d_LDS/MI200"]
)
assert code == 0
def test_analyze_ipblocks_SQ_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ/MI100"]
)
assert code == 0
def test_analyze_ipblocks_SQ_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ/MI200"]
)
assert code == 0
def test_analyze_mem_levels_L2_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/mem_levels_L2/MI200"]
)
assert code == 0
def test_analyze_dispatch_inv_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_inv/MI300X_A1"]
)
assert code == 0
def test_analyze_dispatch_inv_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_inv/MI100"]
)
assert code == 0
def test_analyze_dispatch_inv_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_inv/MI300A_A1"]
)
assert code == 0
def test_analyze_dispatch_inv_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/dispatch_inv/MI200"]
)
assert code == 0
def test_analyze_path_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/path/MI300X_A1"]
)
assert code == 0
def test_analyze_path_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/path/MI100"]
)
assert code == 0
def test_analyze_path_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/path/MI300A_A1"]
)
assert code == 0
def test_analyze_path_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/path/MI200"]
)
assert code == 0
def test_analyze_ipblocks_CPC_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_CPC/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_CPC_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_CPC/MI100"]
)
assert code == 0
def test_analyze_ipblocks_CPC_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_CPC/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_CPC_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_CPC/MI200"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SPI_TA_TCC_CPF_MI300X_A1(
binary_handler_analyze_rocprof_compute,
):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SPI_TA_TCC_CPF/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SPI_TA_TCC_CPF_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SPI_TA_TCC_CPF/MI100"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SPI_TA_TCC_CPF_MI300A_A1(
binary_handler_analyze_rocprof_compute,
):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SPI_TA_TCC_CPF/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_SQ_SPI_TA_TCC_CPF_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SQ_SPI_TA_TCC_CPF/MI200"]
)
assert code == 0
def test_analyze_mem_levels_HBM_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/mem_levels_HBM/MI200"]
)
assert code == 0
def test_analyze_ipblocks_SPI_MI300X_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SPI/MI300X_A1"]
)
assert code == 0
def test_analyze_ipblocks_SPI_MI100(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SPI/MI100"]
)
assert code == 0
def test_analyze_ipblocks_SPI_MI300A_A1(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SPI/MI300A_A1"]
)
assert code == 0
def test_analyze_ipblocks_SPI_MI200(binary_handler_analyze_rocprof_compute):
code = binary_handler_analyze_rocprof_compute(
["analyze", "--path", "tests/workloads/ipblocks_SPI/MI200"]
)
assert code == 0
@@ -0,0 +1,418 @@
##############################################################################bl
# MIT License
#
# Copyright (c) 2025 Advanced Micro Devices, Inc. All Rights Reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
##############################################################################el
import logging
import shutil
import sys
import tempfile
from pathlib import Path
from unittest.mock import MagicMock, Mock, call, patch
import pandas as pd
import pytest
logging.TRACE = logging.DEBUG - 5
logging.addLevelName(logging.TRACE, "TRACE")
def trace_logger(message, *args, **kwargs):
logging.log(logging.TRACE, message, *args, **kwargs)
setattr(logging, "trace", trace_logger)
from db_connector import DatabaseConnector
"""
Tests for the DatabaseConnector class that tests almost methods with initialization,
CSV import, database removal, and error handling.
The tests use mocks instead of a real MongoDB server for speed and reliability.
"""
class TestDatabaseConnector:
@pytest.fixture
def mock_args_import(self):
"""Mock arguments for import operation"""
args = Mock()
args.username = "test_user"
args.password = "test_pass"
args.host = "localhost"
args.port = 27017
args.team = "test_team"
args.workload = "/app/tests/workloads/device_filter/MI100"
args.upload = True
args.remove = False
args.kernel_verbose = False
return args
@pytest.fixture
def mock_args_remove(self):
"""Mock arguments for remove operation"""
args = Mock()
args.username = "test_user"
args.password = "test_pass"
args.host = "localhost"
args.port = 27017
args.team = "test_team"
args.workload = "rocprofiler-compute_test_team_workload_mi100"
args.upload = False
args.remove = True
args.kernel_verbose = False
return args
def test_init(self, mock_args_import):
"""Test DatabaseConnector initialization"""
connector = DatabaseConnector(mock_args_import)
assert connector.args == mock_args_import
assert isinstance(connector.cache, dict)
assert len(connector.cache) == 0
expected_connection_info = {
"username": "test_user",
"password": "test_pass",
"host": "localhost",
"port": "27017",
"team": "test_team",
"workload": "/app/tests/workloads/device_filter/MI100",
"db": None,
}
assert connector.connection_info == expected_connection_info
assert connector.interaction_type is None
assert connector.client is None
@patch("db_connector.pd.read_csv")
@patch("db_connector.Path")
def test_prep_import_success(self, mock_path, mock_read_csv, mock_args_import):
"""Test successful prep_import"""
# Setup mocks
mock_path.return_value.joinpath.return_value = "/fake/path/sysinfo.csv"
mock_path.return_value.is_file.return_value = True
mock_sysinfo = pd.DataFrame(
{"gpu_model": ["MI100 "], "workload_name": [" test_workload"]}
)
mock_read_csv.return_value = mock_sysinfo
connector = DatabaseConnector(mock_args_import)
connector.prep_import()
expected_db = "rocprofiler-compute_test_team_test_workload_MI100"
assert connector.connection_info["db"] == expected_db
@patch("db_connector.pd.read_csv")
@patch("db_connector.Path")
def test_prep_import_missing_file(self, mock_path, mock_read_csv, mock_args_import):
"""Test prep_import when sysinfo.csv is missing"""
mock_path.return_value.joinpath.return_value = "/fake/path/sysinfo.csv"
mock_path.return_value.is_file.return_value = False
connector = DatabaseConnector(mock_args_import)
with patch(
"db_connector.console_error", side_effect=SystemExit(1)
) as mock_console_error:
with pytest.raises(SystemExit):
connector.prep_import()
mock_console_error.assert_called_with(
"database", "Unable to parse SoC and/or workload name from sysinfo.csv"
)
@patch("db_connector.pd.read_csv")
@patch("db_connector.Path")
def test_prep_import_key_error(self, mock_path, mock_read_csv, mock_args_import):
"""Test prep_import when required fields are missing"""
mock_path.return_value.joinpath.return_value = "/fake/path/sysinfo.csv"
mock_path.return_value.is_file.return_value = True
mock_sysinfo = pd.DataFrame({"other_column": ["value"]})
mock_read_csv.return_value = mock_sysinfo
connector = DatabaseConnector(mock_args_import)
with patch(
"db_connector.console_error", side_effect=SystemExit(1)
) as mock_console_error:
with pytest.raises(SystemExit):
connector.prep_import()
assert mock_console_error.called
error_call = mock_console_error.call_args[0][0]
assert "Outdated workload" in error_call
@patch("db_connector.tqdm")
@patch("db_connector.os.listdir")
@patch("db_connector.console_log")
@patch("db_connector.console_warning")
@patch("db_connector.kernel_name_shortener")
@patch("db_connector.MongoClient")
@patch("db_connector.pd.read_csv")
def test_db_import_success(
self,
mock_read_csv,
mock_mongo_client,
mock_kernel_shortener,
mock_console_warning,
mock_console_log,
mock_listdir,
mock_tqdm,
mock_args_import,
):
"""Test successful database import"""
mock_listdir.return_value = ["test_data.csv", "empty_file.csv", "non_csv.txt"]
mock_tqdm.return_value = mock_listdir.return_value
test_df = pd.DataFrame({"col1": [1, 2], "col2": [3, 4]})
mock_read_csv.side_effect = [test_df, pd.errors.EmptyDataError()]
mock_client_instance = MagicMock()
mock_db = MagicMock()
mock_collection = MagicMock()
mock_workload_db = MagicMock()
mock_workload_col = MagicMock()
mock_mongo_client.return_value = mock_client_instance
mock_client_instance.__getitem__.side_effect = lambda x: {
"rocprofiler-compute_test_team_test_workload_MI100": mock_db,
"workload_names": mock_workload_db,
}.get(x, mock_db)
mock_db.__getitem__.return_value = mock_collection
mock_workload_db.__getitem__.return_value = mock_workload_col
connector = DatabaseConnector(mock_args_import)
connector.connection_info["workload"] = "/fake/workload/path"
connector.client = mock_client_instance
with patch.object(connector, "prep_import") as mock_prep:
mock_prep.return_value = None
connector.connection_info["db"] = (
"rocprofiler-compute_test_team_test_workload_MI100"
)
connector.db_import()
mock_collection.insert_many.assert_called_once()
mock_workload_col.replace_one.assert_called_once()
@patch("db_connector.console_log")
def test_db_remove_success(self, mock_console_log, mock_args_remove):
"""Test successful database removal"""
mock_client = MagicMock()
mock_db_to_remove = MagicMock()
mock_workload_names_db = MagicMock()
mock_names_col = MagicMock()
mock_client.__getitem__.side_effect = lambda x: {
"rocprofiler-compute_test_team_workload_mi100": mock_db_to_remove,
"workload_names": mock_workload_names_db,
}[x]
mock_workload_names_db.__getitem__.return_value = mock_names_col
mock_db_to_remove.list_collection_names.return_value = ["col1", "col2"]
connector = DatabaseConnector(mock_args_remove)
connector.client = mock_client
connector.db_remove()
mock_client.drop_database.assert_called_once_with(mock_db_to_remove)
mock_names_col.delete_many.assert_called_once_with(
{"name": "rocprofiler-compute_test_team_workload_mi100"}
)
def test_pre_processing_no_action_specified(self, mock_args_import):
"""Test pre_processing when neither upload nor remove is specified"""
mock_args_import.upload = False
mock_args_import.remove = False
connector = DatabaseConnector(mock_args_import)
with patch("db_connector.console_error", side_effect=SystemExit(1)):
with pytest.raises(SystemExit):
connector.pre_processing()
def test_pre_processing_remove_invalid_workload_name(self, mock_args_remove):
"""Test pre_processing remove with invalid workload name"""
mock_args_remove.workload = "invalid_name"
connector = DatabaseConnector(mock_args_remove)
with patch("db_connector.console_error", side_effect=SystemExit(1)):
with pytest.raises(SystemExit):
connector.pre_processing()
def test_pre_processing_remove_missing_host_username(self, mock_args_remove):
"""Test pre_processing remove with missing host/username"""
mock_args_remove.host = None
mock_args_remove.username = None
connector = DatabaseConnector(mock_args_remove)
with patch("db_connector.console_error", side_effect=SystemExit(1)):
with pytest.raises(SystemExit):
connector.pre_processing()
def test_pre_processing_remove_protected_database(self, mock_args_remove):
"""Test pre_processing remove with protected database names"""
mock_args_remove.workload = "admin"
connector = DatabaseConnector(mock_args_remove)
with patch("db_connector.console_error", side_effect=SystemExit(1)):
with pytest.raises(SystemExit):
connector.pre_processing()
@patch("db_connector.Path")
@patch("db_connector.is_workload_empty")
@patch("db_connector.getpass.getpass")
@patch("db_connector.console_log")
@patch("db_connector.MongoClient")
def test_pre_processing_import_password_prompt_success(
self,
mock_mongo_client,
mock_console_log,
mock_getpass,
mock_is_workload_empty,
mock_path,
mock_args_import,
):
"""Test pre_processing import with password prompt success"""
mock_args_import.password = ""
mock_getpass.return_value = "prompted_password"
mock_path.return_value.absolute.return_value.is_dir.return_value = True
mock_path.return_value.absolute.return_value.resolve.return_value = (
"/resolved/path"
)
mock_client_instance = MagicMock()
mock_mongo_client.return_value = mock_client_instance
mock_client_instance.server_info.return_value = {}
connector = DatabaseConnector(mock_args_import)
connector.pre_processing()
mock_getpass.assert_called_once()
mock_console_log.assert_called_with("database", "Password received")
@patch("db_connector.Path")
@patch("db_connector.is_workload_empty")
@patch("db_connector.MongoClient")
def test_pre_processing_import_connection_failure(
self, mock_mongo_client, mock_is_workload_empty, mock_path, mock_args_import
):
"""Test pre_processing import with MongoDB connection failure"""
mock_path.return_value.absolute.return_value.is_dir.return_value = True
mock_path.return_value.absolute.return_value.resolve.return_value = (
"/resolved/path"
)
mock_client_instance = MagicMock()
mock_mongo_client.return_value = mock_client_instance
mock_client_instance.server_info.side_effect = Exception("Connection failed")
connector = DatabaseConnector(mock_args_import)
with patch("db_connector.console_error", side_effect=SystemExit(1)):
with pytest.raises(SystemExit):
connector.pre_processing()
@patch("db_connector.Path")
@patch("db_connector.is_workload_empty")
def test_pre_processing_import_missing_required_fields(
self, mock_is_workload_empty, mock_path, mock_args_import
):
"""Test pre_processing import with missing required fields"""
mock_args_import.host = None
connector = DatabaseConnector(mock_args_import)
with patch("db_connector.console_error", side_effect=SystemExit(1)):
with pytest.raises(SystemExit):
connector.pre_processing()
@patch("db_connector.Path")
def test_pre_processing_import_invalid_workload_path(
self, mock_path, mock_args_import
):
"""Test pre_processing import with invalid workload path"""
mock_path.return_value.absolute.return_value.is_dir.return_value = False
connector = DatabaseConnector(mock_args_import)
with patch("db_connector.console_error", side_effect=SystemExit(1)):
with pytest.raises(SystemExit):
connector.pre_processing()
def test_pre_processing_import_team_name_too_long(self, mock_args_import):
"""Test pre_processing import with team name exceeding limit"""
mock_args_import.team = "this_team_name_is_way_too_long"
connector = DatabaseConnector(mock_args_import)
with patch("db_connector.console_error", side_effect=SystemExit(1)):
with pytest.raises(SystemExit):
connector.pre_processing()
class TestDatabaseConnectorIntegration:
"""Simple integration test"""
@patch("db_connector.Path")
@patch("db_connector.pd.read_csv")
def test_prep_import_with_real_workload_path(self, mock_read_csv, mock_path):
"""Test prep_import with actual workload path structure"""
args = Mock()
args.username = "test_user"
args.password = "test_pass"
args.host = "localhost"
args.port = 27017
args.team = "test_team"
args.workload = "/app/tests/workloads/device_filter/MI100"
args.upload = True
args.remove = False
args.kernel_verbose = False
mock_path.return_value.joinpath.return_value = (
"/app/tests/workloads/device_filter/MI100/sysinfo.csv"
)
mock_path.return_value.is_file.return_value = True
mock_sysinfo = pd.DataFrame(
{"gpu_model": ["MI100"], "workload_name": ["device_filter"]}
)
mock_read_csv.return_value = mock_sysinfo
connector = DatabaseConnector(args)
connector.prep_import()
expected_db = "rocprofiler-compute_test_team_device_filter_MI100"
assert connector.connection_info["db"] == expected_db
if __name__ == "__main__":
pytest.main([__file__, "-v"])
@@ -0,0 +1,413 @@
##############################################################################bl
# MIT License
#
# Copyright (c) 2025 Advanced Micro Devices, Inc. All Rights Reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
##############################################################################el
import os
import re
import subprocess
import sys
import tempfile
from importlib.machinery import SourceFileLoader
from pathlib import Path
from unittest.mock import MagicMock, mock_open, patch
import pandas as pd
import pytest
import yaml
from src.utils.specs import generate_machine_specs
rocprof_compute = SourceFileLoader("rocprof-compute", "src/rocprof-compute").load_module()
# NOTE: Only testing gfx942 for now.
GFX942_CHIP_IDS_TO_NUM_XCDS = {
"29856": {"spx": 6, "tpx": 2},
"29876": {"spx": 6, "tpx": 2},
"29857": {"spx": 8, "dpx": 4, "qpx": 2, "cpx": 1},
"29877": {"spx": 8, "dpx": 4, "qpx": 2, "cpx": 1},
"29858": {"spx": 4, "dpx": 2, "cpx": 1},
"29878": {"spx": 4, "dpx": 2, "cpx": 1},
"29861": {"spx": 8, "dpx": 4, "qpx": 2, "cpx": 1},
"29881": {"spx": 8, "dpx": 4, "qpx": 2, "cpx": 1},
"29864": {"spx": 4, "dpx": 2, "cpx": 1},
"29884": {"spx": 4, "dpx": 2, "cpx": 1},
"29865": {"spx": 8, "dpx": 4, "qpx": 2, "cpx": 1},
"29885": {"spx": 8, "dpx": 4, "qpx": 2, "cpx": 1},
}
# helper to strip ANSI color codes if your app uses them
ANSI_ESCAPE = re.compile(r"\x1B[@-_][0-?]*[ -/]*[@-~]")
def strip_ansi(s: str) -> str:
return ANSI_ESCAPE.sub("", s)
def parse_table_dict(output: str) -> dict:
"""
Parse an ASCII table into a dict mapping Spec -> Value.
"""
lines = [l for l in output.splitlines() if l.startswith("")]
# locate header row (the one containing 'Spec' and 'Value')
header_idx = next(
(i for i, ln in enumerate(lines) if "Spec" in ln and "Value" in ln), None
)
if header_idx is None:
raise ValueError("Header row with Spec and Value not found")
header_cells = [c.strip() for c in lines[header_idx].strip("").split("")]
spec_i = header_cells.index("Spec")
value_i = header_cells.index("Value")
result = {}
for ln in lines[header_idx + 2 :]:
if ln.startswith("") or ln.startswith(""):
continue
cells = [c.strip() for c in ln.strip("").split("")]
if len(cells) <= max(spec_i, value_i):
continue
spec = cells[spec_i]
value = cells[value_i]
if spec:
result[spec] = value
return result
def run(cmd):
p = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
if cmd[0] == "amd-smi" and p.returncode == 8:
print("ERROR: No GPU detected. Unable to load amd-smi")
assert 0
return p.stdout.decode("utf-8")
def get_num_xcds():
num_xcds = None
## 1) Parse arch details from rocminfo
rocminfo = str(
# decode with utf-8 to account for rocm-smi changes in latest rocm
subprocess.run(
["rocminfo"], stdout=subprocess.PIPE, stderr=subprocess.PIPE
).stdout.decode("utf-8")
)
rocminfo = rocminfo.split("\n")
chip_id = re.compile(r"^\s*Chip ID:\s+ ([a-zA-Z0-9]+)\s*", re.MULTILINE)
ids = list(filter(chip_id.match, rocminfo))
for id in ids:
chip_id = re.match(r"^[^()]+", id.split()[2]).group(0)
if str(chip_id) in GFX942_CHIP_IDS_TO_NUM_XCDS.keys():
num_xcds = GFX942_CHIP_IDS_TO_NUM_XCDS[str(chip_id)]
if num_xcds is None:
return
return num_xcds
def get_gpu_arch():
rocminfo = str(
# decode with utf-8 to account for rocm-smi changes in latest rocm
subprocess.run(
["rocminfo"], stdout=subprocess.PIPE, stderr=subprocess.PIPE
).stdout.decode("utf-8")
)
rocminfo = rocminfo.split("\n")
soc_regex = re.compile(r"^\s*Name\s*:\s+ ([a-zA-Z0-9]+)\s*$", re.MULTILINE)
devices = list(filter(soc_regex.match, rocminfo))
gpu_arch = devices[0].split()[1]
return gpu_arch
@pytest.mark.num_xcds_spec_class
def test_num_xcds_spec_class(monkeypatch):
# 1. Check if gfx942 soc
gpu_arch = get_gpu_arch()
if gpu_arch is None or gpu_arch.lower() != "gfx942":
pytest.skip("Skipping num xcds test for non-gfx942 socs.")
num_xcds = get_num_xcds()
# 2. load machine specs
machine_spec = generate_machine_specs(None)
# 3. check results are expected
assert machine_spec.compute_partition is not None
assert int(machine_spec.num_xcd) == num_xcds.get(
machine_spec.compute_partition.lower(), -1
)
@pytest.mark.num_xcds_cli_output
def test_num_xcds_cli_output():
# 1. Check if gfx942 soc
gpu_arch = get_gpu_arch()
if gpu_arch is None or gpu_arch.lower() != "gfx942":
pytest.skip("Skipping num xcds test for non-gfx942 socs.")
num_xcds = get_num_xcds()
# 2. Run rocprof-compute -s and grab rocprof-compute num_xcd
proc = subprocess.run(
["src/rocprof-compute", "-s"],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
text=True,
)
assert (
proc.returncode == 0
), f"Non-zero exit ({proc.returncode}), stderr:\n{proc.stderr}"
# 3. strip ANSI, parse table
clean = strip_ansi(proc.stdout)
return_dict = parse_table_dict(clean)
# 4. check results are expected
assert (
"Compute Partition" in return_dict
), "Spec 'Compute Partition' not found in table"
assert "Num XCDs" in return_dict, "Spec 'Num XCDs' not found in table"
compute_partition_actual = return_dict["Compute Partition"]
num_xcd_actual = return_dict["Num XCDs"]
assert compute_partition_actual is not None
assert int(num_xcd_actual) == num_xcds.get(compute_partition_actual.lower(), -1)
@pytest.mark.misc
def test_load_yaml_file_not_found():
"""Test _load_yaml with non-existent file - covers lines 104-105"""
from src.utils.mi_gpu_spec import MIGPUSpecs
non_existent_path = "/path/that/does/not/exist/file.yaml"
with pytest.raises(SystemExit):
MIGPUSpecs._load_yaml(non_existent_path)
@pytest.mark.misc
def test_load_yaml_invalid_yaml():
"""Test _load_yaml with corrupted YAML - covers lines 106-107"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with tempfile.NamedTemporaryFile(mode="w", suffix=".yaml", delete=False) as f:
f.write("invalid: yaml: content: [\nunclosed bracket")
temp_path = f.name
try:
with pytest.raises(SystemExit):
MIGPUSpecs._load_yaml(temp_path)
finally:
os.unlink(temp_path)
@pytest.mark.misc
def test_load_yaml_generic_exception():
"""Test _load_yaml generic exception handling - covers lines 108-111"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with patch("builtins.open", side_effect=PermissionError("Access denied")):
with pytest.raises(SystemExit):
MIGPUSpecs._load_yaml("some_file.yaml")
@pytest.mark.misc
def test_get_gpu_series_dict_uninitialized():
"""Test get_gpu_series_dict when dict not populated - covers lines 182-185"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with patch.object(MIGPUSpecs, "_gpu_series_dict", {}):
with pytest.raises(SystemExit):
MIGPUSpecs.get_gpu_series_dict()
@pytest.mark.misc
def test_get_gpu_series_uninitialized():
"""Test get_gpu_series when dict not populated - covers lines 191-194"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with patch.object(MIGPUSpecs, "_gpu_series_dict", {}):
with pytest.raises(SystemExit):
result = MIGPUSpecs.get_gpu_series("gfx942")
@pytest.mark.misc
def test_get_perfmon_config_uninitialized():
"""Test get_perfmon_config when dict not populated - covers lines 210-213"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with patch.object(MIGPUSpecs, "_perfmon_config", {}):
with pytest.raises(SystemExit):
MIGPUSpecs.get_perfmon_config("gfx942")
@pytest.mark.misc
def test_get_gpu_model_uninitialized():
"""Test get_gpu_model when dict not populated - covers lines 223-226"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with patch.object(MIGPUSpecs, "_gpu_model_dict", {}):
with pytest.raises(SystemExit):
MIGPUSpecs.get_gpu_model("gfx942", "29857")
@pytest.mark.misc
def test_get_gpu_model_invalid_chip_id():
"""Test get_gpu_model with invalid chip_id - covers lines 235-236"""
from src.utils.mi_gpu_spec import MIGPUSpecs
result = MIGPUSpecs.get_gpu_model("gfx942", "99999")
assert result is None
@pytest.mark.misc
def test_get_gpu_model_invalid_arch():
"""Test get_gpu_model with invalid architecture - covers lines 243-244"""
from src.utils.mi_gpu_spec import MIGPUSpecs
result = MIGPUSpecs.get_gpu_model("gfx999", "12345")
assert result is None
@pytest.mark.misc
def test_get_gpu_model_none_result():
"""Test get_gpu_model when result is None - covers lines 246-248"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with patch.object(MIGPUSpecs, "_chip_id_dict", {999: None}):
result = MIGPUSpecs.get_gpu_model("gfx942", "999")
assert result is None
@pytest.mark.misc
def test_get_num_xcds_no_compute_partition_data():
"""Test get_num_xcds when no compute partition data found - covers lines 307-309"""
from src.utils.mi_gpu_spec import MIGPUSpecs
mock_dict = {"gfx942": None}
with patch.object(MIGPUSpecs, "_gpu_arch_to_compute_partition_dict", mock_dict):
result = MIGPUSpecs.get_num_xcds(gpu_arch="gfx942")
@pytest.mark.misc
def test_get_num_xcds_uninitialized_dict():
"""Test get_num_xcds when XCD dict not populated - covers lines 315-317"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with patch.object(MIGPUSpecs, "_num_xcds_dict", {}):
with pytest.raises(SystemExit):
MIGPUSpecs.get_num_xcds(gpu_arch="gfx950", gpu_model="MI350")
@pytest.mark.misc
def test_get_num_xcds_unknown_gpu_model():
"""Test get_num_xcds with unknown gpu model - covers lines 319-321"""
from src.utils.mi_gpu_spec import MIGPUSpecs
result = MIGPUSpecs.get_num_xcds(gpu_arch="gfx950", gpu_model="UNKNOWN_MODEL")
@pytest.mark.misc
def test_get_num_xcds_no_compute_partition():
"""Test get_num_xcds with no compute partition - covers lines 325-327"""
from src.utils.mi_gpu_spec import MIGPUSpecs
result = MIGPUSpecs.get_num_xcds(
gpu_arch="gfx950", gpu_model="MI350", compute_partition=""
)
@pytest.mark.misc
def test_get_num_xcds_unknown_compute_partition():
"""Test get_num_xcds with unknown compute partition - covers lines 329-332"""
from src.utils.mi_gpu_spec import MIGPUSpecs
result = MIGPUSpecs.get_num_xcds(
gpu_arch="gfx950", gpu_model="MI350", compute_partition="UNKNOWN"
)
@pytest.mark.misc
def test_get_num_xcds_none_partition_value():
"""Test get_num_xcds when partition value is None - covers lines 338-340"""
from src.utils.mi_gpu_spec import MIGPUSpecs
mock_dict = {"mi350": {"spx": None}}
with patch.object(MIGPUSpecs, "_num_xcds_dict", mock_dict):
result = MIGPUSpecs.get_num_xcds(
gpu_arch="gfx950", gpu_model="MI350", compute_partition="spx"
)
@pytest.mark.misc
def test_get_num_xcds_no_gpu_model():
"""Test get_num_xcds with no gpu model - covers line 342"""
from src.utils.mi_gpu_spec import MIGPUSpecs
result = MIGPUSpecs.get_num_xcds(
gpu_arch="gfx950", gpu_model="", compute_partition="spx"
)
@pytest.mark.misc
def test_get_chip_id_dict_empty():
"""Test get_chip_id_dict when dict is empty - covers line 352"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with patch.object(MIGPUSpecs, "_chip_id_dict", {}):
with patch("src.utils.mi_gpu_spec.console_error") as mock_error:
result = MIGPUSpecs.get_chip_id_dict()
mock_error.assert_called_once()
@pytest.mark.misc
def test_get_num_xcds_dict_empty():
"""Test get_num_xcds_dict when dict is empty - covers line 359"""
from src.utils.mi_gpu_spec import MIGPUSpecs
with patch.object(MIGPUSpecs, "_num_xcds_dict", {}):
with patch("src.utils.mi_gpu_spec.console_error") as mock_error:
result = MIGPUSpecs.get_num_xcds_dict()
mock_error.assert_called_once()
@pytest.mark.misc
def test_normal_functionality_still_works():
"""Ensure that normal paths still work after adding error handling tests"""
from src.utils.mi_gpu_spec import MIGPUSpecs
result = MIGPUSpecs.get_gpu_model("gfx906", None)
assert result is not None
result = MIGPUSpecs.get_gpu_series("gfx906")
assert result is not None
result = MIGPUSpecs.get_num_xcds(gpu_arch="gfx906")
assert result == 1
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,GRBM_COUNT,GRBM_GUI_ACTIVE,SQ_WAVES,SQ_IFETCH,SQ_IFETCH_LEVEL,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,1267481,1267481,1048576,256,0,0,8,8,16,64,0x0,0x7f0eb8168ec0,120424,120424,16384,65536,13369,1717376,1410193234401133,1410204895308401,1410204895332881,1410193242172960
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,1267481,1267481,1048576,256,0,0,8,8,16,64,0x0,0x7f0eb8168ec0,46836,46836,16384,65536,8058,1048584,1410193242195944,1410204895428561,1410204895447761,1410193242512571
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,1267481,1267481,1048576,256,0,0,8,8,16,64,0x0,0x7f0eb8168ec0,43828,43828,16384,65536,7998,1048588,1410193242544701,1410204895469361,1410204895488081,1410193242740050
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj GRBM_COUNT GRBM_GUI_ACTIVE SQ_WAVES SQ_IFETCH SQ_IFETCH_LEVEL SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 1267481 1267481 1048576 256 0 0 8 8 16 64 0x0 0x7f0eb8168ec0 120424 120424 16384 65536 13369 1717376 1410193234401133 1410204895308401 1410204895332881 1410193242172960
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 1267481 1267481 1048576 256 0 0 8 8 16 64 0x0 0x7f0eb8168ec0 46836 46836 16384 65536 8058 1048584 1410193242195944 1410204895428561 1410204895447761 1410193242512571
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 1267481 1267481 1048576 256 0 0 8 8 16 64 0x0 0x7f0eb8168ec0 43828 43828 16384 65536 7998 1048588 1410193242544701 1410204895469361 1410204895488081 1410193242740050
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,SQ_INSTS_LDS,SQ_INST_LEVEL_LDS,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,1267667,1267667,1048576,256,0,0,8,8,16,64,0x0,0x7f9eef0c0ec0,0,0,0,1410193715977501,1410204895308401,1410204895332881,1410193723553168
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,1267667,1267667,1048576,256,0,0,8,8,16,64,0x0,0x7f9eef0c0ec0,0,0,0,1410193723574359,1410204895428561,1410204895447761,1410193723871880
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,1267667,1267667,1048576,256,0,0,8,8,16,64,0x0,0x7f9eef0c0ec0,0,0,0,1410193723900664,1410204895469361,1410204895488081,1410193724075433
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj SQ_INSTS_LDS SQ_INST_LEVEL_LDS SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 1267667 1267667 1048576 256 0 0 8 8 16 64 0x0 0x7f9eef0c0ec0 0 0 0 1410193715977501 1410204895308401 1410204895332881 1410193723553168
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 1267667 1267667 1048576 256 0 0 8 8 16 64 0x0 0x7f9eef0c0ec0 0 0 0 1410193723574359 1410204895428561 1410204895447761 1410193723871880
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 1267667 1267667 1048576 256 0 0 8 8 16 64 0x0 0x7f9eef0c0ec0 0 0 0 1410193723900664 1410204895469361 1410204895488081 1410193724075433
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,SQ_INSTS_SMEM,SQ_INST_LEVEL_SMEM,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,1267850,1267850,1048576,256,0,0,8,8,16,64,0x0,0x7f29fc24cec0,65536,217080,27847144,1410194196106960,1410204895308401,1410204895332881,1410194203543485
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,1267850,1267850,1048576,256,0,0,8,8,16,64,0x0,0x7f29fc24cec0,65536,201340,25741952,1410194203562862,1410204895428561,1410204895447761,1410194203889688
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,1267850,1267850,1048576,256,0,0,8,8,16,64,0x0,0x7f29fc24cec0,65536,200810,25639968,1410194203918102,1410204895469361,1410204895488081,1410194204085558
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj SQ_INSTS_SMEM SQ_INST_LEVEL_SMEM SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 1267850 1267850 1048576 256 0 0 8 8 16 64 0x0 0x7f29fc24cec0 65536 217080 27847144 1410194196106960 1410204895308401 1410204895332881 1410194203543485
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 1267850 1267850 1048576 256 0 0 8 8 16 64 0x0 0x7f29fc24cec0 65536 201340 25741952 1410194203562862 1410204895428561 1410204895447761 1410194203889688
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 1267850 1267850 1048576 256 0 0 8 8 16 64 0x0 0x7f29fc24cec0 65536 200810 25639968 1410194203918102 1410204895469361 1410204895488081 1410194204085558
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,SQ_INSTS_VMEM,SQ_INST_LEVEL_VMEM,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,1268033,1268033,1048576,256,0,0,8,8,16,64,0x0,0x7fedffc74ec0,32768,609944,78081400,1410194670380245,1410204895308401,1410204895332881,1410194678086308
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,1268033,1268033,1048576,256,0,0,8,8,16,64,0x0,0x7fedffc74ec0,32768,673533,86217068,1410194678107769,1410204895428561,1410204895447761,1410194678459913
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,1268033,1268033,1048576,256,0,0,8,8,16,64,0x0,0x7fedffc74ec0,32768,625490,80060980,1410194678486053,1410204895469361,1410204895488081,1410194678661503
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj SQ_INSTS_VMEM SQ_INST_LEVEL_VMEM SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 1268033 1268033 1048576 256 0 0 8 8 16 64 0x0 0x7fedffc74ec0 32768 609944 78081400 1410194670380245 1410204895308401 1410204895332881 1410194678086308
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 1268033 1268033 1048576 256 0 0 8 8 16 64 0x0 0x7fedffc74ec0 32768 673533 86217068 1410194678107769 1410204895428561 1410204895447761 1410194678459913
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 1268033 1268033 1048576 256 0 0 8 8 16 64 0x0 0x7fedffc74ec0 32768 625490 80060980 1410194678486053 1410204895469361 1410204895488081 1410194678661503
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,GRBM_COUNT,GRBM_GUI_ACTIVE,CPC_ME1_BUSY_FOR_PACKET_DECODE,SQ_CYCLES,SQ_WAVES,SQ_WAVE_CYCLES,SQ_BUSY_CYCLES,SQ_LEVEL_WAVES,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,1268218,1268218,1048576,256,0,0,8,8,16,64,0x0,0x7fa94f5d4ec0,48952,48952,18068,391624,16384,25128672,238750,0,101043548,1410195147235800,1410204895308401,1410204895332881,1410195154883924
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,1268218,1268218,1048576,256,0,0,8,8,16,64,0x0,0x7fa94f5d4ec0,42936,42936,13804,343496,16384,24583226,234692,0,98863936,1410195154913951,1410204895428561,1410204895447761,1410195155354471
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,1268218,1268218,1048576,256,0,0,8,8,16,64,0x0,0x7fa94f5d4ec0,42192,42192,13020,337544,16384,24104198,233666,0,96939712,1410195155392643,1410204895469361,1410204895488081,1410195155592380
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj GRBM_COUNT GRBM_GUI_ACTIVE CPC_ME1_BUSY_FOR_PACKET_DECODE SQ_CYCLES SQ_WAVES SQ_WAVE_CYCLES SQ_BUSY_CYCLES SQ_LEVEL_WAVES SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 1268218 1268218 1048576 256 0 0 8 8 16 64 0x0 0x7fa94f5d4ec0 48952 48952 18068 391624 16384 25128672 238750 0 101043548 1410195147235800 1410204895308401 1410204895332881 1410195154883924
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 1268218 1268218 1048576 256 0 0 8 8 16 64 0x0 0x7fa94f5d4ec0 42936 42936 13804 343496 16384 24583226 234692 0 98863936 1410195154913951 1410204895428561 1410204895447761 1410195155354471
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 1268218 1268218 1048576 256 0 0 8 8 16 64 0x0 0x7fa94f5d4ec0 42192 42192 13020 337544 16384 24104198 233666 0 96939712 1410195155392643 1410204895469361 1410204895488081 1410195155592380
@@ -0,0 +1,679 @@
Omniperf version: 2.0.0-RC1
Profiler choice: rocprofv1
Path: /home1/josantos/omniperf/tests/workloads/device_filter/MI100
Target: MI100
Command: ./tests/vcopy -n 1048576 -b 256 -i 3
Kernel Selection: None
Dispatch Selection: None
IP Blocks: All
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Collecting Performance Counters
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/SQ_IFETCH_LEVEL.txt
|-> [rocprof] RPL: on '240321_155419' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/SQ_IFETCH_LEVEL.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155419_1267321'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155419_1267321/input0_results_240321_155419'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155419_1267321/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 6 metrics
|-> [rocprof] GRBM_COUNT, GRBM_GUI_ACTIVE, SQ_WAVES, SQ_IFETCH, SQ_IFETCH_LEVEL, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155419_1267321/input0_results_240321_155419
|-> [rocprof] File 'tests/workloads/device_filter/MI100/SQ_IFETCH_LEVEL.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/SQ_INST_LEVEL_LDS.txt
|-> [rocprof] RPL: on '240321_155419' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/SQ_INST_LEVEL_LDS.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155419_1267507'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155419_1267507/input0_results_240321_155419'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155419_1267507/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 3 metrics
|-> [rocprof] SQ_INSTS_LDS, SQ_INST_LEVEL_LDS, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155419_1267507/input0_results_240321_155419
|-> [rocprof] File 'tests/workloads/device_filter/MI100/SQ_INST_LEVEL_LDS.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/SQ_INST_LEVEL_SMEM.txt
|-> [rocprof] RPL: on '240321_155420' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/SQ_INST_LEVEL_SMEM.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155420_1267690'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155420_1267690/input0_results_240321_155420'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155420_1267690/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 3 metrics
|-> [rocprof] SQ_INSTS_SMEM, SQ_INST_LEVEL_SMEM, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155420_1267690/input0_results_240321_155420
|-> [rocprof] File 'tests/workloads/device_filter/MI100/SQ_INST_LEVEL_SMEM.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/SQ_INST_LEVEL_VMEM.txt
|-> [rocprof] RPL: on '240321_155420' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/SQ_INST_LEVEL_VMEM.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155420_1267873'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155420_1267873/input0_results_240321_155420'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155420_1267873/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 3 metrics
|-> [rocprof] SQ_INSTS_VMEM, SQ_INST_LEVEL_VMEM, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155420_1267873/input0_results_240321_155420
|-> [rocprof] File 'tests/workloads/device_filter/MI100/SQ_INST_LEVEL_VMEM.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/SQ_LEVEL_WAVES.txt
|-> [rocprof] RPL: on '240321_155421' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/SQ_LEVEL_WAVES.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155421_1268058'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155421_1268058/input0_results_240321_155421'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155421_1268058/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 9 metrics
|-> [rocprof] GRBM_COUNT, GRBM_GUI_ACTIVE, CPC_ME1_BUSY_FOR_PACKET_DECODE, SQ_CYCLES, SQ_WAVES, SQ_WAVE_CYCLES, SQ_BUSY_CYCLES, SQ_LEVEL_WAVES, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155421_1268058/input0_results_240321_155421
|-> [rocprof] File 'tests/workloads/device_filter/MI100/SQ_LEVEL_WAVES.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_0.txt
|-> [rocprof] RPL: on '240321_155421' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_0.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155421_1268241'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155421_1268241/input0_results_240321_155421'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155421_1268241/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 28 metrics
|-> [rocprof] SQ_CYCLES, SQ_BUSY_CYCLES, SQ_BUSY_CU_CYCLES, SQ_WAVES, SQ_WAVE_CYCLES, SQC_TC_INST_REQ, SQC_TC_DATA_READ_REQ, SQC_TC_DATA_WRITE_REQ, GRBM_COUNT, GRBM_GUI_ACTIVE, TCP_GATE_EN1_sum, TCP_GATE_EN2_sum, TCP_TD_TCP_STALL_CYCLES_sum, TCP_TCR_TCP_STALL_CYCLES_sum, TA_TA_BUSY_sum, TA_BUFFER_WAVEFRONTS_sum, TD_TD_BUSY_sum, TD_TC_STALL_sum, SPI_CSN_WINDOW_VALID, SPI_CSN_BUSY, CPC_CPC_STAT_BUSY, CPC_CPC_STAT_IDLE, CPF_CPF_STAT_BUSY, CPF_CPF_STAT_STALL, TCC_CYCLE_sum, TCC_BUSY_sum, TCC_PROBE_sum, TCC_PROBE_ALL_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155421_1268241/input0_results_240321_155421
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_0.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_1.txt
|-> [rocprof] RPL: on '240321_155422' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_1.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155422_1268424'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155422_1268424/input0_results_240321_155422'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155422_1268424/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 27 metrics
|-> [rocprof] SQC_TC_DATA_ATOMIC_REQ, SQC_TC_STALL, SQC_TC_REQ, SQC_DCACHE_REQ_READ_16, SQC_ICACHE_REQ, SQC_ICACHE_HITS, SQC_ICACHE_MISSES, SQC_ICACHE_MISSES_DUPLICATE, GRBM_SPI_BUSY, TCP_READ_TAGCONFLICT_STALL_CYCLES_sum, TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum, TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum, TCP_TA_TCP_STATE_READ_sum, TA_BUFFER_READ_WAVEFRONTS_sum, TA_BUFFER_WRITE_WAVEFRONTS_sum, TD_COALESCABLE_WAVEFRONT_sum, TD_LOAD_WAVEFRONT_sum, SPI_CSN_NUM_THREADGROUPS, SPI_CSN_WAVE, CPC_CPC_TCIU_BUSY, CPC_CPC_TCIU_IDLE, CPF_CPF_TCIU_BUSY, CPF_CPF_TCIU_STALL, TCC_NC_REQ_sum, TCC_UC_REQ_sum, TCC_CC_REQ_sum, TCC_RW_REQ_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155422_1268424/input0_results_240321_155422
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_1.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_10.txt
|-> [rocprof] RPL: on '240321_155422' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_10.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155422_1268607'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155422_1268607/input0_results_240321_155422'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155422_1268607/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 1 metrics
|-> [rocprof] TCC_EA_ATOMIC_LEVEL_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155422_1268607/input0_results_240321_155422
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_10.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_11.txt
|-> [rocprof] RPL: on '240321_155423' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_11.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155423_1268793'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155423_1268793/input0_results_240321_155423'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155423_1268793/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_ATOMIC[0], TCC_CYCLE[0], TCC_EA_ATOMIC[0], TCC_EA_ATOMIC_LEVEL[0], TCC_ATOMIC[1], TCC_CYCLE[1], TCC_EA_ATOMIC[1], TCC_EA_ATOMIC_LEVEL[1], TCC_ATOMIC[2], TCC_CYCLE[2], TCC_EA_ATOMIC[2], TCC_EA_ATOMIC_LEVEL[2], TCC_ATOMIC[3], TCC_CYCLE[3], TCC_EA_ATOMIC[3], TCC_EA_ATOMIC_LEVEL[3], TCC_ATOMIC[4], TCC_CYCLE[4], TCC_EA_ATOMIC[4], TCC_EA_ATOMIC_LEVEL[4], TCC_ATOMIC[5], TCC_CYCLE[5], TCC_EA_ATOMIC[5], TCC_EA_ATOMIC_LEVEL[5], TCC_ATOMIC[6], TCC_CYCLE[6], TCC_EA_ATOMIC[6], TCC_EA_ATOMIC_LEVEL[6], TCC_ATOMIC[7], TCC_CYCLE[7], TCC_EA_ATOMIC[7], TCC_EA_ATOMIC_LEVEL[7], TCC_ATOMIC[8], TCC_CYCLE[8], TCC_EA_ATOMIC[8], TCC_EA_ATOMIC_LEVEL[8], TCC_ATOMIC[9], TCC_CYCLE[9], TCC_EA_ATOMIC[9], TCC_EA_ATOMIC_LEVEL[9], TCC_ATOMIC[10], TCC_CYCLE[10], TCC_EA_ATOMIC[10], TCC_EA_ATOMIC_LEVEL[10], TCC_ATOMIC[11], TCC_CYCLE[11], TCC_EA_ATOMIC[11], TCC_EA_ATOMIC_LEVEL[11], TCC_ATOMIC[12], TCC_CYCLE[12], TCC_EA_ATOMIC[12], TCC_EA_ATOMIC_LEVEL[12], TCC_ATOMIC[13], TCC_CYCLE[13], TCC_EA_ATOMIC[13], TCC_EA_ATOMIC_LEVEL[13], TCC_ATOMIC[14], TCC_CYCLE[14], TCC_EA_ATOMIC[14], TCC_EA_ATOMIC_LEVEL[14], TCC_ATOMIC[15], TCC_CYCLE[15], TCC_EA_ATOMIC[15], TCC_EA_ATOMIC_LEVEL[15], TCC_ATOMIC[16], TCC_CYCLE[16], TCC_EA_ATOMIC[16], TCC_EA_ATOMIC_LEVEL[16], TCC_ATOMIC[17], TCC_CYCLE[17], TCC_EA_ATOMIC[17], TCC_EA_ATOMIC_LEVEL[17], TCC_ATOMIC[18], TCC_CYCLE[18], TCC_EA_ATOMIC[18], TCC_EA_ATOMIC_LEVEL[18], TCC_ATOMIC[19], TCC_CYCLE[19], TCC_EA_ATOMIC[19], TCC_EA_ATOMIC_LEVEL[19], TCC_ATOMIC[20], TCC_CYCLE[20], TCC_EA_ATOMIC[20], TCC_EA_ATOMIC_LEVEL[20], TCC_ATOMIC[21], TCC_CYCLE[21], TCC_EA_ATOMIC[21], TCC_EA_ATOMIC_LEVEL[21], TCC_ATOMIC[22], TCC_CYCLE[22], TCC_EA_ATOMIC[22], TCC_EA_ATOMIC_LEVEL[22], TCC_ATOMIC[23], TCC_CYCLE[23], TCC_EA_ATOMIC[23], TCC_EA_ATOMIC_LEVEL[23], TCC_ATOMIC[24], TCC_CYCLE[24], TCC_EA_ATOMIC[24], TCC_EA_ATOMIC_LEVEL[24], TCC_ATOMIC[25], TCC_CYCLE[25], TCC_EA_ATOMIC[25], TCC_EA_ATOMIC_LEVEL[25], TCC_ATOMIC[26], TCC_CYCLE[26], TCC_EA_ATOMIC[26], TCC_EA_ATOMIC_LEVEL[26], TCC_ATOMIC[27], TCC_CYCLE[27], TCC_EA_ATOMIC[27], TCC_EA_ATOMIC_LEVEL[27], TCC_ATOMIC[28], TCC_CYCLE[28], TCC_EA_ATOMIC[28], TCC_EA_ATOMIC_LEVEL[28], TCC_ATOMIC[29], TCC_CYCLE[29], TCC_EA_ATOMIC[29], TCC_EA_ATOMIC_LEVEL[29], TCC_ATOMIC[30], TCC_CYCLE[30], TCC_EA_ATOMIC[30], TCC_EA_ATOMIC_LEVEL[30], TCC_ATOMIC[31], TCC_CYCLE[31], TCC_EA_ATOMIC[31], TCC_EA_ATOMIC_LEVEL[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155423_1268793/input0_results_240321_155423
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_11.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_12.txt
|-> [rocprof] RPL: on '240321_155423' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_12.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155423_1268978'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155423_1268978/input0_results_240321_155423'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155423_1268978/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_EA_RDREQ[0], TCC_EA_RDREQ_32B[0], TCC_EA_RDREQ_DRAM_CREDIT_STALL[0], TCC_EA_RDREQ_GMI_CREDIT_STALL[0], TCC_EA_RDREQ[1], TCC_EA_RDREQ_32B[1], TCC_EA_RDREQ_DRAM_CREDIT_STALL[1], TCC_EA_RDREQ_GMI_CREDIT_STALL[1], TCC_EA_RDREQ[2], TCC_EA_RDREQ_32B[2], TCC_EA_RDREQ_DRAM_CREDIT_STALL[2], TCC_EA_RDREQ_GMI_CREDIT_STALL[2], TCC_EA_RDREQ[3], TCC_EA_RDREQ_32B[3], TCC_EA_RDREQ_DRAM_CREDIT_STALL[3], TCC_EA_RDREQ_GMI_CREDIT_STALL[3], TCC_EA_RDREQ[4], TCC_EA_RDREQ_32B[4], TCC_EA_RDREQ_DRAM_CREDIT_STALL[4], TCC_EA_RDREQ_GMI_CREDIT_STALL[4], TCC_EA_RDREQ[5], TCC_EA_RDREQ_32B[5], TCC_EA_RDREQ_DRAM_CREDIT_STALL[5], TCC_EA_RDREQ_GMI_CREDIT_STALL[5], TCC_EA_RDREQ[6], TCC_EA_RDREQ_32B[6], TCC_EA_RDREQ_DRAM_CREDIT_STALL[6], TCC_EA_RDREQ_GMI_CREDIT_STALL[6], TCC_EA_RDREQ[7], TCC_EA_RDREQ_32B[7], TCC_EA_RDREQ_DRAM_CREDIT_STALL[7], TCC_EA_RDREQ_GMI_CREDIT_STALL[7], TCC_EA_RDREQ[8], TCC_EA_RDREQ_32B[8], TCC_EA_RDREQ_DRAM_CREDIT_STALL[8], TCC_EA_RDREQ_GMI_CREDIT_STALL[8], TCC_EA_RDREQ[9], TCC_EA_RDREQ_32B[9], TCC_EA_RDREQ_DRAM_CREDIT_STALL[9], TCC_EA_RDREQ_GMI_CREDIT_STALL[9], TCC_EA_RDREQ[10], TCC_EA_RDREQ_32B[10], TCC_EA_RDREQ_DRAM_CREDIT_STALL[10], TCC_EA_RDREQ_GMI_CREDIT_STALL[10], TCC_EA_RDREQ[11], TCC_EA_RDREQ_32B[11], TCC_EA_RDREQ_DRAM_CREDIT_STALL[11], TCC_EA_RDREQ_GMI_CREDIT_STALL[11], TCC_EA_RDREQ[12], TCC_EA_RDREQ_32B[12], TCC_EA_RDREQ_DRAM_CREDIT_STALL[12], TCC_EA_RDREQ_GMI_CREDIT_STALL[12], TCC_EA_RDREQ[13], TCC_EA_RDREQ_32B[13], TCC_EA_RDREQ_DRAM_CREDIT_STALL[13], TCC_EA_RDREQ_GMI_CREDIT_STALL[13], TCC_EA_RDREQ[14], TCC_EA_RDREQ_32B[14], TCC_EA_RDREQ_DRAM_CREDIT_STALL[14], TCC_EA_RDREQ_GMI_CREDIT_STALL[14], TCC_EA_RDREQ[15], TCC_EA_RDREQ_32B[15], TCC_EA_RDREQ_DRAM_CREDIT_STALL[15], TCC_EA_RDREQ_GMI_CREDIT_STALL[15], TCC_EA_RDREQ[16], TCC_EA_RDREQ_32B[16], TCC_EA_RDREQ_DRAM_CREDIT_STALL[16], TCC_EA_RDREQ_GMI_CREDIT_STALL[16], TCC_EA_RDREQ[17], TCC_EA_RDREQ_32B[17], TCC_EA_RDREQ_DRAM_CREDIT_STALL[17], TCC_EA_RDREQ_GMI_CREDIT_STALL[17], TCC_EA_RDREQ[18], TCC_EA_RDREQ_32B[18], TCC_EA_RDREQ_DRAM_CREDIT_STALL[18], TCC_EA_RDREQ_GMI_CREDIT_STALL[18], TCC_EA_RDREQ[19], TCC_EA_RDREQ_32B[19], TCC_EA_RDREQ_DRAM_CREDIT_STALL[19], TCC_EA_RDREQ_GMI_CREDIT_STALL[19], TCC_EA_RDREQ[20], TCC_EA_RDREQ_32B[20], TCC_EA_RDREQ_DRAM_CREDIT_STALL[20], TCC_EA_RDREQ_GMI_CREDIT_STALL[20], TCC_EA_RDREQ[21], TCC_EA_RDREQ_32B[21], TCC_EA_RDREQ_DRAM_CREDIT_STALL[21], TCC_EA_RDREQ_GMI_CREDIT_STALL[21], TCC_EA_RDREQ[22], TCC_EA_RDREQ_32B[22], TCC_EA_RDREQ_DRAM_CREDIT_STALL[22], TCC_EA_RDREQ_GMI_CREDIT_STALL[22], TCC_EA_RDREQ[23], TCC_EA_RDREQ_32B[23], TCC_EA_RDREQ_DRAM_CREDIT_STALL[23], TCC_EA_RDREQ_GMI_CREDIT_STALL[23], TCC_EA_RDREQ[24], TCC_EA_RDREQ_32B[24], TCC_EA_RDREQ_DRAM_CREDIT_STALL[24], TCC_EA_RDREQ_GMI_CREDIT_STALL[24], TCC_EA_RDREQ[25], TCC_EA_RDREQ_32B[25], TCC_EA_RDREQ_DRAM_CREDIT_STALL[25], TCC_EA_RDREQ_GMI_CREDIT_STALL[25], TCC_EA_RDREQ[26], TCC_EA_RDREQ_32B[26], TCC_EA_RDREQ_DRAM_CREDIT_STALL[26], TCC_EA_RDREQ_GMI_CREDIT_STALL[26], TCC_EA_RDREQ[27], TCC_EA_RDREQ_32B[27], TCC_EA_RDREQ_DRAM_CREDIT_STALL[27], TCC_EA_RDREQ_GMI_CREDIT_STALL[27], TCC_EA_RDREQ[28], TCC_EA_RDREQ_32B[28], TCC_EA_RDREQ_DRAM_CREDIT_STALL[28], TCC_EA_RDREQ_GMI_CREDIT_STALL[28], TCC_EA_RDREQ[29], TCC_EA_RDREQ_32B[29], TCC_EA_RDREQ_DRAM_CREDIT_STALL[29], TCC_EA_RDREQ_GMI_CREDIT_STALL[29], TCC_EA_RDREQ[30], TCC_EA_RDREQ_32B[30], TCC_EA_RDREQ_DRAM_CREDIT_STALL[30], TCC_EA_RDREQ_GMI_CREDIT_STALL[30], TCC_EA_RDREQ[31], TCC_EA_RDREQ_32B[31], TCC_EA_RDREQ_DRAM_CREDIT_STALL[31], TCC_EA_RDREQ_GMI_CREDIT_STALL[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155423_1268978/input0_results_240321_155423
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_12.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_13.txt
|-> [rocprof] RPL: on '240321_155424' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_13.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155424_1269161'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155424_1269161/input0_results_240321_155424'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155424_1269161/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_EA_RDREQ_IO_CREDIT_STALL[0], TCC_EA_RDREQ_LEVEL[0], TCC_EA_WRREQ[0], TCC_EA_WRREQ_64B[0], TCC_EA_RDREQ_IO_CREDIT_STALL[1], TCC_EA_RDREQ_LEVEL[1], TCC_EA_WRREQ[1], TCC_EA_WRREQ_64B[1], TCC_EA_RDREQ_IO_CREDIT_STALL[2], TCC_EA_RDREQ_LEVEL[2], TCC_EA_WRREQ[2], TCC_EA_WRREQ_64B[2], TCC_EA_RDREQ_IO_CREDIT_STALL[3], TCC_EA_RDREQ_LEVEL[3], TCC_EA_WRREQ[3], TCC_EA_WRREQ_64B[3], TCC_EA_RDREQ_IO_CREDIT_STALL[4], TCC_EA_RDREQ_LEVEL[4], TCC_EA_WRREQ[4], TCC_EA_WRREQ_64B[4], TCC_EA_RDREQ_IO_CREDIT_STALL[5], TCC_EA_RDREQ_LEVEL[5], TCC_EA_WRREQ[5], TCC_EA_WRREQ_64B[5], TCC_EA_RDREQ_IO_CREDIT_STALL[6], TCC_EA_RDREQ_LEVEL[6], TCC_EA_WRREQ[6], TCC_EA_WRREQ_64B[6], TCC_EA_RDREQ_IO_CREDIT_STALL[7], TCC_EA_RDREQ_LEVEL[7], TCC_EA_WRREQ[7], TCC_EA_WRREQ_64B[7], TCC_EA_RDREQ_IO_CREDIT_STALL[8], TCC_EA_RDREQ_LEVEL[8], TCC_EA_WRREQ[8], TCC_EA_WRREQ_64B[8], TCC_EA_RDREQ_IO_CREDIT_STALL[9], TCC_EA_RDREQ_LEVEL[9], TCC_EA_WRREQ[9], TCC_EA_WRREQ_64B[9], TCC_EA_RDREQ_IO_CREDIT_STALL[10], TCC_EA_RDREQ_LEVEL[10], TCC_EA_WRREQ[10], TCC_EA_WRREQ_64B[10], TCC_EA_RDREQ_IO_CREDIT_STALL[11], TCC_EA_RDREQ_LEVEL[11], TCC_EA_WRREQ[11], TCC_EA_WRREQ_64B[11], TCC_EA_RDREQ_IO_CREDIT_STALL[12], TCC_EA_RDREQ_LEVEL[12], TCC_EA_WRREQ[12], TCC_EA_WRREQ_64B[12], TCC_EA_RDREQ_IO_CREDIT_STALL[13], TCC_EA_RDREQ_LEVEL[13], TCC_EA_WRREQ[13], TCC_EA_WRREQ_64B[13], TCC_EA_RDREQ_IO_CREDIT_STALL[14], TCC_EA_RDREQ_LEVEL[14], TCC_EA_WRREQ[14], TCC_EA_WRREQ_64B[14], TCC_EA_RDREQ_IO_CREDIT_STALL[15], TCC_EA_RDREQ_LEVEL[15], TCC_EA_WRREQ[15], TCC_EA_WRREQ_64B[15], TCC_EA_RDREQ_IO_CREDIT_STALL[16], TCC_EA_RDREQ_LEVEL[16], TCC_EA_WRREQ[16], TCC_EA_WRREQ_64B[16], TCC_EA_RDREQ_IO_CREDIT_STALL[17], TCC_EA_RDREQ_LEVEL[17], TCC_EA_WRREQ[17], TCC_EA_WRREQ_64B[17], TCC_EA_RDREQ_IO_CREDIT_STALL[18], TCC_EA_RDREQ_LEVEL[18], TCC_EA_WRREQ[18], TCC_EA_WRREQ_64B[18], TCC_EA_RDREQ_IO_CREDIT_STALL[19], TCC_EA_RDREQ_LEVEL[19], TCC_EA_WRREQ[19], TCC_EA_WRREQ_64B[19], TCC_EA_RDREQ_IO_CREDIT_STALL[20], TCC_EA_RDREQ_LEVEL[20], TCC_EA_WRREQ[20], TCC_EA_WRREQ_64B[20], TCC_EA_RDREQ_IO_CREDIT_STALL[21], TCC_EA_RDREQ_LEVEL[21], TCC_EA_WRREQ[21], TCC_EA_WRREQ_64B[21], TCC_EA_RDREQ_IO_CREDIT_STALL[22], TCC_EA_RDREQ_LEVEL[22], TCC_EA_WRREQ[22], TCC_EA_WRREQ_64B[22], TCC_EA_RDREQ_IO_CREDIT_STALL[23], TCC_EA_RDREQ_LEVEL[23], TCC_EA_WRREQ[23], TCC_EA_WRREQ_64B[23], TCC_EA_RDREQ_IO_CREDIT_STALL[24], TCC_EA_RDREQ_LEVEL[24], TCC_EA_WRREQ[24], TCC_EA_WRREQ_64B[24], TCC_EA_RDREQ_IO_CREDIT_STALL[25], TCC_EA_RDREQ_LEVEL[25], TCC_EA_WRREQ[25], TCC_EA_WRREQ_64B[25], TCC_EA_RDREQ_IO_CREDIT_STALL[26], TCC_EA_RDREQ_LEVEL[26], TCC_EA_WRREQ[26], TCC_EA_WRREQ_64B[26], TCC_EA_RDREQ_IO_CREDIT_STALL[27], TCC_EA_RDREQ_LEVEL[27], TCC_EA_WRREQ[27], TCC_EA_WRREQ_64B[27], TCC_EA_RDREQ_IO_CREDIT_STALL[28], TCC_EA_RDREQ_LEVEL[28], TCC_EA_WRREQ[28], TCC_EA_WRREQ_64B[28], TCC_EA_RDREQ_IO_CREDIT_STALL[29], TCC_EA_RDREQ_LEVEL[29], TCC_EA_WRREQ[29], TCC_EA_WRREQ_64B[29], TCC_EA_RDREQ_IO_CREDIT_STALL[30], TCC_EA_RDREQ_LEVEL[30], TCC_EA_WRREQ[30], TCC_EA_WRREQ_64B[30], TCC_EA_RDREQ_IO_CREDIT_STALL[31], TCC_EA_RDREQ_LEVEL[31], TCC_EA_WRREQ[31], TCC_EA_WRREQ_64B[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155424_1269161/input0_results_240321_155424
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_13.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_14.txt
|-> [rocprof] RPL: on '240321_155425' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_14.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155425_1269348'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155425_1269348/input0_results_240321_155425'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155425_1269348/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_EA_WRREQ_DRAM_CREDIT_STALL[0], TCC_EA_WRREQ_GMI_CREDIT_STALL[0], TCC_EA_WRREQ_IO_CREDIT_STALL[0], TCC_EA_WRREQ_LEVEL[0], TCC_EA_WRREQ_DRAM_CREDIT_STALL[1], TCC_EA_WRREQ_GMI_CREDIT_STALL[1], TCC_EA_WRREQ_IO_CREDIT_STALL[1], TCC_EA_WRREQ_LEVEL[1], TCC_EA_WRREQ_DRAM_CREDIT_STALL[2], TCC_EA_WRREQ_GMI_CREDIT_STALL[2], TCC_EA_WRREQ_IO_CREDIT_STALL[2], TCC_EA_WRREQ_LEVEL[2], TCC_EA_WRREQ_DRAM_CREDIT_STALL[3], TCC_EA_WRREQ_GMI_CREDIT_STALL[3], TCC_EA_WRREQ_IO_CREDIT_STALL[3], TCC_EA_WRREQ_LEVEL[3], TCC_EA_WRREQ_DRAM_CREDIT_STALL[4], TCC_EA_WRREQ_GMI_CREDIT_STALL[4], TCC_EA_WRREQ_IO_CREDIT_STALL[4], TCC_EA_WRREQ_LEVEL[4], TCC_EA_WRREQ_DRAM_CREDIT_STALL[5], TCC_EA_WRREQ_GMI_CREDIT_STALL[5], TCC_EA_WRREQ_IO_CREDIT_STALL[5], TCC_EA_WRREQ_LEVEL[5], TCC_EA_WRREQ_DRAM_CREDIT_STALL[6], TCC_EA_WRREQ_GMI_CREDIT_STALL[6], TCC_EA_WRREQ_IO_CREDIT_STALL[6], TCC_EA_WRREQ_LEVEL[6], TCC_EA_WRREQ_DRAM_CREDIT_STALL[7], TCC_EA_WRREQ_GMI_CREDIT_STALL[7], TCC_EA_WRREQ_IO_CREDIT_STALL[7], TCC_EA_WRREQ_LEVEL[7], TCC_EA_WRREQ_DRAM_CREDIT_STALL[8], TCC_EA_WRREQ_GMI_CREDIT_STALL[8], TCC_EA_WRREQ_IO_CREDIT_STALL[8], TCC_EA_WRREQ_LEVEL[8], TCC_EA_WRREQ_DRAM_CREDIT_STALL[9], TCC_EA_WRREQ_GMI_CREDIT_STALL[9], TCC_EA_WRREQ_IO_CREDIT_STALL[9], TCC_EA_WRREQ_LEVEL[9], TCC_EA_WRREQ_DRAM_CREDIT_STALL[10], TCC_EA_WRREQ_GMI_CREDIT_STALL[10], TCC_EA_WRREQ_IO_CREDIT_STALL[10], TCC_EA_WRREQ_LEVEL[10], TCC_EA_WRREQ_DRAM_CREDIT_STALL[11], TCC_EA_WRREQ_GMI_CREDIT_STALL[11], TCC_EA_WRREQ_IO_CREDIT_STALL[11], TCC_EA_WRREQ_LEVEL[11], TCC_EA_WRREQ_DRAM_CREDIT_STALL[12], TCC_EA_WRREQ_GMI_CREDIT_STALL[12], TCC_EA_WRREQ_IO_CREDIT_STALL[12], TCC_EA_WRREQ_LEVEL[12], TCC_EA_WRREQ_DRAM_CREDIT_STALL[13], TCC_EA_WRREQ_GMI_CREDIT_STALL[13], TCC_EA_WRREQ_IO_CREDIT_STALL[13], TCC_EA_WRREQ_LEVEL[13], TCC_EA_WRREQ_DRAM_CREDIT_STALL[14], TCC_EA_WRREQ_GMI_CREDIT_STALL[14], TCC_EA_WRREQ_IO_CREDIT_STALL[14], TCC_EA_WRREQ_LEVEL[14], TCC_EA_WRREQ_DRAM_CREDIT_STALL[15], TCC_EA_WRREQ_GMI_CREDIT_STALL[15], TCC_EA_WRREQ_IO_CREDIT_STALL[15], TCC_EA_WRREQ_LEVEL[15], TCC_EA_WRREQ_DRAM_CREDIT_STALL[16], TCC_EA_WRREQ_GMI_CREDIT_STALL[16], TCC_EA_WRREQ_IO_CREDIT_STALL[16], TCC_EA_WRREQ_LEVEL[16], TCC_EA_WRREQ_DRAM_CREDIT_STALL[17], TCC_EA_WRREQ_GMI_CREDIT_STALL[17], TCC_EA_WRREQ_IO_CREDIT_STALL[17], TCC_EA_WRREQ_LEVEL[17], TCC_EA_WRREQ_DRAM_CREDIT_STALL[18], TCC_EA_WRREQ_GMI_CREDIT_STALL[18], TCC_EA_WRREQ_IO_CREDIT_STALL[18], TCC_EA_WRREQ_LEVEL[18], TCC_EA_WRREQ_DRAM_CREDIT_STALL[19], TCC_EA_WRREQ_GMI_CREDIT_STALL[19], TCC_EA_WRREQ_IO_CREDIT_STALL[19], TCC_EA_WRREQ_LEVEL[19], TCC_EA_WRREQ_DRAM_CREDIT_STALL[20], TCC_EA_WRREQ_GMI_CREDIT_STALL[20], TCC_EA_WRREQ_IO_CREDIT_STALL[20], TCC_EA_WRREQ_LEVEL[20], TCC_EA_WRREQ_DRAM_CREDIT_STALL[21], TCC_EA_WRREQ_GMI_CREDIT_STALL[21], TCC_EA_WRREQ_IO_CREDIT_STALL[21], TCC_EA_WRREQ_LEVEL[21], TCC_EA_WRREQ_DRAM_CREDIT_STALL[22], TCC_EA_WRREQ_GMI_CREDIT_STALL[22], TCC_EA_WRREQ_IO_CREDIT_STALL[22], TCC_EA_WRREQ_LEVEL[22], TCC_EA_WRREQ_DRAM_CREDIT_STALL[23], TCC_EA_WRREQ_GMI_CREDIT_STALL[23], TCC_EA_WRREQ_IO_CREDIT_STALL[23], TCC_EA_WRREQ_LEVEL[23], TCC_EA_WRREQ_DRAM_CREDIT_STALL[24], TCC_EA_WRREQ_GMI_CREDIT_STALL[24], TCC_EA_WRREQ_IO_CREDIT_STALL[24], TCC_EA_WRREQ_LEVEL[24], TCC_EA_WRREQ_DRAM_CREDIT_STALL[25], TCC_EA_WRREQ_GMI_CREDIT_STALL[25], TCC_EA_WRREQ_IO_CREDIT_STALL[25], TCC_EA_WRREQ_LEVEL[25], TCC_EA_WRREQ_DRAM_CREDIT_STALL[26], TCC_EA_WRREQ_GMI_CREDIT_STALL[26], TCC_EA_WRREQ_IO_CREDIT_STALL[26], TCC_EA_WRREQ_LEVEL[26], TCC_EA_WRREQ_DRAM_CREDIT_STALL[27], TCC_EA_WRREQ_GMI_CREDIT_STALL[27], TCC_EA_WRREQ_IO_CREDIT_STALL[27], TCC_EA_WRREQ_LEVEL[27], TCC_EA_WRREQ_DRAM_CREDIT_STALL[28], TCC_EA_WRREQ_GMI_CREDIT_STALL[28], TCC_EA_WRREQ_IO_CREDIT_STALL[28], TCC_EA_WRREQ_LEVEL[28], TCC_EA_WRREQ_DRAM_CREDIT_STALL[29], TCC_EA_WRREQ_GMI_CREDIT_STALL[29], TCC_EA_WRREQ_IO_CREDIT_STALL[29], TCC_EA_WRREQ_LEVEL[29], TCC_EA_WRREQ_DRAM_CREDIT_STALL[30], TCC_EA_WRREQ_GMI_CREDIT_STALL[30], TCC_EA_WRREQ_IO_CREDIT_STALL[30], TCC_EA_WRREQ_LEVEL[30], TCC_EA_WRREQ_DRAM_CREDIT_STALL[31], TCC_EA_WRREQ_GMI_CREDIT_STALL[31], TCC_EA_WRREQ_IO_CREDIT_STALL[31], TCC_EA_WRREQ_LEVEL[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155425_1269348/input0_results_240321_155425
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_14.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_15.txt
|-> [rocprof] RPL: on '240321_155425' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_15.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155425_1269531'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155425_1269531/input0_results_240321_155425'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155425_1269531/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_HIT[0], TCC_MISS[0], TCC_READ[0], TCC_REQ[0], TCC_HIT[1], TCC_MISS[1], TCC_READ[1], TCC_REQ[1], TCC_HIT[2], TCC_MISS[2], TCC_READ[2], TCC_REQ[2], TCC_HIT[3], TCC_MISS[3], TCC_READ[3], TCC_REQ[3], TCC_HIT[4], TCC_MISS[4], TCC_READ[4], TCC_REQ[4], TCC_HIT[5], TCC_MISS[5], TCC_READ[5], TCC_REQ[5], TCC_HIT[6], TCC_MISS[6], TCC_READ[6], TCC_REQ[6], TCC_HIT[7], TCC_MISS[7], TCC_READ[7], TCC_REQ[7], TCC_HIT[8], TCC_MISS[8], TCC_READ[8], TCC_REQ[8], TCC_HIT[9], TCC_MISS[9], TCC_READ[9], TCC_REQ[9], TCC_HIT[10], TCC_MISS[10], TCC_READ[10], TCC_REQ[10], TCC_HIT[11], TCC_MISS[11], TCC_READ[11], TCC_REQ[11], TCC_HIT[12], TCC_MISS[12], TCC_READ[12], TCC_REQ[12], TCC_HIT[13], TCC_MISS[13], TCC_READ[13], TCC_REQ[13], TCC_HIT[14], TCC_MISS[14], TCC_READ[14], TCC_REQ[14], TCC_HIT[15], TCC_MISS[15], TCC_READ[15], TCC_REQ[15], TCC_HIT[16], TCC_MISS[16], TCC_READ[16], TCC_REQ[16], TCC_HIT[17], TCC_MISS[17], TCC_READ[17], TCC_REQ[17], TCC_HIT[18], TCC_MISS[18], TCC_READ[18], TCC_REQ[18], TCC_HIT[19], TCC_MISS[19], TCC_READ[19], TCC_REQ[19], TCC_HIT[20], TCC_MISS[20], TCC_READ[20], TCC_REQ[20], TCC_HIT[21], TCC_MISS[21], TCC_READ[21], TCC_REQ[21], TCC_HIT[22], TCC_MISS[22], TCC_READ[22], TCC_REQ[22], TCC_HIT[23], TCC_MISS[23], TCC_READ[23], TCC_REQ[23], TCC_HIT[24], TCC_MISS[24], TCC_READ[24], TCC_REQ[24], TCC_HIT[25], TCC_MISS[25], TCC_READ[25], TCC_REQ[25], TCC_HIT[26], TCC_MISS[26], TCC_READ[26], TCC_REQ[26], TCC_HIT[27], TCC_MISS[27], TCC_READ[27], TCC_REQ[27], TCC_HIT[28], TCC_MISS[28], TCC_READ[28], TCC_REQ[28], TCC_HIT[29], TCC_MISS[29], TCC_READ[29], TCC_REQ[29], TCC_HIT[30], TCC_MISS[30], TCC_READ[30], TCC_REQ[30], TCC_HIT[31], TCC_MISS[31], TCC_READ[31], TCC_REQ[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155425_1269531/input0_results_240321_155425
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_15.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_16.txt
|-> [rocprof] RPL: on '240321_155426' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_16.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155426_1269719'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155426_1269719/input0_results_240321_155426'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155426_1269719/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 96 metrics
|-> [rocprof] TCC_RW_REQ[0], TCC_TOO_MANY_EA_WRREQS_STALL[0], TCC_WRITE[0], TCC_RW_REQ[1], TCC_TOO_MANY_EA_WRREQS_STALL[1], TCC_WRITE[1], TCC_RW_REQ[2], TCC_TOO_MANY_EA_WRREQS_STALL[2], TCC_WRITE[2], TCC_RW_REQ[3], TCC_TOO_MANY_EA_WRREQS_STALL[3], TCC_WRITE[3], TCC_RW_REQ[4], TCC_TOO_MANY_EA_WRREQS_STALL[4], TCC_WRITE[4], TCC_RW_REQ[5], TCC_TOO_MANY_EA_WRREQS_STALL[5], TCC_WRITE[5], TCC_RW_REQ[6], TCC_TOO_MANY_EA_WRREQS_STALL[6], TCC_WRITE[6], TCC_RW_REQ[7], TCC_TOO_MANY_EA_WRREQS_STALL[7], TCC_WRITE[7], TCC_RW_REQ[8], TCC_TOO_MANY_EA_WRREQS_STALL[8], TCC_WRITE[8], TCC_RW_REQ[9], TCC_TOO_MANY_EA_WRREQS_STALL[9], TCC_WRITE[9], TCC_RW_REQ[10], TCC_TOO_MANY_EA_WRREQS_STALL[10], TCC_WRITE[10], TCC_RW_REQ[11], TCC_TOO_MANY_EA_WRREQS_STALL[11], TCC_WRITE[11], TCC_RW_REQ[12], TCC_TOO_MANY_EA_WRREQS_STALL[12], TCC_WRITE[12], TCC_RW_REQ[13], TCC_TOO_MANY_EA_WRREQS_STALL[13], TCC_WRITE[13], TCC_RW_REQ[14], TCC_TOO_MANY_EA_WRREQS_STALL[14], TCC_WRITE[14], TCC_RW_REQ[15], TCC_TOO_MANY_EA_WRREQS_STALL[15], TCC_WRITE[15], TCC_RW_REQ[16], TCC_TOO_MANY_EA_WRREQS_STALL[16], TCC_WRITE[16], TCC_RW_REQ[17], TCC_TOO_MANY_EA_WRREQS_STALL[17], TCC_WRITE[17], TCC_RW_REQ[18], TCC_TOO_MANY_EA_WRREQS_STALL[18], TCC_WRITE[18], TCC_RW_REQ[19], TCC_TOO_MANY_EA_WRREQS_STALL[19], TCC_WRITE[19], TCC_RW_REQ[20], TCC_TOO_MANY_EA_WRREQS_STALL[20], TCC_WRITE[20], TCC_RW_REQ[21], TCC_TOO_MANY_EA_WRREQS_STALL[21], TCC_WRITE[21], TCC_RW_REQ[22], TCC_TOO_MANY_EA_WRREQS_STALL[22], TCC_WRITE[22], TCC_RW_REQ[23], TCC_TOO_MANY_EA_WRREQS_STALL[23], TCC_WRITE[23], TCC_RW_REQ[24], TCC_TOO_MANY_EA_WRREQS_STALL[24], TCC_WRITE[24], TCC_RW_REQ[25], TCC_TOO_MANY_EA_WRREQS_STALL[25], TCC_WRITE[25], TCC_RW_REQ[26], TCC_TOO_MANY_EA_WRREQS_STALL[26], TCC_WRITE[26], TCC_RW_REQ[27], TCC_TOO_MANY_EA_WRREQS_STALL[27], TCC_WRITE[27], TCC_RW_REQ[28], TCC_TOO_MANY_EA_WRREQS_STALL[28], TCC_WRITE[28], TCC_RW_REQ[29], TCC_TOO_MANY_EA_WRREQS_STALL[29], TCC_WRITE[29], TCC_RW_REQ[30], TCC_TOO_MANY_EA_WRREQS_STALL[30], TCC_WRITE[30], TCC_RW_REQ[31], TCC_TOO_MANY_EA_WRREQS_STALL[31], TCC_WRITE[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155426_1269719/input0_results_240321_155426
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_16.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_2.txt
|-> [rocprof] RPL: on '240321_155427' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_2.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155427_1269903'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155427_1269903/input0_results_240321_155427'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155427_1269903/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 26 metrics
|-> [rocprof] SQC_DCACHE_INPUT_VALID_READYB, SQC_DCACHE_ATOMIC, SQC_DCACHE_REQ_READ_8, SQC_DCACHE_REQ, SQC_DCACHE_HITS, SQC_DCACHE_MISSES, SQC_DCACHE_MISSES_DUPLICATE, SQC_DCACHE_REQ_READ_1, TCP_VOLATILE_sum, TCP_TOTAL_ACCESSES_sum, TCP_TOTAL_READ_sum, TCP_TOTAL_WRITE_sum, TA_BUFFER_ATOMIC_WAVEFRONTS_sum, TA_BUFFER_TOTAL_CYCLES_sum, TD_ATOMIC_WAVEFRONT_sum, TD_STORE_WAVEFRONT_sum, SPI_RA_REQ_NO_ALLOC, SPI_RA_REQ_NO_ALLOC_CSN, CPC_CPC_STAT_STALL, CPC_UTCL1_STALL_ON_TRANSLATION, CPF_CPF_STAT_IDLE, CPF_CPF_TCIU_IDLE, TCC_REQ_sum, TCC_STREAMING_REQ_sum, TCC_HIT_sum, TCC_MISS_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155427_1269903/input0_results_240321_155427
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_2.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_3.txt
|-> [rocprof] RPL: on '240321_155427' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_3.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155427_1270091'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155427_1270091/input0_results_240321_155427'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155427_1270091/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 23 metrics
|-> [rocprof] SQC_DCACHE_REQ_READ_2, SQC_DCACHE_REQ_READ_4, SQ_INSTS_VMEM_WR, SQ_INSTS_VMEM_RD, SQ_INSTS_VMEM, SQ_INSTS_SALU, SQ_INSTS_VSKIPPED, SQ_INSTS_SMEM, TCP_TOTAL_ATOMIC_WITH_RET_sum, TCP_TOTAL_ATOMIC_WITHOUT_RET_sum, TCP_TOTAL_WRITEBACK_INVALIDATES_sum, TCP_TOTAL_CACHE_ACCESSES_sum, TA_BUFFER_COALESCED_READ_CYCLES_sum, TA_BUFFER_COALESCED_WRITE_CYCLES_sum, SPI_RA_RES_STALL_CSN, SPI_RA_TMP_STALL_CSN, CPC_CPC_UTCL2IU_BUSY, CPC_CPC_UTCL2IU_IDLE, CPF_CMP_UTCL1_STALL_ON_TRANSLATION, TCC_READ_sum, TCC_WRITE_sum, TCC_ATOMIC_sum, TCC_WRITEBACK_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155427_1270091/input0_results_240321_155427
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_3.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_4.txt
|-> [rocprof] RPL: on '240321_155428' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_4.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155428_1270276'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155428_1270276/input0_results_240321_155428'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155428_1270276/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 22 metrics
|-> [rocprof] SQ_INSTS_FLAT, SQ_INSTS_LDS, SQ_INSTS_GDS, SQ_INSTS_EXP_GDS, SQ_INSTS_BRANCH, SQ_INSTS_SENDMSG, SQ_INSTS, SQ_WAIT_ANY, TCP_UTCL1_TRANSLATION_MISS_sum, TCP_UTCL1_TRANSLATION_HIT_sum, TCP_UTCL1_PERMISSION_MISS_sum, TCP_UTCL1_REQUEST_sum, TA_ADDR_STALLED_BY_TC_CYCLES_sum, TA_TOTAL_WAVEFRONTS_sum, SPI_RA_WAVE_SIMD_FULL_CSN, SPI_RA_VGPR_SIMD_FULL_CSN, CPC_CPC_UTCL2IU_STALL, CPC_ME1_BUSY_FOR_PACKET_DECODE, TCC_EA_WRREQ_sum, TCC_EA_WRREQ_64B_sum, TCC_EA_WR_UNCACHED_32B_sum, TCC_EA_WRREQ_DRAM_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155428_1270276/input0_results_240321_155428
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_4.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_5.txt
|-> [rocprof] RPL: on '240321_155428' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_5.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155428_1270459'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155428_1270459/input0_results_240321_155428'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155428_1270459/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 21 metrics
|-> [rocprof] SQ_WAIT_INST_ANY, SQ_ACTIVE_INST_ANY, SQ_INSTS_VALU, SQ_ACTIVE_INST_VMEM, SQ_ACTIVE_INST_LDS, SQ_ACTIVE_INST_VALU, SQ_ACTIVE_INST_SCA, SQ_ACTIVE_INST_EXP_GDS, TCP_TCP_LATENCY_sum, TCP_TCC_READ_REQ_LATENCY_sum, TCP_TCC_WRITE_REQ_LATENCY_sum, TCP_TCC_READ_REQ_sum, TA_ADDR_STALLED_BY_TD_CYCLES_sum, TA_DATA_STALLED_BY_TC_CYCLES_sum, SPI_RA_SGPR_SIMD_FULL_CSN, SPI_RA_LDS_CU_FULL_CSN, CPC_ME1_DC0_SPI_BUSY, TCC_EA_WRREQ_STALL_sum, TCC_EA_WRREQ_IO_CREDIT_STALL_sum, TCC_EA_WRREQ_GMI_CREDIT_STALL_sum, TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155428_1270459/input0_results_240321_155428
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_5.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_6.txt
|-> [rocprof] RPL: on '240321_155428' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_6.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155428_1270642'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155428_1270642/input0_results_240321_155428'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155428_1270642/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 20 metrics
|-> [rocprof] SQ_ACTIVE_INST_MISC, SQ_ACTIVE_INST_FLAT, SQ_INST_CYCLES_VMEM_WR, SQ_INST_CYCLES_VMEM_RD, SQ_INST_CYCLES_SMEM, SQ_INST_CYCLES_SALU, SQ_THREAD_CYCLES_VALU, SQ_IFETCH, TCP_TCC_WRITE_REQ_sum, TCP_TCC_ATOMIC_WITH_RET_REQ_sum, TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum, TCP_TCC_NC_READ_REQ_sum, TA_FLAT_WAVEFRONTS_sum, TA_FLAT_READ_WAVEFRONTS_sum, SPI_RA_BAR_CU_FULL_CSN, SPI_RA_TGLIM_CU_FULL_CSN, TCC_EA_RDREQ_sum, TCC_EA_RDREQ_32B_sum, TCC_EA_RD_UNCACHED_32B_sum, TCC_EA_RDREQ_DRAM_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155428_1270642/input0_results_240321_155428
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_6.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_7.txt
|-> [rocprof] RPL: on '240321_155429' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_7.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155429_1270830'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155429_1270830/input0_results_240321_155429'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155429_1270830/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 20 metrics
|-> [rocprof] SQ_LDS_BANK_CONFLICT, SQ_LDS_ADDR_CONFLICT, SQ_LDS_UNALIGNED_STALL, SQ_WAVES_EQ_64, SQ_WAVES_LT_64, SQ_WAVES_LT_48, SQ_WAVES_LT_32, SQ_WAVES_LT_16, TCP_TCC_NC_WRITE_REQ_sum, TCP_TCC_NC_ATOMIC_REQ_sum, TCP_TCC_UC_READ_REQ_sum, TCP_TCC_UC_WRITE_REQ_sum, TA_FLAT_WRITE_WAVEFRONTS_sum, TA_FLAT_ATOMIC_WAVEFRONTS_sum, SPI_RA_WVLIM_STALL_CSN, SPI_SWC_CSC_WR, TCC_EA_RDREQ_IO_CREDIT_STALL_sum, TCC_EA_RDREQ_GMI_CREDIT_STALL_sum, TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum, TCC_TAG_STALL_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155429_1270830/input0_results_240321_155429
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_7.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_8.txt
|-> [rocprof] RPL: on '240321_155429' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_8.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155429_1271014'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155429_1271014/input0_results_240321_155429'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155429_1271014/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 17 metrics
|-> [rocprof] SQ_ITEMS, SQ_LDS_MEM_VIOLATIONS, SQ_LDS_ATOMIC_RETURN, SQ_LDS_IDX_ACTIVE, SQ_WAVES_RESTORED, SQ_WAVES_SAVED, SQ_INSTS_SMEM_NORM, TCP_TCC_UC_ATOMIC_REQ_sum, TCP_TCC_CC_READ_REQ_sum, TCP_TCC_CC_WRITE_REQ_sum, TCP_TCC_CC_ATOMIC_REQ_sum, SPI_VWC_CSC_WR, SPI_RA_BULKY_CU_FULL_CSN, TCC_NORMAL_WRITEBACK_sum, TCC_ALL_TC_OP_WB_WRITEBACK_sum, TCC_NORMAL_EVICT_sum, TCC_ALL_TC_OP_INV_EVICT_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155429_1271014/input0_results_240321_155429
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_8.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/pmc_perf_9.txt
|-> [rocprof] RPL: on '240321_155430' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/pmc_perf_9.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155430_1271202'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155430_1271202/input0_results_240321_155430'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155430_1271202/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 8 metrics
|-> [rocprof] TCP_TCC_RW_READ_REQ_sum, TCP_TCC_RW_WRITE_REQ_sum, TCP_TCC_RW_ATOMIC_REQ_sum, TCP_PENDING_STALL_CYCLES_sum, TCC_TOO_MANY_EA_WRREQS_STALL_sum, TCC_EA_ATOMIC_sum, TCC_EA_RDREQ_LEVEL_sum, TCC_EA_WRREQ_LEVEL_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155430_1271202/input0_results_240321_155430
|-> [rocprof] File 'tests/workloads/device_filter/MI100/pmc_perf_9.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI100/perfmon/timestamps.txt
|-> [rocprof] RPL: on '240321_155430' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI100/perfmon/timestamps.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_155430_1271386'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_155430_1271386/input0_results_240321_155430'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_155430_1271386/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 0 metrics
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_155430_1271386/input0_results_240321_155430
|-> [rocprof] File 'tests/workloads/device_filter/MI100/timestamps.csv' is generating
|-> [rocprof]
@@ -0,0 +1,5 @@
pmc: GRBM_COUNT GRBM_GUI_ACTIVE SQ_WAVES SQ_IFETCH SQ_IFETCH_LEVEL SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_LDS SQ_INST_LEVEL_LDS SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_SMEM SQ_INST_LEVEL_SMEM SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_VMEM SQ_INST_LEVEL_VMEM SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: GRBM_COUNT GRBM_GUI_ACTIVE CPC_ME1_BUSY_FOR_PACKET_DECODE SQ_CYCLES SQ_WAVES SQ_WAVE_CYCLES SQ_BUSY_CYCLES SQ_LEVEL_WAVES SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_CYCLES SQ_BUSY_CYCLES SQ_BUSY_CU_CYCLES SQ_WAVES SQ_WAVE_CYCLES SQC_TC_INST_REQ SQC_TC_DATA_READ_REQ SQC_TC_DATA_WRITE_REQ GRBM_COUNT GRBM_GUI_ACTIVE TCP_GATE_EN1_sum TCP_GATE_EN2_sum TCP_TD_TCP_STALL_CYCLES_sum TCP_TCR_TCP_STALL_CYCLES_sum TA_TA_BUSY_sum TA_BUFFER_WAVEFRONTS_sum TD_TD_BUSY_sum TD_TC_STALL_sum SPI_CSN_WINDOW_VALID SPI_CSN_BUSY CPC_CPC_STAT_BUSY CPC_CPC_STAT_IDLE CPF_CPF_STAT_BUSY CPF_CPF_STAT_STALL TCC_CYCLE_sum TCC_BUSY_sum TCC_PROBE_sum TCC_PROBE_ALL_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQC_TC_DATA_ATOMIC_REQ SQC_TC_STALL SQC_TC_REQ SQC_DCACHE_REQ_READ_16 SQC_ICACHE_REQ SQC_ICACHE_HITS SQC_ICACHE_MISSES SQC_ICACHE_MISSES_DUPLICATE GRBM_SPI_BUSY TCP_READ_TAGCONFLICT_STALL_CYCLES_sum TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum TCP_TA_TCP_STATE_READ_sum TA_BUFFER_READ_WAVEFRONTS_sum TA_BUFFER_WRITE_WAVEFRONTS_sum TD_COALESCABLE_WAVEFRONT_sum TD_LOAD_WAVEFRONT_sum SPI_CSN_NUM_THREADGROUPS SPI_CSN_WAVE CPC_CPC_TCIU_BUSY CPC_CPC_TCIU_IDLE CPF_CPF_TCIU_BUSY CPF_CPF_TCIU_STALL TCC_NC_REQ_sum TCC_UC_REQ_sum TCC_CC_REQ_sum TCC_RW_REQ_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_EA_ATOMIC_LEVEL_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_ATOMIC[0] TCC_CYCLE[0] TCC_EA_ATOMIC[0] TCC_EA_ATOMIC_LEVEL[0] TCC_ATOMIC[1] TCC_CYCLE[1] TCC_EA_ATOMIC[1] TCC_EA_ATOMIC_LEVEL[1] TCC_ATOMIC[2] TCC_CYCLE[2] TCC_EA_ATOMIC[2] TCC_EA_ATOMIC_LEVEL[2] TCC_ATOMIC[3] TCC_CYCLE[3] TCC_EA_ATOMIC[3] TCC_EA_ATOMIC_LEVEL[3] TCC_ATOMIC[4] TCC_CYCLE[4] TCC_EA_ATOMIC[4] TCC_EA_ATOMIC_LEVEL[4] TCC_ATOMIC[5] TCC_CYCLE[5] TCC_EA_ATOMIC[5] TCC_EA_ATOMIC_LEVEL[5] TCC_ATOMIC[6] TCC_CYCLE[6] TCC_EA_ATOMIC[6] TCC_EA_ATOMIC_LEVEL[6] TCC_ATOMIC[7] TCC_CYCLE[7] TCC_EA_ATOMIC[7] TCC_EA_ATOMIC_LEVEL[7] TCC_ATOMIC[8] TCC_CYCLE[8] TCC_EA_ATOMIC[8] TCC_EA_ATOMIC_LEVEL[8] TCC_ATOMIC[9] TCC_CYCLE[9] TCC_EA_ATOMIC[9] TCC_EA_ATOMIC_LEVEL[9] TCC_ATOMIC[10] TCC_CYCLE[10] TCC_EA_ATOMIC[10] TCC_EA_ATOMIC_LEVEL[10] TCC_ATOMIC[11] TCC_CYCLE[11] TCC_EA_ATOMIC[11] TCC_EA_ATOMIC_LEVEL[11] TCC_ATOMIC[12] TCC_CYCLE[12] TCC_EA_ATOMIC[12] TCC_EA_ATOMIC_LEVEL[12] TCC_ATOMIC[13] TCC_CYCLE[13] TCC_EA_ATOMIC[13] TCC_EA_ATOMIC_LEVEL[13] TCC_ATOMIC[14] TCC_CYCLE[14] TCC_EA_ATOMIC[14] TCC_EA_ATOMIC_LEVEL[14] TCC_ATOMIC[15] TCC_CYCLE[15] TCC_EA_ATOMIC[15] TCC_EA_ATOMIC_LEVEL[15] TCC_ATOMIC[16] TCC_CYCLE[16] TCC_EA_ATOMIC[16] TCC_EA_ATOMIC_LEVEL[16] TCC_ATOMIC[17] TCC_CYCLE[17] TCC_EA_ATOMIC[17] TCC_EA_ATOMIC_LEVEL[17] TCC_ATOMIC[18] TCC_CYCLE[18] TCC_EA_ATOMIC[18] TCC_EA_ATOMIC_LEVEL[18] TCC_ATOMIC[19] TCC_CYCLE[19] TCC_EA_ATOMIC[19] TCC_EA_ATOMIC_LEVEL[19] TCC_ATOMIC[20] TCC_CYCLE[20] TCC_EA_ATOMIC[20] TCC_EA_ATOMIC_LEVEL[20] TCC_ATOMIC[21] TCC_CYCLE[21] TCC_EA_ATOMIC[21] TCC_EA_ATOMIC_LEVEL[21] TCC_ATOMIC[22] TCC_CYCLE[22] TCC_EA_ATOMIC[22] TCC_EA_ATOMIC_LEVEL[22] TCC_ATOMIC[23] TCC_CYCLE[23] TCC_EA_ATOMIC[23] TCC_EA_ATOMIC_LEVEL[23] TCC_ATOMIC[24] TCC_CYCLE[24] TCC_EA_ATOMIC[24] TCC_EA_ATOMIC_LEVEL[24] TCC_ATOMIC[25] TCC_CYCLE[25] TCC_EA_ATOMIC[25] TCC_EA_ATOMIC_LEVEL[25] TCC_ATOMIC[26] TCC_CYCLE[26] TCC_EA_ATOMIC[26] TCC_EA_ATOMIC_LEVEL[26] TCC_ATOMIC[27] TCC_CYCLE[27] TCC_EA_ATOMIC[27] TCC_EA_ATOMIC_LEVEL[27] TCC_ATOMIC[28] TCC_CYCLE[28] TCC_EA_ATOMIC[28] TCC_EA_ATOMIC_LEVEL[28] TCC_ATOMIC[29] TCC_CYCLE[29] TCC_EA_ATOMIC[29] TCC_EA_ATOMIC_LEVEL[29] TCC_ATOMIC[30] TCC_CYCLE[30] TCC_EA_ATOMIC[30] TCC_EA_ATOMIC_LEVEL[30] TCC_ATOMIC[31] TCC_CYCLE[31] TCC_EA_ATOMIC[31] TCC_EA_ATOMIC_LEVEL[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_EA_RDREQ[0] TCC_EA_RDREQ_32B[0] TCC_EA_RDREQ_DRAM_CREDIT_STALL[0] TCC_EA_RDREQ_GMI_CREDIT_STALL[0] TCC_EA_RDREQ[1] TCC_EA_RDREQ_32B[1] TCC_EA_RDREQ_DRAM_CREDIT_STALL[1] TCC_EA_RDREQ_GMI_CREDIT_STALL[1] TCC_EA_RDREQ[2] TCC_EA_RDREQ_32B[2] TCC_EA_RDREQ_DRAM_CREDIT_STALL[2] TCC_EA_RDREQ_GMI_CREDIT_STALL[2] TCC_EA_RDREQ[3] TCC_EA_RDREQ_32B[3] TCC_EA_RDREQ_DRAM_CREDIT_STALL[3] TCC_EA_RDREQ_GMI_CREDIT_STALL[3] TCC_EA_RDREQ[4] TCC_EA_RDREQ_32B[4] TCC_EA_RDREQ_DRAM_CREDIT_STALL[4] TCC_EA_RDREQ_GMI_CREDIT_STALL[4] TCC_EA_RDREQ[5] TCC_EA_RDREQ_32B[5] TCC_EA_RDREQ_DRAM_CREDIT_STALL[5] TCC_EA_RDREQ_GMI_CREDIT_STALL[5] TCC_EA_RDREQ[6] TCC_EA_RDREQ_32B[6] TCC_EA_RDREQ_DRAM_CREDIT_STALL[6] TCC_EA_RDREQ_GMI_CREDIT_STALL[6] TCC_EA_RDREQ[7] TCC_EA_RDREQ_32B[7] TCC_EA_RDREQ_DRAM_CREDIT_STALL[7] TCC_EA_RDREQ_GMI_CREDIT_STALL[7] TCC_EA_RDREQ[8] TCC_EA_RDREQ_32B[8] TCC_EA_RDREQ_DRAM_CREDIT_STALL[8] TCC_EA_RDREQ_GMI_CREDIT_STALL[8] TCC_EA_RDREQ[9] TCC_EA_RDREQ_32B[9] TCC_EA_RDREQ_DRAM_CREDIT_STALL[9] TCC_EA_RDREQ_GMI_CREDIT_STALL[9] TCC_EA_RDREQ[10] TCC_EA_RDREQ_32B[10] TCC_EA_RDREQ_DRAM_CREDIT_STALL[10] TCC_EA_RDREQ_GMI_CREDIT_STALL[10] TCC_EA_RDREQ[11] TCC_EA_RDREQ_32B[11] TCC_EA_RDREQ_DRAM_CREDIT_STALL[11] TCC_EA_RDREQ_GMI_CREDIT_STALL[11] TCC_EA_RDREQ[12] TCC_EA_RDREQ_32B[12] TCC_EA_RDREQ_DRAM_CREDIT_STALL[12] TCC_EA_RDREQ_GMI_CREDIT_STALL[12] TCC_EA_RDREQ[13] TCC_EA_RDREQ_32B[13] TCC_EA_RDREQ_DRAM_CREDIT_STALL[13] TCC_EA_RDREQ_GMI_CREDIT_STALL[13] TCC_EA_RDREQ[14] TCC_EA_RDREQ_32B[14] TCC_EA_RDREQ_DRAM_CREDIT_STALL[14] TCC_EA_RDREQ_GMI_CREDIT_STALL[14] TCC_EA_RDREQ[15] TCC_EA_RDREQ_32B[15] TCC_EA_RDREQ_DRAM_CREDIT_STALL[15] TCC_EA_RDREQ_GMI_CREDIT_STALL[15] TCC_EA_RDREQ[16] TCC_EA_RDREQ_32B[16] TCC_EA_RDREQ_DRAM_CREDIT_STALL[16] TCC_EA_RDREQ_GMI_CREDIT_STALL[16] TCC_EA_RDREQ[17] TCC_EA_RDREQ_32B[17] TCC_EA_RDREQ_DRAM_CREDIT_STALL[17] TCC_EA_RDREQ_GMI_CREDIT_STALL[17] TCC_EA_RDREQ[18] TCC_EA_RDREQ_32B[18] TCC_EA_RDREQ_DRAM_CREDIT_STALL[18] TCC_EA_RDREQ_GMI_CREDIT_STALL[18] TCC_EA_RDREQ[19] TCC_EA_RDREQ_32B[19] TCC_EA_RDREQ_DRAM_CREDIT_STALL[19] TCC_EA_RDREQ_GMI_CREDIT_STALL[19] TCC_EA_RDREQ[20] TCC_EA_RDREQ_32B[20] TCC_EA_RDREQ_DRAM_CREDIT_STALL[20] TCC_EA_RDREQ_GMI_CREDIT_STALL[20] TCC_EA_RDREQ[21] TCC_EA_RDREQ_32B[21] TCC_EA_RDREQ_DRAM_CREDIT_STALL[21] TCC_EA_RDREQ_GMI_CREDIT_STALL[21] TCC_EA_RDREQ[22] TCC_EA_RDREQ_32B[22] TCC_EA_RDREQ_DRAM_CREDIT_STALL[22] TCC_EA_RDREQ_GMI_CREDIT_STALL[22] TCC_EA_RDREQ[23] TCC_EA_RDREQ_32B[23] TCC_EA_RDREQ_DRAM_CREDIT_STALL[23] TCC_EA_RDREQ_GMI_CREDIT_STALL[23] TCC_EA_RDREQ[24] TCC_EA_RDREQ_32B[24] TCC_EA_RDREQ_DRAM_CREDIT_STALL[24] TCC_EA_RDREQ_GMI_CREDIT_STALL[24] TCC_EA_RDREQ[25] TCC_EA_RDREQ_32B[25] TCC_EA_RDREQ_DRAM_CREDIT_STALL[25] TCC_EA_RDREQ_GMI_CREDIT_STALL[25] TCC_EA_RDREQ[26] TCC_EA_RDREQ_32B[26] TCC_EA_RDREQ_DRAM_CREDIT_STALL[26] TCC_EA_RDREQ_GMI_CREDIT_STALL[26] TCC_EA_RDREQ[27] TCC_EA_RDREQ_32B[27] TCC_EA_RDREQ_DRAM_CREDIT_STALL[27] TCC_EA_RDREQ_GMI_CREDIT_STALL[27] TCC_EA_RDREQ[28] TCC_EA_RDREQ_32B[28] TCC_EA_RDREQ_DRAM_CREDIT_STALL[28] TCC_EA_RDREQ_GMI_CREDIT_STALL[28] TCC_EA_RDREQ[29] TCC_EA_RDREQ_32B[29] TCC_EA_RDREQ_DRAM_CREDIT_STALL[29] TCC_EA_RDREQ_GMI_CREDIT_STALL[29] TCC_EA_RDREQ[30] TCC_EA_RDREQ_32B[30] TCC_EA_RDREQ_DRAM_CREDIT_STALL[30] TCC_EA_RDREQ_GMI_CREDIT_STALL[30] TCC_EA_RDREQ[31] TCC_EA_RDREQ_32B[31] TCC_EA_RDREQ_DRAM_CREDIT_STALL[31] TCC_EA_RDREQ_GMI_CREDIT_STALL[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_EA_RDREQ_IO_CREDIT_STALL[0] TCC_EA_RDREQ_LEVEL[0] TCC_EA_WRREQ[0] TCC_EA_WRREQ_64B[0] TCC_EA_RDREQ_IO_CREDIT_STALL[1] TCC_EA_RDREQ_LEVEL[1] TCC_EA_WRREQ[1] TCC_EA_WRREQ_64B[1] TCC_EA_RDREQ_IO_CREDIT_STALL[2] TCC_EA_RDREQ_LEVEL[2] TCC_EA_WRREQ[2] TCC_EA_WRREQ_64B[2] TCC_EA_RDREQ_IO_CREDIT_STALL[3] TCC_EA_RDREQ_LEVEL[3] TCC_EA_WRREQ[3] TCC_EA_WRREQ_64B[3] TCC_EA_RDREQ_IO_CREDIT_STALL[4] TCC_EA_RDREQ_LEVEL[4] TCC_EA_WRREQ[4] TCC_EA_WRREQ_64B[4] TCC_EA_RDREQ_IO_CREDIT_STALL[5] TCC_EA_RDREQ_LEVEL[5] TCC_EA_WRREQ[5] TCC_EA_WRREQ_64B[5] TCC_EA_RDREQ_IO_CREDIT_STALL[6] TCC_EA_RDREQ_LEVEL[6] TCC_EA_WRREQ[6] TCC_EA_WRREQ_64B[6] TCC_EA_RDREQ_IO_CREDIT_STALL[7] TCC_EA_RDREQ_LEVEL[7] TCC_EA_WRREQ[7] TCC_EA_WRREQ_64B[7] TCC_EA_RDREQ_IO_CREDIT_STALL[8] TCC_EA_RDREQ_LEVEL[8] TCC_EA_WRREQ[8] TCC_EA_WRREQ_64B[8] TCC_EA_RDREQ_IO_CREDIT_STALL[9] TCC_EA_RDREQ_LEVEL[9] TCC_EA_WRREQ[9] TCC_EA_WRREQ_64B[9] TCC_EA_RDREQ_IO_CREDIT_STALL[10] TCC_EA_RDREQ_LEVEL[10] TCC_EA_WRREQ[10] TCC_EA_WRREQ_64B[10] TCC_EA_RDREQ_IO_CREDIT_STALL[11] TCC_EA_RDREQ_LEVEL[11] TCC_EA_WRREQ[11] TCC_EA_WRREQ_64B[11] TCC_EA_RDREQ_IO_CREDIT_STALL[12] TCC_EA_RDREQ_LEVEL[12] TCC_EA_WRREQ[12] TCC_EA_WRREQ_64B[12] TCC_EA_RDREQ_IO_CREDIT_STALL[13] TCC_EA_RDREQ_LEVEL[13] TCC_EA_WRREQ[13] TCC_EA_WRREQ_64B[13] TCC_EA_RDREQ_IO_CREDIT_STALL[14] TCC_EA_RDREQ_LEVEL[14] TCC_EA_WRREQ[14] TCC_EA_WRREQ_64B[14] TCC_EA_RDREQ_IO_CREDIT_STALL[15] TCC_EA_RDREQ_LEVEL[15] TCC_EA_WRREQ[15] TCC_EA_WRREQ_64B[15] TCC_EA_RDREQ_IO_CREDIT_STALL[16] TCC_EA_RDREQ_LEVEL[16] TCC_EA_WRREQ[16] TCC_EA_WRREQ_64B[16] TCC_EA_RDREQ_IO_CREDIT_STALL[17] TCC_EA_RDREQ_LEVEL[17] TCC_EA_WRREQ[17] TCC_EA_WRREQ_64B[17] TCC_EA_RDREQ_IO_CREDIT_STALL[18] TCC_EA_RDREQ_LEVEL[18] TCC_EA_WRREQ[18] TCC_EA_WRREQ_64B[18] TCC_EA_RDREQ_IO_CREDIT_STALL[19] TCC_EA_RDREQ_LEVEL[19] TCC_EA_WRREQ[19] TCC_EA_WRREQ_64B[19] TCC_EA_RDREQ_IO_CREDIT_STALL[20] TCC_EA_RDREQ_LEVEL[20] TCC_EA_WRREQ[20] TCC_EA_WRREQ_64B[20] TCC_EA_RDREQ_IO_CREDIT_STALL[21] TCC_EA_RDREQ_LEVEL[21] TCC_EA_WRREQ[21] TCC_EA_WRREQ_64B[21] TCC_EA_RDREQ_IO_CREDIT_STALL[22] TCC_EA_RDREQ_LEVEL[22] TCC_EA_WRREQ[22] TCC_EA_WRREQ_64B[22] TCC_EA_RDREQ_IO_CREDIT_STALL[23] TCC_EA_RDREQ_LEVEL[23] TCC_EA_WRREQ[23] TCC_EA_WRREQ_64B[23] TCC_EA_RDREQ_IO_CREDIT_STALL[24] TCC_EA_RDREQ_LEVEL[24] TCC_EA_WRREQ[24] TCC_EA_WRREQ_64B[24] TCC_EA_RDREQ_IO_CREDIT_STALL[25] TCC_EA_RDREQ_LEVEL[25] TCC_EA_WRREQ[25] TCC_EA_WRREQ_64B[25] TCC_EA_RDREQ_IO_CREDIT_STALL[26] TCC_EA_RDREQ_LEVEL[26] TCC_EA_WRREQ[26] TCC_EA_WRREQ_64B[26] TCC_EA_RDREQ_IO_CREDIT_STALL[27] TCC_EA_RDREQ_LEVEL[27] TCC_EA_WRREQ[27] TCC_EA_WRREQ_64B[27] TCC_EA_RDREQ_IO_CREDIT_STALL[28] TCC_EA_RDREQ_LEVEL[28] TCC_EA_WRREQ[28] TCC_EA_WRREQ_64B[28] TCC_EA_RDREQ_IO_CREDIT_STALL[29] TCC_EA_RDREQ_LEVEL[29] TCC_EA_WRREQ[29] TCC_EA_WRREQ_64B[29] TCC_EA_RDREQ_IO_CREDIT_STALL[30] TCC_EA_RDREQ_LEVEL[30] TCC_EA_WRREQ[30] TCC_EA_WRREQ_64B[30] TCC_EA_RDREQ_IO_CREDIT_STALL[31] TCC_EA_RDREQ_LEVEL[31] TCC_EA_WRREQ[31] TCC_EA_WRREQ_64B[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_EA_WRREQ_DRAM_CREDIT_STALL[0] TCC_EA_WRREQ_GMI_CREDIT_STALL[0] TCC_EA_WRREQ_IO_CREDIT_STALL[0] TCC_EA_WRREQ_LEVEL[0] TCC_EA_WRREQ_DRAM_CREDIT_STALL[1] TCC_EA_WRREQ_GMI_CREDIT_STALL[1] TCC_EA_WRREQ_IO_CREDIT_STALL[1] TCC_EA_WRREQ_LEVEL[1] TCC_EA_WRREQ_DRAM_CREDIT_STALL[2] TCC_EA_WRREQ_GMI_CREDIT_STALL[2] TCC_EA_WRREQ_IO_CREDIT_STALL[2] TCC_EA_WRREQ_LEVEL[2] TCC_EA_WRREQ_DRAM_CREDIT_STALL[3] TCC_EA_WRREQ_GMI_CREDIT_STALL[3] TCC_EA_WRREQ_IO_CREDIT_STALL[3] TCC_EA_WRREQ_LEVEL[3] TCC_EA_WRREQ_DRAM_CREDIT_STALL[4] TCC_EA_WRREQ_GMI_CREDIT_STALL[4] TCC_EA_WRREQ_IO_CREDIT_STALL[4] TCC_EA_WRREQ_LEVEL[4] TCC_EA_WRREQ_DRAM_CREDIT_STALL[5] TCC_EA_WRREQ_GMI_CREDIT_STALL[5] TCC_EA_WRREQ_IO_CREDIT_STALL[5] TCC_EA_WRREQ_LEVEL[5] TCC_EA_WRREQ_DRAM_CREDIT_STALL[6] TCC_EA_WRREQ_GMI_CREDIT_STALL[6] TCC_EA_WRREQ_IO_CREDIT_STALL[6] TCC_EA_WRREQ_LEVEL[6] TCC_EA_WRREQ_DRAM_CREDIT_STALL[7] TCC_EA_WRREQ_GMI_CREDIT_STALL[7] TCC_EA_WRREQ_IO_CREDIT_STALL[7] TCC_EA_WRREQ_LEVEL[7] TCC_EA_WRREQ_DRAM_CREDIT_STALL[8] TCC_EA_WRREQ_GMI_CREDIT_STALL[8] TCC_EA_WRREQ_IO_CREDIT_STALL[8] TCC_EA_WRREQ_LEVEL[8] TCC_EA_WRREQ_DRAM_CREDIT_STALL[9] TCC_EA_WRREQ_GMI_CREDIT_STALL[9] TCC_EA_WRREQ_IO_CREDIT_STALL[9] TCC_EA_WRREQ_LEVEL[9] TCC_EA_WRREQ_DRAM_CREDIT_STALL[10] TCC_EA_WRREQ_GMI_CREDIT_STALL[10] TCC_EA_WRREQ_IO_CREDIT_STALL[10] TCC_EA_WRREQ_LEVEL[10] TCC_EA_WRREQ_DRAM_CREDIT_STALL[11] TCC_EA_WRREQ_GMI_CREDIT_STALL[11] TCC_EA_WRREQ_IO_CREDIT_STALL[11] TCC_EA_WRREQ_LEVEL[11] TCC_EA_WRREQ_DRAM_CREDIT_STALL[12] TCC_EA_WRREQ_GMI_CREDIT_STALL[12] TCC_EA_WRREQ_IO_CREDIT_STALL[12] TCC_EA_WRREQ_LEVEL[12] TCC_EA_WRREQ_DRAM_CREDIT_STALL[13] TCC_EA_WRREQ_GMI_CREDIT_STALL[13] TCC_EA_WRREQ_IO_CREDIT_STALL[13] TCC_EA_WRREQ_LEVEL[13] TCC_EA_WRREQ_DRAM_CREDIT_STALL[14] TCC_EA_WRREQ_GMI_CREDIT_STALL[14] TCC_EA_WRREQ_IO_CREDIT_STALL[14] TCC_EA_WRREQ_LEVEL[14] TCC_EA_WRREQ_DRAM_CREDIT_STALL[15] TCC_EA_WRREQ_GMI_CREDIT_STALL[15] TCC_EA_WRREQ_IO_CREDIT_STALL[15] TCC_EA_WRREQ_LEVEL[15] TCC_EA_WRREQ_DRAM_CREDIT_STALL[16] TCC_EA_WRREQ_GMI_CREDIT_STALL[16] TCC_EA_WRREQ_IO_CREDIT_STALL[16] TCC_EA_WRREQ_LEVEL[16] TCC_EA_WRREQ_DRAM_CREDIT_STALL[17] TCC_EA_WRREQ_GMI_CREDIT_STALL[17] TCC_EA_WRREQ_IO_CREDIT_STALL[17] TCC_EA_WRREQ_LEVEL[17] TCC_EA_WRREQ_DRAM_CREDIT_STALL[18] TCC_EA_WRREQ_GMI_CREDIT_STALL[18] TCC_EA_WRREQ_IO_CREDIT_STALL[18] TCC_EA_WRREQ_LEVEL[18] TCC_EA_WRREQ_DRAM_CREDIT_STALL[19] TCC_EA_WRREQ_GMI_CREDIT_STALL[19] TCC_EA_WRREQ_IO_CREDIT_STALL[19] TCC_EA_WRREQ_LEVEL[19] TCC_EA_WRREQ_DRAM_CREDIT_STALL[20] TCC_EA_WRREQ_GMI_CREDIT_STALL[20] TCC_EA_WRREQ_IO_CREDIT_STALL[20] TCC_EA_WRREQ_LEVEL[20] TCC_EA_WRREQ_DRAM_CREDIT_STALL[21] TCC_EA_WRREQ_GMI_CREDIT_STALL[21] TCC_EA_WRREQ_IO_CREDIT_STALL[21] TCC_EA_WRREQ_LEVEL[21] TCC_EA_WRREQ_DRAM_CREDIT_STALL[22] TCC_EA_WRREQ_GMI_CREDIT_STALL[22] TCC_EA_WRREQ_IO_CREDIT_STALL[22] TCC_EA_WRREQ_LEVEL[22] TCC_EA_WRREQ_DRAM_CREDIT_STALL[23] TCC_EA_WRREQ_GMI_CREDIT_STALL[23] TCC_EA_WRREQ_IO_CREDIT_STALL[23] TCC_EA_WRREQ_LEVEL[23] TCC_EA_WRREQ_DRAM_CREDIT_STALL[24] TCC_EA_WRREQ_GMI_CREDIT_STALL[24] TCC_EA_WRREQ_IO_CREDIT_STALL[24] TCC_EA_WRREQ_LEVEL[24] TCC_EA_WRREQ_DRAM_CREDIT_STALL[25] TCC_EA_WRREQ_GMI_CREDIT_STALL[25] TCC_EA_WRREQ_IO_CREDIT_STALL[25] TCC_EA_WRREQ_LEVEL[25] TCC_EA_WRREQ_DRAM_CREDIT_STALL[26] TCC_EA_WRREQ_GMI_CREDIT_STALL[26] TCC_EA_WRREQ_IO_CREDIT_STALL[26] TCC_EA_WRREQ_LEVEL[26] TCC_EA_WRREQ_DRAM_CREDIT_STALL[27] TCC_EA_WRREQ_GMI_CREDIT_STALL[27] TCC_EA_WRREQ_IO_CREDIT_STALL[27] TCC_EA_WRREQ_LEVEL[27] TCC_EA_WRREQ_DRAM_CREDIT_STALL[28] TCC_EA_WRREQ_GMI_CREDIT_STALL[28] TCC_EA_WRREQ_IO_CREDIT_STALL[28] TCC_EA_WRREQ_LEVEL[28] TCC_EA_WRREQ_DRAM_CREDIT_STALL[29] TCC_EA_WRREQ_GMI_CREDIT_STALL[29] TCC_EA_WRREQ_IO_CREDIT_STALL[29] TCC_EA_WRREQ_LEVEL[29] TCC_EA_WRREQ_DRAM_CREDIT_STALL[30] TCC_EA_WRREQ_GMI_CREDIT_STALL[30] TCC_EA_WRREQ_IO_CREDIT_STALL[30] TCC_EA_WRREQ_LEVEL[30] TCC_EA_WRREQ_DRAM_CREDIT_STALL[31] TCC_EA_WRREQ_GMI_CREDIT_STALL[31] TCC_EA_WRREQ_IO_CREDIT_STALL[31] TCC_EA_WRREQ_LEVEL[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_HIT[0] TCC_MISS[0] TCC_READ[0] TCC_REQ[0] TCC_HIT[1] TCC_MISS[1] TCC_READ[1] TCC_REQ[1] TCC_HIT[2] TCC_MISS[2] TCC_READ[2] TCC_REQ[2] TCC_HIT[3] TCC_MISS[3] TCC_READ[3] TCC_REQ[3] TCC_HIT[4] TCC_MISS[4] TCC_READ[4] TCC_REQ[4] TCC_HIT[5] TCC_MISS[5] TCC_READ[5] TCC_REQ[5] TCC_HIT[6] TCC_MISS[6] TCC_READ[6] TCC_REQ[6] TCC_HIT[7] TCC_MISS[7] TCC_READ[7] TCC_REQ[7] TCC_HIT[8] TCC_MISS[8] TCC_READ[8] TCC_REQ[8] TCC_HIT[9] TCC_MISS[9] TCC_READ[9] TCC_REQ[9] TCC_HIT[10] TCC_MISS[10] TCC_READ[10] TCC_REQ[10] TCC_HIT[11] TCC_MISS[11] TCC_READ[11] TCC_REQ[11] TCC_HIT[12] TCC_MISS[12] TCC_READ[12] TCC_REQ[12] TCC_HIT[13] TCC_MISS[13] TCC_READ[13] TCC_REQ[13] TCC_HIT[14] TCC_MISS[14] TCC_READ[14] TCC_REQ[14] TCC_HIT[15] TCC_MISS[15] TCC_READ[15] TCC_REQ[15] TCC_HIT[16] TCC_MISS[16] TCC_READ[16] TCC_REQ[16] TCC_HIT[17] TCC_MISS[17] TCC_READ[17] TCC_REQ[17] TCC_HIT[18] TCC_MISS[18] TCC_READ[18] TCC_REQ[18] TCC_HIT[19] TCC_MISS[19] TCC_READ[19] TCC_REQ[19] TCC_HIT[20] TCC_MISS[20] TCC_READ[20] TCC_REQ[20] TCC_HIT[21] TCC_MISS[21] TCC_READ[21] TCC_REQ[21] TCC_HIT[22] TCC_MISS[22] TCC_READ[22] TCC_REQ[22] TCC_HIT[23] TCC_MISS[23] TCC_READ[23] TCC_REQ[23] TCC_HIT[24] TCC_MISS[24] TCC_READ[24] TCC_REQ[24] TCC_HIT[25] TCC_MISS[25] TCC_READ[25] TCC_REQ[25] TCC_HIT[26] TCC_MISS[26] TCC_READ[26] TCC_REQ[26] TCC_HIT[27] TCC_MISS[27] TCC_READ[27] TCC_REQ[27] TCC_HIT[28] TCC_MISS[28] TCC_READ[28] TCC_REQ[28] TCC_HIT[29] TCC_MISS[29] TCC_READ[29] TCC_REQ[29] TCC_HIT[30] TCC_MISS[30] TCC_READ[30] TCC_REQ[30] TCC_HIT[31] TCC_MISS[31] TCC_READ[31] TCC_REQ[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_RW_REQ[0] TCC_TOO_MANY_EA_WRREQS_STALL[0] TCC_WRITE[0] TCC_RW_REQ[1] TCC_TOO_MANY_EA_WRREQS_STALL[1] TCC_WRITE[1] TCC_RW_REQ[2] TCC_TOO_MANY_EA_WRREQS_STALL[2] TCC_WRITE[2] TCC_RW_REQ[3] TCC_TOO_MANY_EA_WRREQS_STALL[3] TCC_WRITE[3] TCC_RW_REQ[4] TCC_TOO_MANY_EA_WRREQS_STALL[4] TCC_WRITE[4] TCC_RW_REQ[5] TCC_TOO_MANY_EA_WRREQS_STALL[5] TCC_WRITE[5] TCC_RW_REQ[6] TCC_TOO_MANY_EA_WRREQS_STALL[6] TCC_WRITE[6] TCC_RW_REQ[7] TCC_TOO_MANY_EA_WRREQS_STALL[7] TCC_WRITE[7] TCC_RW_REQ[8] TCC_TOO_MANY_EA_WRREQS_STALL[8] TCC_WRITE[8] TCC_RW_REQ[9] TCC_TOO_MANY_EA_WRREQS_STALL[9] TCC_WRITE[9] TCC_RW_REQ[10] TCC_TOO_MANY_EA_WRREQS_STALL[10] TCC_WRITE[10] TCC_RW_REQ[11] TCC_TOO_MANY_EA_WRREQS_STALL[11] TCC_WRITE[11] TCC_RW_REQ[12] TCC_TOO_MANY_EA_WRREQS_STALL[12] TCC_WRITE[12] TCC_RW_REQ[13] TCC_TOO_MANY_EA_WRREQS_STALL[13] TCC_WRITE[13] TCC_RW_REQ[14] TCC_TOO_MANY_EA_WRREQS_STALL[14] TCC_WRITE[14] TCC_RW_REQ[15] TCC_TOO_MANY_EA_WRREQS_STALL[15] TCC_WRITE[15] TCC_RW_REQ[16] TCC_TOO_MANY_EA_WRREQS_STALL[16] TCC_WRITE[16] TCC_RW_REQ[17] TCC_TOO_MANY_EA_WRREQS_STALL[17] TCC_WRITE[17] TCC_RW_REQ[18] TCC_TOO_MANY_EA_WRREQS_STALL[18] TCC_WRITE[18] TCC_RW_REQ[19] TCC_TOO_MANY_EA_WRREQS_STALL[19] TCC_WRITE[19] TCC_RW_REQ[20] TCC_TOO_MANY_EA_WRREQS_STALL[20] TCC_WRITE[20] TCC_RW_REQ[21] TCC_TOO_MANY_EA_WRREQS_STALL[21] TCC_WRITE[21] TCC_RW_REQ[22] TCC_TOO_MANY_EA_WRREQS_STALL[22] TCC_WRITE[22] TCC_RW_REQ[23] TCC_TOO_MANY_EA_WRREQS_STALL[23] TCC_WRITE[23] TCC_RW_REQ[24] TCC_TOO_MANY_EA_WRREQS_STALL[24] TCC_WRITE[24] TCC_RW_REQ[25] TCC_TOO_MANY_EA_WRREQS_STALL[25] TCC_WRITE[25] TCC_RW_REQ[26] TCC_TOO_MANY_EA_WRREQS_STALL[26] TCC_WRITE[26] TCC_RW_REQ[27] TCC_TOO_MANY_EA_WRREQS_STALL[27] TCC_WRITE[27] TCC_RW_REQ[28] TCC_TOO_MANY_EA_WRREQS_STALL[28] TCC_WRITE[28] TCC_RW_REQ[29] TCC_TOO_MANY_EA_WRREQS_STALL[29] TCC_WRITE[29] TCC_RW_REQ[30] TCC_TOO_MANY_EA_WRREQS_STALL[30] TCC_WRITE[30] TCC_RW_REQ[31] TCC_TOO_MANY_EA_WRREQS_STALL[31] TCC_WRITE[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQC_DCACHE_INPUT_VALID_READYB SQC_DCACHE_ATOMIC SQC_DCACHE_REQ_READ_8 SQC_DCACHE_REQ SQC_DCACHE_HITS SQC_DCACHE_MISSES SQC_DCACHE_MISSES_DUPLICATE SQC_DCACHE_REQ_READ_1 TCP_VOLATILE_sum TCP_TOTAL_ACCESSES_sum TCP_TOTAL_READ_sum TCP_TOTAL_WRITE_sum TA_BUFFER_ATOMIC_WAVEFRONTS_sum TA_BUFFER_TOTAL_CYCLES_sum TD_ATOMIC_WAVEFRONT_sum TD_STORE_WAVEFRONT_sum SPI_RA_REQ_NO_ALLOC SPI_RA_REQ_NO_ALLOC_CSN CPC_CPC_STAT_STALL CPC_UTCL1_STALL_ON_TRANSLATION CPF_CPF_STAT_IDLE CPF_CPF_TCIU_IDLE TCC_REQ_sum TCC_STREAMING_REQ_sum TCC_HIT_sum TCC_MISS_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQC_DCACHE_REQ_READ_2 SQC_DCACHE_REQ_READ_4 SQ_INSTS_VMEM_WR SQ_INSTS_VMEM_RD SQ_INSTS_VMEM SQ_INSTS_SALU SQ_INSTS_VSKIPPED SQ_INSTS_SMEM TCP_TOTAL_ATOMIC_WITH_RET_sum TCP_TOTAL_ATOMIC_WITHOUT_RET_sum TCP_TOTAL_WRITEBACK_INVALIDATES_sum TCP_TOTAL_CACHE_ACCESSES_sum TA_BUFFER_COALESCED_READ_CYCLES_sum TA_BUFFER_COALESCED_WRITE_CYCLES_sum SPI_RA_RES_STALL_CSN SPI_RA_TMP_STALL_CSN CPC_CPC_UTCL2IU_BUSY CPC_CPC_UTCL2IU_IDLE CPF_CMP_UTCL1_STALL_ON_TRANSLATION TCC_READ_sum TCC_WRITE_sum TCC_ATOMIC_sum TCC_WRITEBACK_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_FLAT SQ_INSTS_LDS SQ_INSTS_GDS SQ_INSTS_EXP_GDS SQ_INSTS_BRANCH SQ_INSTS_SENDMSG SQ_INSTS SQ_WAIT_ANY TCP_UTCL1_TRANSLATION_MISS_sum TCP_UTCL1_TRANSLATION_HIT_sum TCP_UTCL1_PERMISSION_MISS_sum TCP_UTCL1_REQUEST_sum TA_ADDR_STALLED_BY_TC_CYCLES_sum TA_TOTAL_WAVEFRONTS_sum SPI_RA_WAVE_SIMD_FULL_CSN SPI_RA_VGPR_SIMD_FULL_CSN CPC_CPC_UTCL2IU_STALL CPC_ME1_BUSY_FOR_PACKET_DECODE TCC_EA_WRREQ_sum TCC_EA_WRREQ_64B_sum TCC_EA_WR_UNCACHED_32B_sum TCC_EA_WRREQ_DRAM_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_WAIT_INST_ANY SQ_ACTIVE_INST_ANY SQ_INSTS_VALU SQ_ACTIVE_INST_VMEM SQ_ACTIVE_INST_LDS SQ_ACTIVE_INST_VALU SQ_ACTIVE_INST_SCA SQ_ACTIVE_INST_EXP_GDS TCP_TCP_LATENCY_sum TCP_TCC_READ_REQ_LATENCY_sum TCP_TCC_WRITE_REQ_LATENCY_sum TCP_TCC_READ_REQ_sum TA_ADDR_STALLED_BY_TD_CYCLES_sum TA_DATA_STALLED_BY_TC_CYCLES_sum SPI_RA_SGPR_SIMD_FULL_CSN SPI_RA_LDS_CU_FULL_CSN CPC_ME1_DC0_SPI_BUSY TCC_EA_WRREQ_STALL_sum TCC_EA_WRREQ_IO_CREDIT_STALL_sum TCC_EA_WRREQ_GMI_CREDIT_STALL_sum TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_ACTIVE_INST_MISC SQ_ACTIVE_INST_FLAT SQ_INST_CYCLES_VMEM_WR SQ_INST_CYCLES_VMEM_RD SQ_INST_CYCLES_SMEM SQ_INST_CYCLES_SALU SQ_THREAD_CYCLES_VALU SQ_IFETCH TCP_TCC_WRITE_REQ_sum TCP_TCC_ATOMIC_WITH_RET_REQ_sum TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum TCP_TCC_NC_READ_REQ_sum TA_FLAT_WAVEFRONTS_sum TA_FLAT_READ_WAVEFRONTS_sum SPI_RA_BAR_CU_FULL_CSN SPI_RA_TGLIM_CU_FULL_CSN TCC_EA_RDREQ_sum TCC_EA_RDREQ_32B_sum TCC_EA_RD_UNCACHED_32B_sum TCC_EA_RDREQ_DRAM_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_LDS_BANK_CONFLICT SQ_LDS_ADDR_CONFLICT SQ_LDS_UNALIGNED_STALL SQ_WAVES_EQ_64 SQ_WAVES_LT_64 SQ_WAVES_LT_48 SQ_WAVES_LT_32 SQ_WAVES_LT_16 TCP_TCC_NC_WRITE_REQ_sum TCP_TCC_NC_ATOMIC_REQ_sum TCP_TCC_UC_READ_REQ_sum TCP_TCC_UC_WRITE_REQ_sum TA_FLAT_WRITE_WAVEFRONTS_sum TA_FLAT_ATOMIC_WAVEFRONTS_sum SPI_RA_WVLIM_STALL_CSN SPI_SWC_CSC_WR TCC_EA_RDREQ_IO_CREDIT_STALL_sum TCC_EA_RDREQ_GMI_CREDIT_STALL_sum TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum TCC_TAG_STALL_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_ITEMS SQ_LDS_MEM_VIOLATIONS SQ_LDS_ATOMIC_RETURN SQ_LDS_IDX_ACTIVE SQ_WAVES_RESTORED SQ_WAVES_SAVED SQ_INSTS_SMEM_NORM TCP_TCC_UC_ATOMIC_REQ_sum TCP_TCC_CC_READ_REQ_sum TCP_TCC_CC_WRITE_REQ_sum TCP_TCC_CC_ATOMIC_REQ_sum SPI_VWC_CSC_WR SPI_RA_BULKY_CU_FULL_CSN TCC_NORMAL_WRITEBACK_sum TCC_ALL_TC_OP_WB_WRITEBACK_sum TCC_NORMAL_EVICT_sum TCC_ALL_TC_OP_INV_EVICT_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCP_TCC_RW_READ_REQ_sum TCP_TCC_RW_WRITE_REQ_sum TCP_TCC_RW_ATOMIC_REQ_sum TCP_PENDING_STALL_CYCLES_sum TCC_TOO_MANY_EA_WRREQS_STALL_sum TCC_EA_ATOMIC_sum TCC_EA_RDREQ_LEVEL_sum TCC_EA_WRREQ_LEVEL_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc:
gpu:
range:
kernel:
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2
1 Dispatch_ID Kernel_Name GPU_ID
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
workload_name,command,ip_blocks,timestamp,version,hostname,cpu_model,sbios,linux_distro,linux_kernel_version,amd_gpu_kernel_version,cpu_memory,gpu_memory,rocm_version,vbios,compute_partition,memory_partition,gpu_model,gpu_arch,gpu_l1,gpu_l2,cu_per_gpu,simd_per_cu,se_per_gpu,wave_size,workgroup_max_size,max_waves_per_cu,max_sclk,max_mclk,cur_sclk,cur_mclk,total_l2_chan,lds_banks_per_cu,sqc_per_gpu,pipes_per_gpu,hbm_bw,num_xcd,num_hbm_channels
path,./tests/vcopy -n 1048576 -b 256 -i 3,SQ|LDS|SQC|TA|TD|TCP|TCC|SPI|CPC|CPF,Thu 21 Mar 2024 03:52:12 PM (CDT),2,t007-001.hpcfund,AMD EPYC 7V13 64-Core Processor,American Megatrends Inc.0602,Rocky Linux 9.1 (Blue Onyx),5.14.0-162.18.1.el9_1.x86_64,,527651008,,6.0.2-115,113-D3431401-100,NA,NA,MI100,gfx908,16,8192,120,4,8,64,1024,40,1502,1200,1502,1200,32,32,64,4,1228.8,1,32
1 workload_name command ip_blocks timestamp version hostname cpu_model sbios linux_distro linux_kernel_version amd_gpu_kernel_version cpu_memory gpu_memory rocm_version vbios compute_partition memory_partition gpu_model gpu_arch gpu_l1 gpu_l2 cu_per_gpu simd_per_cu se_per_gpu wave_size workgroup_max_size max_waves_per_cu max_sclk max_mclk cur_sclk cur_mclk total_l2_chan lds_banks_per_cu sqc_per_gpu pipes_per_gpu hbm_bw num_xcd num_hbm_channels
2 path ./tests/vcopy -n 1048576 -b 256 -i 3 SQ|LDS|SQC|TA|TD|TCP|TCC|SPI|CPC|CPF Thu 21 Mar 2024 03:52:12 PM (CDT) 2 t007-001.hpcfund AMD EPYC 7V13 64-Core Processor American Megatrends Inc.0602 Rocky Linux 9.1 (Blue Onyx) 5.14.0-162.18.1.el9_1.x86_64 527651008 6.0.2-115 113-D3431401-100 NA NA MI100 gfx908 16 8192 120 4 8 64 1024 40 1502 1200 1502 1200 32 32 64 4 1228.8 1 32
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,1271546,1271546,1048576,256,0,0,8,8,16,64,0x0,0x7facae2fcec0,1410204895282038,1410204895308401,1410204895332881,1410204895343735
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,1271546,1271546,1048576,256,0,0,8,8,16,64,0x0,0x7facae2fcec0,1410204895345248,1410204895428561,1410204895447761,1410204895449153
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,1271546,1271546,1048576,256,0,0,8,8,16,64,0x0,0x7facae2fcec0,1410204895459924,1410204895469361,1410204895488081,1410204895489490
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 1271546 1271546 1048576 256 0 0 8 8 16 64 0x0 0x7facae2fcec0 1410204895282038 1410204895308401 1410204895332881 1410204895343735
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 1271546 1271546 1048576 256 0 0 8 8 16 64 0x0 0x7facae2fcec0 1410204895345248 1410204895428561 1410204895447761 1410204895449153
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 1271546 1271546 1048576 256 0 0 8 8 16 64 0x0 0x7facae2fcec0 1410204895459924 1410204895469361 1410204895488081 1410204895489490
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,GRBM_COUNT,GRBM_GUI_ACTIVE,SQ_WAVES,SQ_IFETCH,SQ_IFETCH_LEVEL,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,4154776,4154776,1048576,256,0,0,8,0,16,64,0x0,0x7f4aeac78ec0,28399,28399,16384,65536,16539,1859828,1412689608475887,1412702536508356,1412702536528996,1412689624744624
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,4154776,4154776,1048576,256,0,0,8,0,16,64,0x0,0x7f4aeac78ec0,41854,41854,16384,65536,9149,1048652,1412689624764922,1412702536548036,1412702536563556,1412689625202329
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,4154776,4154776,1048576,256,0,0,8,0,16,64,0x0,0x7f4aeac78ec0,42687,42687,16384,65536,9446,1048640,1412689625231735,1412702536625636,1412702536642116,1412689625401916
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj GRBM_COUNT GRBM_GUI_ACTIVE SQ_WAVES SQ_IFETCH SQ_IFETCH_LEVEL SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 4154776 4154776 1048576 256 0 0 8 0 16 64 0x0 0x7f4aeac78ec0 28399 28399 16384 65536 16539 1859828 1412689608475887 1412702536508356 1412702536528996 1412689624744624
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 4154776 4154776 1048576 256 0 0 8 0 16 64 0x0 0x7f4aeac78ec0 41854 41854 16384 65536 9149 1048652 1412689624764922 1412702536548036 1412702536563556 1412689625202329
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 4154776 4154776 1048576 256 0 0 8 0 16 64 0x0 0x7f4aeac78ec0 42687 42687 16384 65536 9446 1048640 1412689625231735 1412702536625636 1412702536642116 1412689625401916
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,SQ_INSTS_LDS,SQ_INST_LEVEL_LDS,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,4154974,4154974,1048576,256,0,0,8,0,16,64,0x0,0x7f1046a28ec0,0,0,0,1412690095463857,1412702536508356,1412702536528996,1412690111629429
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,4154974,4154974,1048576,256,0,0,8,0,16,64,0x0,0x7f1046a28ec0,0,0,0,1412690111650128,1412702536548036,1412702536563556,1412690111919096
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,4154974,4154974,1048576,256,0,0,8,0,16,64,0x0,0x7f1046a28ec0,0,0,0,1412690111945456,1412702536625636,1412702536642116,1412690112092594
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj SQ_INSTS_LDS SQ_INST_LEVEL_LDS SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 4154974 4154974 1048576 256 0 0 8 0 16 64 0x0 0x7f1046a28ec0 0 0 0 1412690095463857 1412702536508356 1412702536528996 1412690111629429
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 4154974 4154974 1048576 256 0 0 8 0 16 64 0x0 0x7f1046a28ec0 0 0 0 1412690111650128 1412702536548036 1412702536563556 1412690111919096
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 4154974 4154974 1048576 256 0 0 8 0 16 64 0x0 0x7f1046a28ec0 0 0 0 1412690111945456 1412702536625636 1412702536642116 1412690112092594
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,SQ_INSTS_SMEM,SQ_INST_LEVEL_SMEM,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,4155175,4155175,1048576,256,0,0,8,0,16,64,0x0,0x7fd9f40c4ec0,65536,172670,19277760,1412690576047496,1412702536508356,1412702536528996,1412690592443443
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,4155175,4155175,1048576,256,0,0,8,0,16,64,0x0,0x7fd9f40c4ec0,65536,228700,25581136,1412690592461567,1412702536548036,1412702536563556,1412690592741416
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,4155175,4155175,1048576,256,0,0,8,0,16,64,0x0,0x7fd9f40c4ec0,65536,231114,25926712,1412690592767165,1412702536625636,1412702536642116,1412690592915886
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj SQ_INSTS_SMEM SQ_INST_LEVEL_SMEM SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 4155175 4155175 1048576 256 0 0 8 0 16 64 0x0 0x7fd9f40c4ec0 65536 172670 19277760 1412690576047496 1412702536508356 1412702536528996 1412690592443443
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 4155175 4155175 1048576 256 0 0 8 0 16 64 0x0 0x7fd9f40c4ec0 65536 228700 25581136 1412690592461567 1412702536548036 1412702536563556 1412690592741416
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 4155175 4155175 1048576 256 0 0 8 0 16 64 0x0 0x7fd9f40c4ec0 65536 231114 25926712 1412690592767165 1412702536625636 1412702536642116 1412690592915886
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,SQ_INSTS_VMEM,SQ_INST_LEVEL_VMEM,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,4155361,4155361,1048576,256,0,0,8,0,16,64,0x0,0x7f9045bb8ec0,32768,290637,32556924,1412691060480394,1412702536508356,1412702536528996,1412691076529415
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,4155361,4155361,1048576,256,0,0,8,0,16,64,0x0,0x7f9045bb8ec0,32768,589721,66052460,1412691076546758,1412702536548036,1412702536563556,1412691076842818
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,4155361,4155361,1048576,256,0,0,8,0,16,64,0x0,0x7f9045bb8ec0,32768,574435,64354132,1412691076869588,1412702536625636,1412702536642116,1412691077020423
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj SQ_INSTS_VMEM SQ_INST_LEVEL_VMEM SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 4155361 4155361 1048576 256 0 0 8 0 16 64 0x0 0x7f9045bb8ec0 32768 290637 32556924 1412691060480394 1412702536508356 1412702536528996 1412691076529415
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 4155361 4155361 1048576 256 0 0 8 0 16 64 0x0 0x7f9045bb8ec0 32768 589721 66052460 1412691076546758 1412702536548036 1412702536563556 1412691076842818
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 4155361 4155361 1048576 256 0 0 8 0 16 64 0x0 0x7f9045bb8ec0 32768 574435 64354132 1412691076869588 1412702536625636 1412702536642116 1412691077020423
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,GRBM_COUNT,GRBM_GUI_ACTIVE,CPC_ME1_BUSY_FOR_PACKET_DECODE,SQ_CYCLES,SQ_WAVES,SQ_WAVE_CYCLES,SQ_BUSY_CYCLES,SQ_LEVEL_WAVES,SQ_ACCUM_PREV_HIRES,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,4155559,4155559,1048576,256,0,0,8,0,16,64,0x0,0x7f2e47d90ec0,27782,27782,11060,222264,16384,10980955,128903,0,44430920,1412691542352890,1412702536508356,1412702536528996,1412691558586810
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,4155559,4155559,1048576,256,0,0,8,0,16,64,0x0,0x7f2e47d90ec0,42364,42364,13501,338920,16384,20566692,235190,0,82737616,1412691558614052,1412702536548036,1412702536563556,1412691558909250
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,4155559,4155559,1048576,256,0,0,8,0,16,64,0x0,0x7f2e47d90ec0,40646,40646,12686,325176,16384,19387932,222546,0,78034296,1412691558944307,1412702536625636,1412702536642116,1412691559104820
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj GRBM_COUNT GRBM_GUI_ACTIVE CPC_ME1_BUSY_FOR_PACKET_DECODE SQ_CYCLES SQ_WAVES SQ_WAVE_CYCLES SQ_BUSY_CYCLES SQ_LEVEL_WAVES SQ_ACCUM_PREV_HIRES DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 4155559 4155559 1048576 256 0 0 8 0 16 64 0x0 0x7f2e47d90ec0 27782 27782 11060 222264 16384 10980955 128903 0 44430920 1412691542352890 1412702536508356 1412702536528996 1412691558586810
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 4155559 4155559 1048576 256 0 0 8 0 16 64 0x0 0x7f2e47d90ec0 42364 42364 13501 338920 16384 20566692 235190 0 82737616 1412691558614052 1412702536548036 1412702536563556 1412691558909250
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 4155559 4155559 1048576 256 0 0 8 0 16 64 0x0 0x7f2e47d90ec0 40646 40646 12686 325176 16384 19387932 222546 0 78034296 1412691558944307 1412702536625636 1412702536642116 1412691559104820
@@ -0,0 +1,739 @@
Omniperf version: 2.0.0-RC1
Profiler choice: rocprofv1
Path: /home1/josantos/omniperf/tests/workloads/device_filter/MI200
Target: MI200
Command: ./tests/vcopy -n 1048576 -b 256 -i 3
Kernel Selection: None
Dispatch Selection: None
IP Blocks: All
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Collecting Performance Counters
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/SQ_IFETCH_LEVEL.txt
|-> [rocprof] RPL: on '240321_163557' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/SQ_IFETCH_LEVEL.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163557_4154616'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163557_4154616/input0_results_240321_163557'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163557_4154616/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 6 metrics
|-> [rocprof] GRBM_COUNT, GRBM_GUI_ACTIVE, SQ_WAVES, SQ_IFETCH, SQ_IFETCH_LEVEL, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163557_4154616/input0_results_240321_163557
|-> [rocprof] File 'tests/workloads/device_filter/MI200/SQ_IFETCH_LEVEL.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/SQ_INST_LEVEL_LDS.txt
|-> [rocprof] RPL: on '240321_163557' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/SQ_INST_LEVEL_LDS.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163557_4154814'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163557_4154814/input0_results_240321_163557'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163557_4154814/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 3 metrics
|-> [rocprof] SQ_INSTS_LDS, SQ_INST_LEVEL_LDS, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163557_4154814/input0_results_240321_163557
|-> [rocprof] File 'tests/workloads/device_filter/MI200/SQ_INST_LEVEL_LDS.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/SQ_INST_LEVEL_SMEM.txt
|-> [rocprof] RPL: on '240321_163558' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/SQ_INST_LEVEL_SMEM.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163558_4155015'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163558_4155015/input0_results_240321_163558'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163558_4155015/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 3 metrics
|-> [rocprof] SQ_INSTS_SMEM, SQ_INST_LEVEL_SMEM, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163558_4155015/input0_results_240321_163558
|-> [rocprof] File 'tests/workloads/device_filter/MI200/SQ_INST_LEVEL_SMEM.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/SQ_INST_LEVEL_VMEM.txt
|-> [rocprof] RPL: on '240321_163558' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/SQ_INST_LEVEL_VMEM.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163558_4155199'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163558_4155199/input0_results_240321_163558'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163558_4155199/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 3 metrics
|-> [rocprof] SQ_INSTS_VMEM, SQ_INST_LEVEL_VMEM, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163558_4155199/input0_results_240321_163558
|-> [rocprof] File 'tests/workloads/device_filter/MI200/SQ_INST_LEVEL_VMEM.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/SQ_LEVEL_WAVES.txt
|-> [rocprof] RPL: on '240321_163559' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/SQ_LEVEL_WAVES.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163559_4155399'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163559_4155399/input0_results_240321_163559'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163559_4155399/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 9 metrics
|-> [rocprof] GRBM_COUNT, GRBM_GUI_ACTIVE, CPC_ME1_BUSY_FOR_PACKET_DECODE, SQ_CYCLES, SQ_WAVES, SQ_WAVE_CYCLES, SQ_BUSY_CYCLES, SQ_LEVEL_WAVES, SQ_ACCUM_PREV_HIRES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163559_4155399/input0_results_240321_163559
|-> [rocprof] File 'tests/workloads/device_filter/MI200/SQ_LEVEL_WAVES.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_0.txt
|-> [rocprof] RPL: on '240321_163559' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_0.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163559_4155605'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163559_4155605/input0_results_240321_163559'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163559_4155605/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 28 metrics
|-> [rocprof] SQ_CYCLES, SQ_BUSY_CYCLES, SQ_WAVES, SQ_INSTS_VALU_CVT, SQ_INSTS_VMEM_WR, SQ_INSTS_VMEM_RD, SQ_INSTS_VMEM, SQ_INSTS_SALU, GRBM_COUNT, GRBM_GUI_ACTIVE, TCP_GATE_EN1_sum, TCP_GATE_EN2_sum, TCP_TD_TCP_STALL_CYCLES_sum, TCP_TCR_TCP_STALL_CYCLES_sum, TA_TA_BUSY_sum, TA_BUFFER_WAVEFRONTS_sum, TD_TD_BUSY_sum, TD_TC_STALL_sum, SPI_CSN_WINDOW_VALID, SPI_CSN_BUSY, CPC_CPC_STAT_BUSY, CPC_CPC_STAT_IDLE, CPF_CPF_STAT_BUSY, CPF_CPF_STAT_STALL, TCC_CYCLE_sum, TCC_BUSY_sum, TCC_PROBE_sum, TCC_PROBE_ALL_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163559_4155605/input0_results_240321_163559
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_0.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_1.txt
|-> [rocprof] RPL: on '240321_163600' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_1.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163600_4155792'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163600_4155792/input0_results_240321_163600'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163600_4155792/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 27 metrics
|-> [rocprof] SQ_INSTS_VSKIPPED, SQ_INSTS, SQ_INSTS_VALU, SQ_INSTS_VALU_ADD_F16, SQ_INSTS_VALU_MUL_F16, SQ_INSTS_VALU_FMA_F16, SQ_INSTS_VALU_TRANS_F16, SQ_INSTS_VALU_ADD_F32, GRBM_SPI_BUSY, TCP_READ_TAGCONFLICT_STALL_CYCLES_sum, TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum, TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum, TCP_TA_TCP_STATE_READ_sum, TA_BUFFER_READ_WAVEFRONTS_sum, TA_BUFFER_WRITE_WAVEFRONTS_sum, TD_SPI_STALL_sum, TD_LOAD_WAVEFRONT_sum, SPI_CSN_NUM_THREADGROUPS, SPI_CSN_WAVE, CPC_CPC_TCIU_BUSY, CPC_CPC_TCIU_IDLE, CPF_CPF_TCIU_BUSY, CPF_CPF_TCIU_STALL, TCC_NC_REQ_sum, TCC_UC_REQ_sum, TCC_CC_REQ_sum, TCC_RW_REQ_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163600_4155792/input0_results_240321_163600
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_1.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_10.txt
|-> [rocprof] RPL: on '240321_163600' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_10.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163600_4155978'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163600_4155978/input0_results_240321_163600'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163600_4155978/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 8 metrics
|-> [rocprof] SQC_TC_DATA_WRITE_REQ, SQC_TC_DATA_ATOMIC_REQ, SQC_TC_STALL, SQC_TC_REQ, SQC_DCACHE_REQ_READ_16, SQC_ICACHE_REQ, SQC_ICACHE_HITS, SQC_ICACHE_MISSES
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163600_4155978/input0_results_240321_163600
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_10.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_11.txt
|-> [rocprof] RPL: on '240321_163601' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_11.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163601_4156163'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163601_4156163/input0_results_240321_163601'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163601_4156163/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 8 metrics
|-> [rocprof] SQC_ICACHE_MISSES_DUPLICATE, SQC_DCACHE_INPUT_VALID_READYB, SQC_DCACHE_ATOMIC, SQC_DCACHE_REQ_READ_8, SQC_DCACHE_REQ, SQC_DCACHE_HITS, SQC_DCACHE_MISSES, SQC_DCACHE_MISSES_DUPLICATE
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163601_4156163/input0_results_240321_163601
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_11.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_12.txt
|-> [rocprof] RPL: on '240321_163601' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_12.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163601_4156379'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163601_4156379/input0_results_240321_163601'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163601_4156379/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 3 metrics
|-> [rocprof] SQC_DCACHE_REQ_READ_1, SQC_DCACHE_REQ_READ_2, SQC_DCACHE_REQ_READ_4
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163601_4156379/input0_results_240321_163601
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_12.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_13.txt
|-> [rocprof] RPL: on '240321_163602' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_13.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163602_4156580'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163602_4156580/input0_results_240321_163602'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163602_4156580/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_ATOMIC[0], TCC_CYCLE[0], TCC_EA_ATOMIC[0], TCC_EA_ATOMIC_LEVEL[0], TCC_ATOMIC[1], TCC_CYCLE[1], TCC_EA_ATOMIC[1], TCC_EA_ATOMIC_LEVEL[1], TCC_ATOMIC[2], TCC_CYCLE[2], TCC_EA_ATOMIC[2], TCC_EA_ATOMIC_LEVEL[2], TCC_ATOMIC[3], TCC_CYCLE[3], TCC_EA_ATOMIC[3], TCC_EA_ATOMIC_LEVEL[3], TCC_ATOMIC[4], TCC_CYCLE[4], TCC_EA_ATOMIC[4], TCC_EA_ATOMIC_LEVEL[4], TCC_ATOMIC[5], TCC_CYCLE[5], TCC_EA_ATOMIC[5], TCC_EA_ATOMIC_LEVEL[5], TCC_ATOMIC[6], TCC_CYCLE[6], TCC_EA_ATOMIC[6], TCC_EA_ATOMIC_LEVEL[6], TCC_ATOMIC[7], TCC_CYCLE[7], TCC_EA_ATOMIC[7], TCC_EA_ATOMIC_LEVEL[7], TCC_ATOMIC[8], TCC_CYCLE[8], TCC_EA_ATOMIC[8], TCC_EA_ATOMIC_LEVEL[8], TCC_ATOMIC[9], TCC_CYCLE[9], TCC_EA_ATOMIC[9], TCC_EA_ATOMIC_LEVEL[9], TCC_ATOMIC[10], TCC_CYCLE[10], TCC_EA_ATOMIC[10], TCC_EA_ATOMIC_LEVEL[10], TCC_ATOMIC[11], TCC_CYCLE[11], TCC_EA_ATOMIC[11], TCC_EA_ATOMIC_LEVEL[11], TCC_ATOMIC[12], TCC_CYCLE[12], TCC_EA_ATOMIC[12], TCC_EA_ATOMIC_LEVEL[12], TCC_ATOMIC[13], TCC_CYCLE[13], TCC_EA_ATOMIC[13], TCC_EA_ATOMIC_LEVEL[13], TCC_ATOMIC[14], TCC_CYCLE[14], TCC_EA_ATOMIC[14], TCC_EA_ATOMIC_LEVEL[14], TCC_ATOMIC[15], TCC_CYCLE[15], TCC_EA_ATOMIC[15], TCC_EA_ATOMIC_LEVEL[15], TCC_ATOMIC[16], TCC_CYCLE[16], TCC_EA_ATOMIC[16], TCC_EA_ATOMIC_LEVEL[16], TCC_ATOMIC[17], TCC_CYCLE[17], TCC_EA_ATOMIC[17], TCC_EA_ATOMIC_LEVEL[17], TCC_ATOMIC[18], TCC_CYCLE[18], TCC_EA_ATOMIC[18], TCC_EA_ATOMIC_LEVEL[18], TCC_ATOMIC[19], TCC_CYCLE[19], TCC_EA_ATOMIC[19], TCC_EA_ATOMIC_LEVEL[19], TCC_ATOMIC[20], TCC_CYCLE[20], TCC_EA_ATOMIC[20], TCC_EA_ATOMIC_LEVEL[20], TCC_ATOMIC[21], TCC_CYCLE[21], TCC_EA_ATOMIC[21], TCC_EA_ATOMIC_LEVEL[21], TCC_ATOMIC[22], TCC_CYCLE[22], TCC_EA_ATOMIC[22], TCC_EA_ATOMIC_LEVEL[22], TCC_ATOMIC[23], TCC_CYCLE[23], TCC_EA_ATOMIC[23], TCC_EA_ATOMIC_LEVEL[23], TCC_ATOMIC[24], TCC_CYCLE[24], TCC_EA_ATOMIC[24], TCC_EA_ATOMIC_LEVEL[24], TCC_ATOMIC[25], TCC_CYCLE[25], TCC_EA_ATOMIC[25], TCC_EA_ATOMIC_LEVEL[25], TCC_ATOMIC[26], TCC_CYCLE[26], TCC_EA_ATOMIC[26], TCC_EA_ATOMIC_LEVEL[26], TCC_ATOMIC[27], TCC_CYCLE[27], TCC_EA_ATOMIC[27], TCC_EA_ATOMIC_LEVEL[27], TCC_ATOMIC[28], TCC_CYCLE[28], TCC_EA_ATOMIC[28], TCC_EA_ATOMIC_LEVEL[28], TCC_ATOMIC[29], TCC_CYCLE[29], TCC_EA_ATOMIC[29], TCC_EA_ATOMIC_LEVEL[29], TCC_ATOMIC[30], TCC_CYCLE[30], TCC_EA_ATOMIC[30], TCC_EA_ATOMIC_LEVEL[30], TCC_ATOMIC[31], TCC_CYCLE[31], TCC_EA_ATOMIC[31], TCC_EA_ATOMIC_LEVEL[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163602_4156580/input0_results_240321_163602
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_13.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_14.txt
|-> [rocprof] RPL: on '240321_163602' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_14.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163602_4156781'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163602_4156781/input0_results_240321_163602'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163602_4156781/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_EA_RDREQ[0], TCC_EA_RDREQ_32B[0], TCC_EA_RDREQ_DRAM_CREDIT_STALL[0], TCC_EA_RDREQ_GMI_CREDIT_STALL[0], TCC_EA_RDREQ[1], TCC_EA_RDREQ_32B[1], TCC_EA_RDREQ_DRAM_CREDIT_STALL[1], TCC_EA_RDREQ_GMI_CREDIT_STALL[1], TCC_EA_RDREQ[2], TCC_EA_RDREQ_32B[2], TCC_EA_RDREQ_DRAM_CREDIT_STALL[2], TCC_EA_RDREQ_GMI_CREDIT_STALL[2], TCC_EA_RDREQ[3], TCC_EA_RDREQ_32B[3], TCC_EA_RDREQ_DRAM_CREDIT_STALL[3], TCC_EA_RDREQ_GMI_CREDIT_STALL[3], TCC_EA_RDREQ[4], TCC_EA_RDREQ_32B[4], TCC_EA_RDREQ_DRAM_CREDIT_STALL[4], TCC_EA_RDREQ_GMI_CREDIT_STALL[4], TCC_EA_RDREQ[5], TCC_EA_RDREQ_32B[5], TCC_EA_RDREQ_DRAM_CREDIT_STALL[5], TCC_EA_RDREQ_GMI_CREDIT_STALL[5], TCC_EA_RDREQ[6], TCC_EA_RDREQ_32B[6], TCC_EA_RDREQ_DRAM_CREDIT_STALL[6], TCC_EA_RDREQ_GMI_CREDIT_STALL[6], TCC_EA_RDREQ[7], TCC_EA_RDREQ_32B[7], TCC_EA_RDREQ_DRAM_CREDIT_STALL[7], TCC_EA_RDREQ_GMI_CREDIT_STALL[7], TCC_EA_RDREQ[8], TCC_EA_RDREQ_32B[8], TCC_EA_RDREQ_DRAM_CREDIT_STALL[8], TCC_EA_RDREQ_GMI_CREDIT_STALL[8], TCC_EA_RDREQ[9], TCC_EA_RDREQ_32B[9], TCC_EA_RDREQ_DRAM_CREDIT_STALL[9], TCC_EA_RDREQ_GMI_CREDIT_STALL[9], TCC_EA_RDREQ[10], TCC_EA_RDREQ_32B[10], TCC_EA_RDREQ_DRAM_CREDIT_STALL[10], TCC_EA_RDREQ_GMI_CREDIT_STALL[10], TCC_EA_RDREQ[11], TCC_EA_RDREQ_32B[11], TCC_EA_RDREQ_DRAM_CREDIT_STALL[11], TCC_EA_RDREQ_GMI_CREDIT_STALL[11], TCC_EA_RDREQ[12], TCC_EA_RDREQ_32B[12], TCC_EA_RDREQ_DRAM_CREDIT_STALL[12], TCC_EA_RDREQ_GMI_CREDIT_STALL[12], TCC_EA_RDREQ[13], TCC_EA_RDREQ_32B[13], TCC_EA_RDREQ_DRAM_CREDIT_STALL[13], TCC_EA_RDREQ_GMI_CREDIT_STALL[13], TCC_EA_RDREQ[14], TCC_EA_RDREQ_32B[14], TCC_EA_RDREQ_DRAM_CREDIT_STALL[14], TCC_EA_RDREQ_GMI_CREDIT_STALL[14], TCC_EA_RDREQ[15], TCC_EA_RDREQ_32B[15], TCC_EA_RDREQ_DRAM_CREDIT_STALL[15], TCC_EA_RDREQ_GMI_CREDIT_STALL[15], TCC_EA_RDREQ[16], TCC_EA_RDREQ_32B[16], TCC_EA_RDREQ_DRAM_CREDIT_STALL[16], TCC_EA_RDREQ_GMI_CREDIT_STALL[16], TCC_EA_RDREQ[17], TCC_EA_RDREQ_32B[17], TCC_EA_RDREQ_DRAM_CREDIT_STALL[17], TCC_EA_RDREQ_GMI_CREDIT_STALL[17], TCC_EA_RDREQ[18], TCC_EA_RDREQ_32B[18], TCC_EA_RDREQ_DRAM_CREDIT_STALL[18], TCC_EA_RDREQ_GMI_CREDIT_STALL[18], TCC_EA_RDREQ[19], TCC_EA_RDREQ_32B[19], TCC_EA_RDREQ_DRAM_CREDIT_STALL[19], TCC_EA_RDREQ_GMI_CREDIT_STALL[19], TCC_EA_RDREQ[20], TCC_EA_RDREQ_32B[20], TCC_EA_RDREQ_DRAM_CREDIT_STALL[20], TCC_EA_RDREQ_GMI_CREDIT_STALL[20], TCC_EA_RDREQ[21], TCC_EA_RDREQ_32B[21], TCC_EA_RDREQ_DRAM_CREDIT_STALL[21], TCC_EA_RDREQ_GMI_CREDIT_STALL[21], TCC_EA_RDREQ[22], TCC_EA_RDREQ_32B[22], TCC_EA_RDREQ_DRAM_CREDIT_STALL[22], TCC_EA_RDREQ_GMI_CREDIT_STALL[22], TCC_EA_RDREQ[23], TCC_EA_RDREQ_32B[23], TCC_EA_RDREQ_DRAM_CREDIT_STALL[23], TCC_EA_RDREQ_GMI_CREDIT_STALL[23], TCC_EA_RDREQ[24], TCC_EA_RDREQ_32B[24], TCC_EA_RDREQ_DRAM_CREDIT_STALL[24], TCC_EA_RDREQ_GMI_CREDIT_STALL[24], TCC_EA_RDREQ[25], TCC_EA_RDREQ_32B[25], TCC_EA_RDREQ_DRAM_CREDIT_STALL[25], TCC_EA_RDREQ_GMI_CREDIT_STALL[25], TCC_EA_RDREQ[26], TCC_EA_RDREQ_32B[26], TCC_EA_RDREQ_DRAM_CREDIT_STALL[26], TCC_EA_RDREQ_GMI_CREDIT_STALL[26], TCC_EA_RDREQ[27], TCC_EA_RDREQ_32B[27], TCC_EA_RDREQ_DRAM_CREDIT_STALL[27], TCC_EA_RDREQ_GMI_CREDIT_STALL[27], TCC_EA_RDREQ[28], TCC_EA_RDREQ_32B[28], TCC_EA_RDREQ_DRAM_CREDIT_STALL[28], TCC_EA_RDREQ_GMI_CREDIT_STALL[28], TCC_EA_RDREQ[29], TCC_EA_RDREQ_32B[29], TCC_EA_RDREQ_DRAM_CREDIT_STALL[29], TCC_EA_RDREQ_GMI_CREDIT_STALL[29], TCC_EA_RDREQ[30], TCC_EA_RDREQ_32B[30], TCC_EA_RDREQ_DRAM_CREDIT_STALL[30], TCC_EA_RDREQ_GMI_CREDIT_STALL[30], TCC_EA_RDREQ[31], TCC_EA_RDREQ_32B[31], TCC_EA_RDREQ_DRAM_CREDIT_STALL[31], TCC_EA_RDREQ_GMI_CREDIT_STALL[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163602_4156781/input0_results_240321_163602
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_14.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_15.txt
|-> [rocprof] RPL: on '240321_163603' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_15.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163603_4156967'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163603_4156967/input0_results_240321_163603'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163603_4156967/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_EA_RDREQ_IO_CREDIT_STALL[0], TCC_EA_RDREQ_LEVEL[0], TCC_EA_WRREQ[0], TCC_EA_WRREQ_64B[0], TCC_EA_RDREQ_IO_CREDIT_STALL[1], TCC_EA_RDREQ_LEVEL[1], TCC_EA_WRREQ[1], TCC_EA_WRREQ_64B[1], TCC_EA_RDREQ_IO_CREDIT_STALL[2], TCC_EA_RDREQ_LEVEL[2], TCC_EA_WRREQ[2], TCC_EA_WRREQ_64B[2], TCC_EA_RDREQ_IO_CREDIT_STALL[3], TCC_EA_RDREQ_LEVEL[3], TCC_EA_WRREQ[3], TCC_EA_WRREQ_64B[3], TCC_EA_RDREQ_IO_CREDIT_STALL[4], TCC_EA_RDREQ_LEVEL[4], TCC_EA_WRREQ[4], TCC_EA_WRREQ_64B[4], TCC_EA_RDREQ_IO_CREDIT_STALL[5], TCC_EA_RDREQ_LEVEL[5], TCC_EA_WRREQ[5], TCC_EA_WRREQ_64B[5], TCC_EA_RDREQ_IO_CREDIT_STALL[6], TCC_EA_RDREQ_LEVEL[6], TCC_EA_WRREQ[6], TCC_EA_WRREQ_64B[6], TCC_EA_RDREQ_IO_CREDIT_STALL[7], TCC_EA_RDREQ_LEVEL[7], TCC_EA_WRREQ[7], TCC_EA_WRREQ_64B[7], TCC_EA_RDREQ_IO_CREDIT_STALL[8], TCC_EA_RDREQ_LEVEL[8], TCC_EA_WRREQ[8], TCC_EA_WRREQ_64B[8], TCC_EA_RDREQ_IO_CREDIT_STALL[9], TCC_EA_RDREQ_LEVEL[9], TCC_EA_WRREQ[9], TCC_EA_WRREQ_64B[9], TCC_EA_RDREQ_IO_CREDIT_STALL[10], TCC_EA_RDREQ_LEVEL[10], TCC_EA_WRREQ[10], TCC_EA_WRREQ_64B[10], TCC_EA_RDREQ_IO_CREDIT_STALL[11], TCC_EA_RDREQ_LEVEL[11], TCC_EA_WRREQ[11], TCC_EA_WRREQ_64B[11], TCC_EA_RDREQ_IO_CREDIT_STALL[12], TCC_EA_RDREQ_LEVEL[12], TCC_EA_WRREQ[12], TCC_EA_WRREQ_64B[12], TCC_EA_RDREQ_IO_CREDIT_STALL[13], TCC_EA_RDREQ_LEVEL[13], TCC_EA_WRREQ[13], TCC_EA_WRREQ_64B[13], TCC_EA_RDREQ_IO_CREDIT_STALL[14], TCC_EA_RDREQ_LEVEL[14], TCC_EA_WRREQ[14], TCC_EA_WRREQ_64B[14], TCC_EA_RDREQ_IO_CREDIT_STALL[15], TCC_EA_RDREQ_LEVEL[15], TCC_EA_WRREQ[15], TCC_EA_WRREQ_64B[15], TCC_EA_RDREQ_IO_CREDIT_STALL[16], TCC_EA_RDREQ_LEVEL[16], TCC_EA_WRREQ[16], TCC_EA_WRREQ_64B[16], TCC_EA_RDREQ_IO_CREDIT_STALL[17], TCC_EA_RDREQ_LEVEL[17], TCC_EA_WRREQ[17], TCC_EA_WRREQ_64B[17], TCC_EA_RDREQ_IO_CREDIT_STALL[18], TCC_EA_RDREQ_LEVEL[18], TCC_EA_WRREQ[18], TCC_EA_WRREQ_64B[18], TCC_EA_RDREQ_IO_CREDIT_STALL[19], TCC_EA_RDREQ_LEVEL[19], TCC_EA_WRREQ[19], TCC_EA_WRREQ_64B[19], TCC_EA_RDREQ_IO_CREDIT_STALL[20], TCC_EA_RDREQ_LEVEL[20], TCC_EA_WRREQ[20], TCC_EA_WRREQ_64B[20], TCC_EA_RDREQ_IO_CREDIT_STALL[21], TCC_EA_RDREQ_LEVEL[21], TCC_EA_WRREQ[21], TCC_EA_WRREQ_64B[21], TCC_EA_RDREQ_IO_CREDIT_STALL[22], TCC_EA_RDREQ_LEVEL[22], TCC_EA_WRREQ[22], TCC_EA_WRREQ_64B[22], TCC_EA_RDREQ_IO_CREDIT_STALL[23], TCC_EA_RDREQ_LEVEL[23], TCC_EA_WRREQ[23], TCC_EA_WRREQ_64B[23], TCC_EA_RDREQ_IO_CREDIT_STALL[24], TCC_EA_RDREQ_LEVEL[24], TCC_EA_WRREQ[24], TCC_EA_WRREQ_64B[24], TCC_EA_RDREQ_IO_CREDIT_STALL[25], TCC_EA_RDREQ_LEVEL[25], TCC_EA_WRREQ[25], TCC_EA_WRREQ_64B[25], TCC_EA_RDREQ_IO_CREDIT_STALL[26], TCC_EA_RDREQ_LEVEL[26], TCC_EA_WRREQ[26], TCC_EA_WRREQ_64B[26], TCC_EA_RDREQ_IO_CREDIT_STALL[27], TCC_EA_RDREQ_LEVEL[27], TCC_EA_WRREQ[27], TCC_EA_WRREQ_64B[27], TCC_EA_RDREQ_IO_CREDIT_STALL[28], TCC_EA_RDREQ_LEVEL[28], TCC_EA_WRREQ[28], TCC_EA_WRREQ_64B[28], TCC_EA_RDREQ_IO_CREDIT_STALL[29], TCC_EA_RDREQ_LEVEL[29], TCC_EA_WRREQ[29], TCC_EA_WRREQ_64B[29], TCC_EA_RDREQ_IO_CREDIT_STALL[30], TCC_EA_RDREQ_LEVEL[30], TCC_EA_WRREQ[30], TCC_EA_WRREQ_64B[30], TCC_EA_RDREQ_IO_CREDIT_STALL[31], TCC_EA_RDREQ_LEVEL[31], TCC_EA_WRREQ[31], TCC_EA_WRREQ_64B[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163603_4156967/input0_results_240321_163603
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_15.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_16.txt
|-> [rocprof] RPL: on '240321_163604' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_16.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163604_4157155'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163604_4157155/input0_results_240321_163604'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163604_4157155/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_EA_WRREQ_DRAM_CREDIT_STALL[0], TCC_EA_WRREQ_GMI_CREDIT_STALL[0], TCC_EA_WRREQ_IO_CREDIT_STALL[0], TCC_EA_WRREQ_LEVEL[0], TCC_EA_WRREQ_DRAM_CREDIT_STALL[1], TCC_EA_WRREQ_GMI_CREDIT_STALL[1], TCC_EA_WRREQ_IO_CREDIT_STALL[1], TCC_EA_WRREQ_LEVEL[1], TCC_EA_WRREQ_DRAM_CREDIT_STALL[2], TCC_EA_WRREQ_GMI_CREDIT_STALL[2], TCC_EA_WRREQ_IO_CREDIT_STALL[2], TCC_EA_WRREQ_LEVEL[2], TCC_EA_WRREQ_DRAM_CREDIT_STALL[3], TCC_EA_WRREQ_GMI_CREDIT_STALL[3], TCC_EA_WRREQ_IO_CREDIT_STALL[3], TCC_EA_WRREQ_LEVEL[3], TCC_EA_WRREQ_DRAM_CREDIT_STALL[4], TCC_EA_WRREQ_GMI_CREDIT_STALL[4], TCC_EA_WRREQ_IO_CREDIT_STALL[4], TCC_EA_WRREQ_LEVEL[4], TCC_EA_WRREQ_DRAM_CREDIT_STALL[5], TCC_EA_WRREQ_GMI_CREDIT_STALL[5], TCC_EA_WRREQ_IO_CREDIT_STALL[5], TCC_EA_WRREQ_LEVEL[5], TCC_EA_WRREQ_DRAM_CREDIT_STALL[6], TCC_EA_WRREQ_GMI_CREDIT_STALL[6], TCC_EA_WRREQ_IO_CREDIT_STALL[6], TCC_EA_WRREQ_LEVEL[6], TCC_EA_WRREQ_DRAM_CREDIT_STALL[7], TCC_EA_WRREQ_GMI_CREDIT_STALL[7], TCC_EA_WRREQ_IO_CREDIT_STALL[7], TCC_EA_WRREQ_LEVEL[7], TCC_EA_WRREQ_DRAM_CREDIT_STALL[8], TCC_EA_WRREQ_GMI_CREDIT_STALL[8], TCC_EA_WRREQ_IO_CREDIT_STALL[8], TCC_EA_WRREQ_LEVEL[8], TCC_EA_WRREQ_DRAM_CREDIT_STALL[9], TCC_EA_WRREQ_GMI_CREDIT_STALL[9], TCC_EA_WRREQ_IO_CREDIT_STALL[9], TCC_EA_WRREQ_LEVEL[9], TCC_EA_WRREQ_DRAM_CREDIT_STALL[10], TCC_EA_WRREQ_GMI_CREDIT_STALL[10], TCC_EA_WRREQ_IO_CREDIT_STALL[10], TCC_EA_WRREQ_LEVEL[10], TCC_EA_WRREQ_DRAM_CREDIT_STALL[11], TCC_EA_WRREQ_GMI_CREDIT_STALL[11], TCC_EA_WRREQ_IO_CREDIT_STALL[11], TCC_EA_WRREQ_LEVEL[11], TCC_EA_WRREQ_DRAM_CREDIT_STALL[12], TCC_EA_WRREQ_GMI_CREDIT_STALL[12], TCC_EA_WRREQ_IO_CREDIT_STALL[12], TCC_EA_WRREQ_LEVEL[12], TCC_EA_WRREQ_DRAM_CREDIT_STALL[13], TCC_EA_WRREQ_GMI_CREDIT_STALL[13], TCC_EA_WRREQ_IO_CREDIT_STALL[13], TCC_EA_WRREQ_LEVEL[13], TCC_EA_WRREQ_DRAM_CREDIT_STALL[14], TCC_EA_WRREQ_GMI_CREDIT_STALL[14], TCC_EA_WRREQ_IO_CREDIT_STALL[14], TCC_EA_WRREQ_LEVEL[14], TCC_EA_WRREQ_DRAM_CREDIT_STALL[15], TCC_EA_WRREQ_GMI_CREDIT_STALL[15], TCC_EA_WRREQ_IO_CREDIT_STALL[15], TCC_EA_WRREQ_LEVEL[15], TCC_EA_WRREQ_DRAM_CREDIT_STALL[16], TCC_EA_WRREQ_GMI_CREDIT_STALL[16], TCC_EA_WRREQ_IO_CREDIT_STALL[16], TCC_EA_WRREQ_LEVEL[16], TCC_EA_WRREQ_DRAM_CREDIT_STALL[17], TCC_EA_WRREQ_GMI_CREDIT_STALL[17], TCC_EA_WRREQ_IO_CREDIT_STALL[17], TCC_EA_WRREQ_LEVEL[17], TCC_EA_WRREQ_DRAM_CREDIT_STALL[18], TCC_EA_WRREQ_GMI_CREDIT_STALL[18], TCC_EA_WRREQ_IO_CREDIT_STALL[18], TCC_EA_WRREQ_LEVEL[18], TCC_EA_WRREQ_DRAM_CREDIT_STALL[19], TCC_EA_WRREQ_GMI_CREDIT_STALL[19], TCC_EA_WRREQ_IO_CREDIT_STALL[19], TCC_EA_WRREQ_LEVEL[19], TCC_EA_WRREQ_DRAM_CREDIT_STALL[20], TCC_EA_WRREQ_GMI_CREDIT_STALL[20], TCC_EA_WRREQ_IO_CREDIT_STALL[20], TCC_EA_WRREQ_LEVEL[20], TCC_EA_WRREQ_DRAM_CREDIT_STALL[21], TCC_EA_WRREQ_GMI_CREDIT_STALL[21], TCC_EA_WRREQ_IO_CREDIT_STALL[21], TCC_EA_WRREQ_LEVEL[21], TCC_EA_WRREQ_DRAM_CREDIT_STALL[22], TCC_EA_WRREQ_GMI_CREDIT_STALL[22], TCC_EA_WRREQ_IO_CREDIT_STALL[22], TCC_EA_WRREQ_LEVEL[22], TCC_EA_WRREQ_DRAM_CREDIT_STALL[23], TCC_EA_WRREQ_GMI_CREDIT_STALL[23], TCC_EA_WRREQ_IO_CREDIT_STALL[23], TCC_EA_WRREQ_LEVEL[23], TCC_EA_WRREQ_DRAM_CREDIT_STALL[24], TCC_EA_WRREQ_GMI_CREDIT_STALL[24], TCC_EA_WRREQ_IO_CREDIT_STALL[24], TCC_EA_WRREQ_LEVEL[24], TCC_EA_WRREQ_DRAM_CREDIT_STALL[25], TCC_EA_WRREQ_GMI_CREDIT_STALL[25], TCC_EA_WRREQ_IO_CREDIT_STALL[25], TCC_EA_WRREQ_LEVEL[25], TCC_EA_WRREQ_DRAM_CREDIT_STALL[26], TCC_EA_WRREQ_GMI_CREDIT_STALL[26], TCC_EA_WRREQ_IO_CREDIT_STALL[26], TCC_EA_WRREQ_LEVEL[26], TCC_EA_WRREQ_DRAM_CREDIT_STALL[27], TCC_EA_WRREQ_GMI_CREDIT_STALL[27], TCC_EA_WRREQ_IO_CREDIT_STALL[27], TCC_EA_WRREQ_LEVEL[27], TCC_EA_WRREQ_DRAM_CREDIT_STALL[28], TCC_EA_WRREQ_GMI_CREDIT_STALL[28], TCC_EA_WRREQ_IO_CREDIT_STALL[28], TCC_EA_WRREQ_LEVEL[28], TCC_EA_WRREQ_DRAM_CREDIT_STALL[29], TCC_EA_WRREQ_GMI_CREDIT_STALL[29], TCC_EA_WRREQ_IO_CREDIT_STALL[29], TCC_EA_WRREQ_LEVEL[29], TCC_EA_WRREQ_DRAM_CREDIT_STALL[30], TCC_EA_WRREQ_GMI_CREDIT_STALL[30], TCC_EA_WRREQ_IO_CREDIT_STALL[30], TCC_EA_WRREQ_LEVEL[30], TCC_EA_WRREQ_DRAM_CREDIT_STALL[31], TCC_EA_WRREQ_GMI_CREDIT_STALL[31], TCC_EA_WRREQ_IO_CREDIT_STALL[31], TCC_EA_WRREQ_LEVEL[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163604_4157155/input0_results_240321_163604
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_16.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_17.txt
|-> [rocprof] RPL: on '240321_163605' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_17.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163605_4157340'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163605_4157340/input0_results_240321_163605'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163605_4157340/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 128 metrics
|-> [rocprof] TCC_HIT[0], TCC_MISS[0], TCC_READ[0], TCC_REQ[0], TCC_HIT[1], TCC_MISS[1], TCC_READ[1], TCC_REQ[1], TCC_HIT[2], TCC_MISS[2], TCC_READ[2], TCC_REQ[2], TCC_HIT[3], TCC_MISS[3], TCC_READ[3], TCC_REQ[3], TCC_HIT[4], TCC_MISS[4], TCC_READ[4], TCC_REQ[4], TCC_HIT[5], TCC_MISS[5], TCC_READ[5], TCC_REQ[5], TCC_HIT[6], TCC_MISS[6], TCC_READ[6], TCC_REQ[6], TCC_HIT[7], TCC_MISS[7], TCC_READ[7], TCC_REQ[7], TCC_HIT[8], TCC_MISS[8], TCC_READ[8], TCC_REQ[8], TCC_HIT[9], TCC_MISS[9], TCC_READ[9], TCC_REQ[9], TCC_HIT[10], TCC_MISS[10], TCC_READ[10], TCC_REQ[10], TCC_HIT[11], TCC_MISS[11], TCC_READ[11], TCC_REQ[11], TCC_HIT[12], TCC_MISS[12], TCC_READ[12], TCC_REQ[12], TCC_HIT[13], TCC_MISS[13], TCC_READ[13], TCC_REQ[13], TCC_HIT[14], TCC_MISS[14], TCC_READ[14], TCC_REQ[14], TCC_HIT[15], TCC_MISS[15], TCC_READ[15], TCC_REQ[15], TCC_HIT[16], TCC_MISS[16], TCC_READ[16], TCC_REQ[16], TCC_HIT[17], TCC_MISS[17], TCC_READ[17], TCC_REQ[17], TCC_HIT[18], TCC_MISS[18], TCC_READ[18], TCC_REQ[18], TCC_HIT[19], TCC_MISS[19], TCC_READ[19], TCC_REQ[19], TCC_HIT[20], TCC_MISS[20], TCC_READ[20], TCC_REQ[20], TCC_HIT[21], TCC_MISS[21], TCC_READ[21], TCC_REQ[21], TCC_HIT[22], TCC_MISS[22], TCC_READ[22], TCC_REQ[22], TCC_HIT[23], TCC_MISS[23], TCC_READ[23], TCC_REQ[23], TCC_HIT[24], TCC_MISS[24], TCC_READ[24], TCC_REQ[24], TCC_HIT[25], TCC_MISS[25], TCC_READ[25], TCC_REQ[25], TCC_HIT[26], TCC_MISS[26], TCC_READ[26], TCC_REQ[26], TCC_HIT[27], TCC_MISS[27], TCC_READ[27], TCC_REQ[27], TCC_HIT[28], TCC_MISS[28], TCC_READ[28], TCC_REQ[28], TCC_HIT[29], TCC_MISS[29], TCC_READ[29], TCC_REQ[29], TCC_HIT[30], TCC_MISS[30], TCC_READ[30], TCC_REQ[30], TCC_HIT[31], TCC_MISS[31], TCC_READ[31], TCC_REQ[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163605_4157340/input0_results_240321_163605
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_17.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_18.txt
|-> [rocprof] RPL: on '240321_163605' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_18.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163605_4157525'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163605_4157525/input0_results_240321_163605'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163605_4157525/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 96 metrics
|-> [rocprof] TCC_RW_REQ[0], TCC_TOO_MANY_EA_WRREQS_STALL[0], TCC_WRITE[0], TCC_RW_REQ[1], TCC_TOO_MANY_EA_WRREQS_STALL[1], TCC_WRITE[1], TCC_RW_REQ[2], TCC_TOO_MANY_EA_WRREQS_STALL[2], TCC_WRITE[2], TCC_RW_REQ[3], TCC_TOO_MANY_EA_WRREQS_STALL[3], TCC_WRITE[3], TCC_RW_REQ[4], TCC_TOO_MANY_EA_WRREQS_STALL[4], TCC_WRITE[4], TCC_RW_REQ[5], TCC_TOO_MANY_EA_WRREQS_STALL[5], TCC_WRITE[5], TCC_RW_REQ[6], TCC_TOO_MANY_EA_WRREQS_STALL[6], TCC_WRITE[6], TCC_RW_REQ[7], TCC_TOO_MANY_EA_WRREQS_STALL[7], TCC_WRITE[7], TCC_RW_REQ[8], TCC_TOO_MANY_EA_WRREQS_STALL[8], TCC_WRITE[8], TCC_RW_REQ[9], TCC_TOO_MANY_EA_WRREQS_STALL[9], TCC_WRITE[9], TCC_RW_REQ[10], TCC_TOO_MANY_EA_WRREQS_STALL[10], TCC_WRITE[10], TCC_RW_REQ[11], TCC_TOO_MANY_EA_WRREQS_STALL[11], TCC_WRITE[11], TCC_RW_REQ[12], TCC_TOO_MANY_EA_WRREQS_STALL[12], TCC_WRITE[12], TCC_RW_REQ[13], TCC_TOO_MANY_EA_WRREQS_STALL[13], TCC_WRITE[13], TCC_RW_REQ[14], TCC_TOO_MANY_EA_WRREQS_STALL[14], TCC_WRITE[14], TCC_RW_REQ[15], TCC_TOO_MANY_EA_WRREQS_STALL[15], TCC_WRITE[15], TCC_RW_REQ[16], TCC_TOO_MANY_EA_WRREQS_STALL[16], TCC_WRITE[16], TCC_RW_REQ[17], TCC_TOO_MANY_EA_WRREQS_STALL[17], TCC_WRITE[17], TCC_RW_REQ[18], TCC_TOO_MANY_EA_WRREQS_STALL[18], TCC_WRITE[18], TCC_RW_REQ[19], TCC_TOO_MANY_EA_WRREQS_STALL[19], TCC_WRITE[19], TCC_RW_REQ[20], TCC_TOO_MANY_EA_WRREQS_STALL[20], TCC_WRITE[20], TCC_RW_REQ[21], TCC_TOO_MANY_EA_WRREQS_STALL[21], TCC_WRITE[21], TCC_RW_REQ[22], TCC_TOO_MANY_EA_WRREQS_STALL[22], TCC_WRITE[22], TCC_RW_REQ[23], TCC_TOO_MANY_EA_WRREQS_STALL[23], TCC_WRITE[23], TCC_RW_REQ[24], TCC_TOO_MANY_EA_WRREQS_STALL[24], TCC_WRITE[24], TCC_RW_REQ[25], TCC_TOO_MANY_EA_WRREQS_STALL[25], TCC_WRITE[25], TCC_RW_REQ[26], TCC_TOO_MANY_EA_WRREQS_STALL[26], TCC_WRITE[26], TCC_RW_REQ[27], TCC_TOO_MANY_EA_WRREQS_STALL[27], TCC_WRITE[27], TCC_RW_REQ[28], TCC_TOO_MANY_EA_WRREQS_STALL[28], TCC_WRITE[28], TCC_RW_REQ[29], TCC_TOO_MANY_EA_WRREQS_STALL[29], TCC_WRITE[29], TCC_RW_REQ[30], TCC_TOO_MANY_EA_WRREQS_STALL[30], TCC_WRITE[30], TCC_RW_REQ[31], TCC_TOO_MANY_EA_WRREQS_STALL[31], TCC_WRITE[31]
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163605_4157525/input0_results_240321_163605
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_18.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_2.txt
|-> [rocprof] RPL: on '240321_163606' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_2.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163606_4157708'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163606_4157708/input0_results_240321_163606'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163606_4157708/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 26 metrics
|-> [rocprof] SQ_INSTS_VALU_MUL_F32, SQ_INSTS_VALU_FMA_F32, SQ_INSTS_VALU_TRANS_F32, SQ_INSTS_VALU_ADD_F64, SQ_INSTS_VALU_MUL_F64, SQ_INSTS_VALU_FMA_F64, SQ_INSTS_VALU_TRANS_F64, SQ_INSTS_VALU_INT32, TCP_VOLATILE_sum, TCP_TOTAL_ACCESSES_sum, TCP_TOTAL_READ_sum, TCP_TOTAL_WRITE_sum, TA_BUFFER_ATOMIC_WAVEFRONTS_sum, TA_BUFFER_TOTAL_CYCLES_sum, TD_ATOMIC_WAVEFRONT_sum, TD_STORE_WAVEFRONT_sum, SPI_RA_REQ_NO_ALLOC, SPI_RA_REQ_NO_ALLOC_CSN, CPC_CPC_STAT_STALL, CPC_UTCL1_STALL_ON_TRANSLATION, CPF_CPF_STAT_IDLE, CPF_CPF_TCIU_IDLE, TCC_REQ_sum, TCC_STREAMING_REQ_sum, TCC_HIT_sum, TCC_MISS_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163606_4157708/input0_results_240321_163606
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_2.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_3.txt
|-> [rocprof] RPL: on '240321_163606' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_3.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163606_4157893'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163606_4157893/input0_results_240321_163606'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163606_4157893/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 24 metrics
|-> [rocprof] SQ_INSTS_VALU_INT64, SQ_INSTS_SMEM, SQ_INSTS_FLAT, SQ_INSTS_LDS, SQ_INSTS_GDS, SQ_INSTS_EXP_GDS, SQ_INSTS_BRANCH, SQ_INSTS_SENDMSG, TCP_TOTAL_ATOMIC_WITH_RET_sum, TCP_TOTAL_ATOMIC_WITHOUT_RET_sum, TCP_TOTAL_WRITEBACK_INVALIDATES_sum, TCP_TOTAL_CACHE_ACCESSES_sum, TA_BUFFER_COALESCED_READ_CYCLES_sum, TA_BUFFER_COALESCED_WRITE_CYCLES_sum, TD_COALESCABLE_WAVEFRONT_sum, SPI_RA_RES_STALL_CSN, SPI_RA_TMP_STALL_CSN, CPC_CPC_UTCL2IU_BUSY, CPC_CPC_UTCL2IU_IDLE, CPF_CMP_UTCL1_STALL_ON_TRANSLATION, TCC_READ_sum, TCC_WRITE_sum, TCC_ATOMIC_sum, TCC_WRITEBACK_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163606_4157893/input0_results_240321_163606
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_3.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_4.txt
|-> [rocprof] RPL: on '240321_163607' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_4.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163607_4158080'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163607_4158080/input0_results_240321_163607'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163607_4158080/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 22 metrics
|-> [rocprof] SQ_WAVE_CYCLES, SQ_WAIT_ANY, SQ_WAIT_INST_ANY, SQ_ACTIVE_INST_ANY, SQ_BUSY_CU_CYCLES, SQ_ACTIVE_INST_VMEM, SQ_ACTIVE_INST_LDS, SQ_ACTIVE_INST_VALU, TCP_UTCL1_TRANSLATION_MISS_sum, TCP_UTCL1_TRANSLATION_HIT_sum, TCP_UTCL1_PERMISSION_MISS_sum, TCP_UTCL1_REQUEST_sum, TA_ADDR_STALLED_BY_TC_CYCLES_sum, TA_TOTAL_WAVEFRONTS_sum, SPI_RA_WAVE_SIMD_FULL_CSN, SPI_RA_VGPR_SIMD_FULL_CSN, CPC_CPC_UTCL2IU_STALL, CPC_ME1_BUSY_FOR_PACKET_DECODE, TCC_EA_WRREQ_sum, TCC_EA_WRREQ_64B_sum, TCC_EA_WR_UNCACHED_32B_sum, TCC_EA_WRREQ_DRAM_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163607_4158080/input0_results_240321_163607
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_4.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_5.txt
|-> [rocprof] RPL: on '240321_163607' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_5.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163607_4158281'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163607_4158281/input0_results_240321_163607'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163607_4158281/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 21 metrics
|-> [rocprof] SQ_ACTIVE_INST_SCA, SQ_ACTIVE_INST_EXP_GDS, SQ_ACTIVE_INST_MISC, SQ_ACTIVE_INST_FLAT, SQ_INST_CYCLES_VMEM_WR, SQ_INST_CYCLES_VMEM_RD, SQ_INST_CYCLES_SMEM, SQ_INST_CYCLES_SALU, TCP_TCP_LATENCY_sum, TCP_TCC_READ_REQ_LATENCY_sum, TCP_TCC_WRITE_REQ_LATENCY_sum, TCP_TCC_READ_REQ_sum, TA_ADDR_STALLED_BY_TD_CYCLES_sum, TA_DATA_STALLED_BY_TC_CYCLES_sum, SPI_RA_SGPR_SIMD_FULL_CSN, SPI_RA_LDS_CU_FULL_CSN, CPC_ME1_DC0_SPI_BUSY, TCC_EA_WRREQ_STALL_sum, TCC_EA_RDREQ_sum, TCC_EA_RDREQ_32B_sum, TCC_EA_RD_UNCACHED_32B_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163607_4158281/input0_results_240321_163607
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_5.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_6.txt
|-> [rocprof] RPL: on '240321_163608' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_6.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163608_4158468'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163608_4158468/input0_results_240321_163608'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163608_4158468/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 20 metrics
|-> [rocprof] SQ_THREAD_CYCLES_VALU, SQ_IFETCH, SQ_LDS_BANK_CONFLICT, SQ_LDS_ADDR_CONFLICT, SQ_LDS_UNALIGNED_STALL, SQ_WAVES_EQ_64, SQ_WAVES_LT_64, SQ_WAVES_LT_48, TCP_TCC_WRITE_REQ_sum, TCP_TCC_ATOMIC_WITH_RET_REQ_sum, TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum, TCP_TCC_NC_READ_REQ_sum, TA_FLAT_WAVEFRONTS_sum, TA_FLAT_READ_WAVEFRONTS_sum, SPI_RA_BAR_CU_FULL_CSN, SPI_RA_TGLIM_CU_FULL_CSN, TCC_EA_RDREQ_DRAM_sum, TCC_TAG_STALL_sum, TCC_NORMAL_WRITEBACK_sum, TCC_ALL_TC_OP_WB_WRITEBACK_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163608_4158468/input0_results_240321_163608
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_6.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_7.txt
|-> [rocprof] RPL: on '240321_163608' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_7.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163608_4158670'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163608_4158670/input0_results_240321_163608'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163608_4158670/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 20 metrics
|-> [rocprof] SQ_WAVES_LT_32, SQ_WAVES_LT_16, SQ_ITEMS, SQ_LDS_MEM_VIOLATIONS, SQ_LDS_ATOMIC_RETURN, SQ_LDS_IDX_ACTIVE, SQ_WAVES_RESTORED, SQ_WAVES_SAVED, TCP_TCC_NC_WRITE_REQ_sum, TCP_TCC_NC_ATOMIC_REQ_sum, TCP_TCC_UC_READ_REQ_sum, TCP_TCC_UC_WRITE_REQ_sum, TA_FLAT_WRITE_WAVEFRONTS_sum, TA_FLAT_ATOMIC_WAVEFRONTS_sum, SPI_RA_WVLIM_STALL_CSN, SPI_SWC_CSC_WR, TCC_NORMAL_EVICT_sum, TCC_ALL_TC_OP_INV_EVICT_sum, TCC_TOO_MANY_EA_WRREQS_STALL_sum, TCC_EA_ATOMIC_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163608_4158670/input0_results_240321_163608
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_7.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_8.txt
|-> [rocprof] RPL: on '240321_163609' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_8.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163609_4158857'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163609_4158857/input0_results_240321_163609'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163609_4158857/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 17 metrics
|-> [rocprof] SQ_INSTS_SMEM_NORM, SQ_INSTS_MFMA, SQ_INSTS_VALU_MFMA_I8, SQ_INSTS_VALU_MFMA_F16, SQ_INSTS_VALU_MFMA_BF16, SQ_INSTS_VALU_MFMA_F32, SQ_INSTS_VALU_MFMA_F64, SQ_VALU_MFMA_BUSY_CYCLES, TCP_TCC_UC_ATOMIC_REQ_sum, TCP_TCC_CC_READ_REQ_sum, TCP_TCC_CC_WRITE_REQ_sum, TCP_TCC_CC_ATOMIC_REQ_sum, SPI_VWC_CSC_WR, SPI_RA_BULKY_CU_FULL_CSN, TCC_EA_RDREQ_LEVEL_sum, TCC_EA_WRREQ_LEVEL_sum, TCC_EA_ATOMIC_LEVEL_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163609_4158857/input0_results_240321_163609
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_8.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/pmc_perf_9.txt
|-> [rocprof] RPL: on '240321_163609' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/pmc_perf_9.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163609_4159041'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163609_4159041/input0_results_240321_163609'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163609_4159041/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 12 metrics
|-> [rocprof] SQ_INSTS_FLAT_LDS_ONLY, SQ_INSTS_VALU_MFMA_MOPS_I8, SQ_INSTS_VALU_MFMA_MOPS_F16, SQ_INSTS_VALU_MFMA_MOPS_BF16, SQ_INSTS_VALU_MFMA_MOPS_F32, SQ_INSTS_VALU_MFMA_MOPS_F64, SQC_TC_INST_REQ, SQC_TC_DATA_READ_REQ, TCP_TCC_RW_READ_REQ_sum, TCP_TCC_RW_WRITE_REQ_sum, TCP_TCC_RW_ATOMIC_REQ_sum, TCP_PENDING_STALL_CYCLES_sum
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163609_4159041/input0_results_240321_163609
|-> [rocprof] File 'tests/workloads/device_filter/MI200/pmc_perf_9.csv' is generating
|-> [rocprof]
[profiling] Current input file: tests/workloads/device_filter/MI200/perfmon/timestamps.txt
|-> [rocprof] RPL: on '240321_163610' from '/opt/rocm-6.0.2' in '/home1/josantos/omniperf'
|-> [rocprof] RPL: profiling '""./tests/vcopy -n 1048576 -b 256 -i 3""'
|-> [rocprof] RPL: input file 'tests/workloads/device_filter/MI200/perfmon/timestamps.txt'
|-> [rocprof] RPL: output dir '/tmp/rpl_data_240321_163610_4159225'
|-> [rocprof] RPL: result dir '/tmp/rpl_data_240321_163610_4159225/input0_results_240321_163610'
|-> [rocprof] ROCProfiler: input from "/tmp/rpl_data_240321_163610_4159225/input0.xml"
|-> [rocprof] gpu_index =
|-> [rocprof] kernel =
|-> [rocprof] range =
|-> [rocprof] 0 metrics
|-> [rocprof] vcopy testing on GCD 0
|-> [rocprof] Finished allocating vectors on the CPU
|-> [rocprof] Finished allocating vectors on the GPU
|-> [rocprof] Finished copying vectors to the GPU
|-> [rocprof] sw thinks it moved 1.000000 KB per wave
|-> [rocprof] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [rocprof] Launching the kernel on the GPU
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished executing kernel
|-> [rocprof] Finished copying the output vector from the GPU to the CPU
|-> [rocprof] Releasing GPU memory
|-> [rocprof] Releasing CPU memory
|-> [rocprof]
|-> [rocprof] ROCPRofiler: 3 contexts collected, output directory /tmp/rpl_data_240321_163610_4159225/input0_results_240321_163610
|-> [rocprof] File 'tests/workloads/device_filter/MI200/timestamps.csv' is generating
|-> [rocprof]
[roofline] Checking for roofline.csv in tests/workloads/device_filter/MI200
[roofline] No roofline data found. Generating...
@@ -0,0 +1,5 @@
pmc: GRBM_COUNT GRBM_GUI_ACTIVE SQ_WAVES SQ_IFETCH SQ_IFETCH_LEVEL SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_LDS SQ_INST_LEVEL_LDS SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_SMEM SQ_INST_LEVEL_SMEM SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_VMEM SQ_INST_LEVEL_VMEM SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: GRBM_COUNT GRBM_GUI_ACTIVE CPC_ME1_BUSY_FOR_PACKET_DECODE SQ_CYCLES SQ_WAVES SQ_WAVE_CYCLES SQ_BUSY_CYCLES SQ_LEVEL_WAVES SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_CYCLES SQ_BUSY_CYCLES SQ_WAVES SQ_INSTS_VALU_CVT SQ_INSTS_VMEM_WR SQ_INSTS_VMEM_RD SQ_INSTS_VMEM SQ_INSTS_SALU GRBM_COUNT GRBM_GUI_ACTIVE TCP_GATE_EN1_sum TCP_GATE_EN2_sum TCP_TD_TCP_STALL_CYCLES_sum TCP_TCR_TCP_STALL_CYCLES_sum TA_TA_BUSY_sum TA_BUFFER_WAVEFRONTS_sum TD_TD_BUSY_sum TD_TC_STALL_sum SPI_CSN_WINDOW_VALID SPI_CSN_BUSY CPC_CPC_STAT_BUSY CPC_CPC_STAT_IDLE CPF_CPF_STAT_BUSY CPF_CPF_STAT_STALL TCC_CYCLE_sum TCC_BUSY_sum TCC_PROBE_sum TCC_PROBE_ALL_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_VSKIPPED SQ_INSTS SQ_INSTS_VALU SQ_INSTS_VALU_ADD_F16 SQ_INSTS_VALU_MUL_F16 SQ_INSTS_VALU_FMA_F16 SQ_INSTS_VALU_TRANS_F16 SQ_INSTS_VALU_ADD_F32 GRBM_SPI_BUSY TCP_READ_TAGCONFLICT_STALL_CYCLES_sum TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum TCP_TA_TCP_STATE_READ_sum TA_BUFFER_READ_WAVEFRONTS_sum TA_BUFFER_WRITE_WAVEFRONTS_sum TD_SPI_STALL_sum TD_LOAD_WAVEFRONT_sum SPI_CSN_NUM_THREADGROUPS SPI_CSN_WAVE CPC_CPC_TCIU_BUSY CPC_CPC_TCIU_IDLE CPF_CPF_TCIU_BUSY CPF_CPF_TCIU_STALL TCC_NC_REQ_sum TCC_UC_REQ_sum TCC_CC_REQ_sum TCC_RW_REQ_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQC_TC_DATA_WRITE_REQ SQC_TC_DATA_ATOMIC_REQ SQC_TC_STALL SQC_TC_REQ SQC_DCACHE_REQ_READ_16 SQC_ICACHE_REQ SQC_ICACHE_HITS SQC_ICACHE_MISSES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQC_ICACHE_MISSES_DUPLICATE SQC_DCACHE_INPUT_VALID_READYB SQC_DCACHE_ATOMIC SQC_DCACHE_REQ_READ_8 SQC_DCACHE_REQ SQC_DCACHE_HITS SQC_DCACHE_MISSES SQC_DCACHE_MISSES_DUPLICATE
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQC_DCACHE_REQ_READ_1 SQC_DCACHE_REQ_READ_2 SQC_DCACHE_REQ_READ_4
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_ATOMIC[0] TCC_CYCLE[0] TCC_EA_ATOMIC[0] TCC_EA_ATOMIC_LEVEL[0] TCC_ATOMIC[1] TCC_CYCLE[1] TCC_EA_ATOMIC[1] TCC_EA_ATOMIC_LEVEL[1] TCC_ATOMIC[2] TCC_CYCLE[2] TCC_EA_ATOMIC[2] TCC_EA_ATOMIC_LEVEL[2] TCC_ATOMIC[3] TCC_CYCLE[3] TCC_EA_ATOMIC[3] TCC_EA_ATOMIC_LEVEL[3] TCC_ATOMIC[4] TCC_CYCLE[4] TCC_EA_ATOMIC[4] TCC_EA_ATOMIC_LEVEL[4] TCC_ATOMIC[5] TCC_CYCLE[5] TCC_EA_ATOMIC[5] TCC_EA_ATOMIC_LEVEL[5] TCC_ATOMIC[6] TCC_CYCLE[6] TCC_EA_ATOMIC[6] TCC_EA_ATOMIC_LEVEL[6] TCC_ATOMIC[7] TCC_CYCLE[7] TCC_EA_ATOMIC[7] TCC_EA_ATOMIC_LEVEL[7] TCC_ATOMIC[8] TCC_CYCLE[8] TCC_EA_ATOMIC[8] TCC_EA_ATOMIC_LEVEL[8] TCC_ATOMIC[9] TCC_CYCLE[9] TCC_EA_ATOMIC[9] TCC_EA_ATOMIC_LEVEL[9] TCC_ATOMIC[10] TCC_CYCLE[10] TCC_EA_ATOMIC[10] TCC_EA_ATOMIC_LEVEL[10] TCC_ATOMIC[11] TCC_CYCLE[11] TCC_EA_ATOMIC[11] TCC_EA_ATOMIC_LEVEL[11] TCC_ATOMIC[12] TCC_CYCLE[12] TCC_EA_ATOMIC[12] TCC_EA_ATOMIC_LEVEL[12] TCC_ATOMIC[13] TCC_CYCLE[13] TCC_EA_ATOMIC[13] TCC_EA_ATOMIC_LEVEL[13] TCC_ATOMIC[14] TCC_CYCLE[14] TCC_EA_ATOMIC[14] TCC_EA_ATOMIC_LEVEL[14] TCC_ATOMIC[15] TCC_CYCLE[15] TCC_EA_ATOMIC[15] TCC_EA_ATOMIC_LEVEL[15] TCC_ATOMIC[16] TCC_CYCLE[16] TCC_EA_ATOMIC[16] TCC_EA_ATOMIC_LEVEL[16] TCC_ATOMIC[17] TCC_CYCLE[17] TCC_EA_ATOMIC[17] TCC_EA_ATOMIC_LEVEL[17] TCC_ATOMIC[18] TCC_CYCLE[18] TCC_EA_ATOMIC[18] TCC_EA_ATOMIC_LEVEL[18] TCC_ATOMIC[19] TCC_CYCLE[19] TCC_EA_ATOMIC[19] TCC_EA_ATOMIC_LEVEL[19] TCC_ATOMIC[20] TCC_CYCLE[20] TCC_EA_ATOMIC[20] TCC_EA_ATOMIC_LEVEL[20] TCC_ATOMIC[21] TCC_CYCLE[21] TCC_EA_ATOMIC[21] TCC_EA_ATOMIC_LEVEL[21] TCC_ATOMIC[22] TCC_CYCLE[22] TCC_EA_ATOMIC[22] TCC_EA_ATOMIC_LEVEL[22] TCC_ATOMIC[23] TCC_CYCLE[23] TCC_EA_ATOMIC[23] TCC_EA_ATOMIC_LEVEL[23] TCC_ATOMIC[24] TCC_CYCLE[24] TCC_EA_ATOMIC[24] TCC_EA_ATOMIC_LEVEL[24] TCC_ATOMIC[25] TCC_CYCLE[25] TCC_EA_ATOMIC[25] TCC_EA_ATOMIC_LEVEL[25] TCC_ATOMIC[26] TCC_CYCLE[26] TCC_EA_ATOMIC[26] TCC_EA_ATOMIC_LEVEL[26] TCC_ATOMIC[27] TCC_CYCLE[27] TCC_EA_ATOMIC[27] TCC_EA_ATOMIC_LEVEL[27] TCC_ATOMIC[28] TCC_CYCLE[28] TCC_EA_ATOMIC[28] TCC_EA_ATOMIC_LEVEL[28] TCC_ATOMIC[29] TCC_CYCLE[29] TCC_EA_ATOMIC[29] TCC_EA_ATOMIC_LEVEL[29] TCC_ATOMIC[30] TCC_CYCLE[30] TCC_EA_ATOMIC[30] TCC_EA_ATOMIC_LEVEL[30] TCC_ATOMIC[31] TCC_CYCLE[31] TCC_EA_ATOMIC[31] TCC_EA_ATOMIC_LEVEL[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_EA_RDREQ[0] TCC_EA_RDREQ_32B[0] TCC_EA_RDREQ_DRAM_CREDIT_STALL[0] TCC_EA_RDREQ_GMI_CREDIT_STALL[0] TCC_EA_RDREQ[1] TCC_EA_RDREQ_32B[1] TCC_EA_RDREQ_DRAM_CREDIT_STALL[1] TCC_EA_RDREQ_GMI_CREDIT_STALL[1] TCC_EA_RDREQ[2] TCC_EA_RDREQ_32B[2] TCC_EA_RDREQ_DRAM_CREDIT_STALL[2] TCC_EA_RDREQ_GMI_CREDIT_STALL[2] TCC_EA_RDREQ[3] TCC_EA_RDREQ_32B[3] TCC_EA_RDREQ_DRAM_CREDIT_STALL[3] TCC_EA_RDREQ_GMI_CREDIT_STALL[3] TCC_EA_RDREQ[4] TCC_EA_RDREQ_32B[4] TCC_EA_RDREQ_DRAM_CREDIT_STALL[4] TCC_EA_RDREQ_GMI_CREDIT_STALL[4] TCC_EA_RDREQ[5] TCC_EA_RDREQ_32B[5] TCC_EA_RDREQ_DRAM_CREDIT_STALL[5] TCC_EA_RDREQ_GMI_CREDIT_STALL[5] TCC_EA_RDREQ[6] TCC_EA_RDREQ_32B[6] TCC_EA_RDREQ_DRAM_CREDIT_STALL[6] TCC_EA_RDREQ_GMI_CREDIT_STALL[6] TCC_EA_RDREQ[7] TCC_EA_RDREQ_32B[7] TCC_EA_RDREQ_DRAM_CREDIT_STALL[7] TCC_EA_RDREQ_GMI_CREDIT_STALL[7] TCC_EA_RDREQ[8] TCC_EA_RDREQ_32B[8] TCC_EA_RDREQ_DRAM_CREDIT_STALL[8] TCC_EA_RDREQ_GMI_CREDIT_STALL[8] TCC_EA_RDREQ[9] TCC_EA_RDREQ_32B[9] TCC_EA_RDREQ_DRAM_CREDIT_STALL[9] TCC_EA_RDREQ_GMI_CREDIT_STALL[9] TCC_EA_RDREQ[10] TCC_EA_RDREQ_32B[10] TCC_EA_RDREQ_DRAM_CREDIT_STALL[10] TCC_EA_RDREQ_GMI_CREDIT_STALL[10] TCC_EA_RDREQ[11] TCC_EA_RDREQ_32B[11] TCC_EA_RDREQ_DRAM_CREDIT_STALL[11] TCC_EA_RDREQ_GMI_CREDIT_STALL[11] TCC_EA_RDREQ[12] TCC_EA_RDREQ_32B[12] TCC_EA_RDREQ_DRAM_CREDIT_STALL[12] TCC_EA_RDREQ_GMI_CREDIT_STALL[12] TCC_EA_RDREQ[13] TCC_EA_RDREQ_32B[13] TCC_EA_RDREQ_DRAM_CREDIT_STALL[13] TCC_EA_RDREQ_GMI_CREDIT_STALL[13] TCC_EA_RDREQ[14] TCC_EA_RDREQ_32B[14] TCC_EA_RDREQ_DRAM_CREDIT_STALL[14] TCC_EA_RDREQ_GMI_CREDIT_STALL[14] TCC_EA_RDREQ[15] TCC_EA_RDREQ_32B[15] TCC_EA_RDREQ_DRAM_CREDIT_STALL[15] TCC_EA_RDREQ_GMI_CREDIT_STALL[15] TCC_EA_RDREQ[16] TCC_EA_RDREQ_32B[16] TCC_EA_RDREQ_DRAM_CREDIT_STALL[16] TCC_EA_RDREQ_GMI_CREDIT_STALL[16] TCC_EA_RDREQ[17] TCC_EA_RDREQ_32B[17] TCC_EA_RDREQ_DRAM_CREDIT_STALL[17] TCC_EA_RDREQ_GMI_CREDIT_STALL[17] TCC_EA_RDREQ[18] TCC_EA_RDREQ_32B[18] TCC_EA_RDREQ_DRAM_CREDIT_STALL[18] TCC_EA_RDREQ_GMI_CREDIT_STALL[18] TCC_EA_RDREQ[19] TCC_EA_RDREQ_32B[19] TCC_EA_RDREQ_DRAM_CREDIT_STALL[19] TCC_EA_RDREQ_GMI_CREDIT_STALL[19] TCC_EA_RDREQ[20] TCC_EA_RDREQ_32B[20] TCC_EA_RDREQ_DRAM_CREDIT_STALL[20] TCC_EA_RDREQ_GMI_CREDIT_STALL[20] TCC_EA_RDREQ[21] TCC_EA_RDREQ_32B[21] TCC_EA_RDREQ_DRAM_CREDIT_STALL[21] TCC_EA_RDREQ_GMI_CREDIT_STALL[21] TCC_EA_RDREQ[22] TCC_EA_RDREQ_32B[22] TCC_EA_RDREQ_DRAM_CREDIT_STALL[22] TCC_EA_RDREQ_GMI_CREDIT_STALL[22] TCC_EA_RDREQ[23] TCC_EA_RDREQ_32B[23] TCC_EA_RDREQ_DRAM_CREDIT_STALL[23] TCC_EA_RDREQ_GMI_CREDIT_STALL[23] TCC_EA_RDREQ[24] TCC_EA_RDREQ_32B[24] TCC_EA_RDREQ_DRAM_CREDIT_STALL[24] TCC_EA_RDREQ_GMI_CREDIT_STALL[24] TCC_EA_RDREQ[25] TCC_EA_RDREQ_32B[25] TCC_EA_RDREQ_DRAM_CREDIT_STALL[25] TCC_EA_RDREQ_GMI_CREDIT_STALL[25] TCC_EA_RDREQ[26] TCC_EA_RDREQ_32B[26] TCC_EA_RDREQ_DRAM_CREDIT_STALL[26] TCC_EA_RDREQ_GMI_CREDIT_STALL[26] TCC_EA_RDREQ[27] TCC_EA_RDREQ_32B[27] TCC_EA_RDREQ_DRAM_CREDIT_STALL[27] TCC_EA_RDREQ_GMI_CREDIT_STALL[27] TCC_EA_RDREQ[28] TCC_EA_RDREQ_32B[28] TCC_EA_RDREQ_DRAM_CREDIT_STALL[28] TCC_EA_RDREQ_GMI_CREDIT_STALL[28] TCC_EA_RDREQ[29] TCC_EA_RDREQ_32B[29] TCC_EA_RDREQ_DRAM_CREDIT_STALL[29] TCC_EA_RDREQ_GMI_CREDIT_STALL[29] TCC_EA_RDREQ[30] TCC_EA_RDREQ_32B[30] TCC_EA_RDREQ_DRAM_CREDIT_STALL[30] TCC_EA_RDREQ_GMI_CREDIT_STALL[30] TCC_EA_RDREQ[31] TCC_EA_RDREQ_32B[31] TCC_EA_RDREQ_DRAM_CREDIT_STALL[31] TCC_EA_RDREQ_GMI_CREDIT_STALL[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_EA_RDREQ_IO_CREDIT_STALL[0] TCC_EA_RDREQ_LEVEL[0] TCC_EA_WRREQ[0] TCC_EA_WRREQ_64B[0] TCC_EA_RDREQ_IO_CREDIT_STALL[1] TCC_EA_RDREQ_LEVEL[1] TCC_EA_WRREQ[1] TCC_EA_WRREQ_64B[1] TCC_EA_RDREQ_IO_CREDIT_STALL[2] TCC_EA_RDREQ_LEVEL[2] TCC_EA_WRREQ[2] TCC_EA_WRREQ_64B[2] TCC_EA_RDREQ_IO_CREDIT_STALL[3] TCC_EA_RDREQ_LEVEL[3] TCC_EA_WRREQ[3] TCC_EA_WRREQ_64B[3] TCC_EA_RDREQ_IO_CREDIT_STALL[4] TCC_EA_RDREQ_LEVEL[4] TCC_EA_WRREQ[4] TCC_EA_WRREQ_64B[4] TCC_EA_RDREQ_IO_CREDIT_STALL[5] TCC_EA_RDREQ_LEVEL[5] TCC_EA_WRREQ[5] TCC_EA_WRREQ_64B[5] TCC_EA_RDREQ_IO_CREDIT_STALL[6] TCC_EA_RDREQ_LEVEL[6] TCC_EA_WRREQ[6] TCC_EA_WRREQ_64B[6] TCC_EA_RDREQ_IO_CREDIT_STALL[7] TCC_EA_RDREQ_LEVEL[7] TCC_EA_WRREQ[7] TCC_EA_WRREQ_64B[7] TCC_EA_RDREQ_IO_CREDIT_STALL[8] TCC_EA_RDREQ_LEVEL[8] TCC_EA_WRREQ[8] TCC_EA_WRREQ_64B[8] TCC_EA_RDREQ_IO_CREDIT_STALL[9] TCC_EA_RDREQ_LEVEL[9] TCC_EA_WRREQ[9] TCC_EA_WRREQ_64B[9] TCC_EA_RDREQ_IO_CREDIT_STALL[10] TCC_EA_RDREQ_LEVEL[10] TCC_EA_WRREQ[10] TCC_EA_WRREQ_64B[10] TCC_EA_RDREQ_IO_CREDIT_STALL[11] TCC_EA_RDREQ_LEVEL[11] TCC_EA_WRREQ[11] TCC_EA_WRREQ_64B[11] TCC_EA_RDREQ_IO_CREDIT_STALL[12] TCC_EA_RDREQ_LEVEL[12] TCC_EA_WRREQ[12] TCC_EA_WRREQ_64B[12] TCC_EA_RDREQ_IO_CREDIT_STALL[13] TCC_EA_RDREQ_LEVEL[13] TCC_EA_WRREQ[13] TCC_EA_WRREQ_64B[13] TCC_EA_RDREQ_IO_CREDIT_STALL[14] TCC_EA_RDREQ_LEVEL[14] TCC_EA_WRREQ[14] TCC_EA_WRREQ_64B[14] TCC_EA_RDREQ_IO_CREDIT_STALL[15] TCC_EA_RDREQ_LEVEL[15] TCC_EA_WRREQ[15] TCC_EA_WRREQ_64B[15] TCC_EA_RDREQ_IO_CREDIT_STALL[16] TCC_EA_RDREQ_LEVEL[16] TCC_EA_WRREQ[16] TCC_EA_WRREQ_64B[16] TCC_EA_RDREQ_IO_CREDIT_STALL[17] TCC_EA_RDREQ_LEVEL[17] TCC_EA_WRREQ[17] TCC_EA_WRREQ_64B[17] TCC_EA_RDREQ_IO_CREDIT_STALL[18] TCC_EA_RDREQ_LEVEL[18] TCC_EA_WRREQ[18] TCC_EA_WRREQ_64B[18] TCC_EA_RDREQ_IO_CREDIT_STALL[19] TCC_EA_RDREQ_LEVEL[19] TCC_EA_WRREQ[19] TCC_EA_WRREQ_64B[19] TCC_EA_RDREQ_IO_CREDIT_STALL[20] TCC_EA_RDREQ_LEVEL[20] TCC_EA_WRREQ[20] TCC_EA_WRREQ_64B[20] TCC_EA_RDREQ_IO_CREDIT_STALL[21] TCC_EA_RDREQ_LEVEL[21] TCC_EA_WRREQ[21] TCC_EA_WRREQ_64B[21] TCC_EA_RDREQ_IO_CREDIT_STALL[22] TCC_EA_RDREQ_LEVEL[22] TCC_EA_WRREQ[22] TCC_EA_WRREQ_64B[22] TCC_EA_RDREQ_IO_CREDIT_STALL[23] TCC_EA_RDREQ_LEVEL[23] TCC_EA_WRREQ[23] TCC_EA_WRREQ_64B[23] TCC_EA_RDREQ_IO_CREDIT_STALL[24] TCC_EA_RDREQ_LEVEL[24] TCC_EA_WRREQ[24] TCC_EA_WRREQ_64B[24] TCC_EA_RDREQ_IO_CREDIT_STALL[25] TCC_EA_RDREQ_LEVEL[25] TCC_EA_WRREQ[25] TCC_EA_WRREQ_64B[25] TCC_EA_RDREQ_IO_CREDIT_STALL[26] TCC_EA_RDREQ_LEVEL[26] TCC_EA_WRREQ[26] TCC_EA_WRREQ_64B[26] TCC_EA_RDREQ_IO_CREDIT_STALL[27] TCC_EA_RDREQ_LEVEL[27] TCC_EA_WRREQ[27] TCC_EA_WRREQ_64B[27] TCC_EA_RDREQ_IO_CREDIT_STALL[28] TCC_EA_RDREQ_LEVEL[28] TCC_EA_WRREQ[28] TCC_EA_WRREQ_64B[28] TCC_EA_RDREQ_IO_CREDIT_STALL[29] TCC_EA_RDREQ_LEVEL[29] TCC_EA_WRREQ[29] TCC_EA_WRREQ_64B[29] TCC_EA_RDREQ_IO_CREDIT_STALL[30] TCC_EA_RDREQ_LEVEL[30] TCC_EA_WRREQ[30] TCC_EA_WRREQ_64B[30] TCC_EA_RDREQ_IO_CREDIT_STALL[31] TCC_EA_RDREQ_LEVEL[31] TCC_EA_WRREQ[31] TCC_EA_WRREQ_64B[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_EA_WRREQ_DRAM_CREDIT_STALL[0] TCC_EA_WRREQ_GMI_CREDIT_STALL[0] TCC_EA_WRREQ_IO_CREDIT_STALL[0] TCC_EA_WRREQ_LEVEL[0] TCC_EA_WRREQ_DRAM_CREDIT_STALL[1] TCC_EA_WRREQ_GMI_CREDIT_STALL[1] TCC_EA_WRREQ_IO_CREDIT_STALL[1] TCC_EA_WRREQ_LEVEL[1] TCC_EA_WRREQ_DRAM_CREDIT_STALL[2] TCC_EA_WRREQ_GMI_CREDIT_STALL[2] TCC_EA_WRREQ_IO_CREDIT_STALL[2] TCC_EA_WRREQ_LEVEL[2] TCC_EA_WRREQ_DRAM_CREDIT_STALL[3] TCC_EA_WRREQ_GMI_CREDIT_STALL[3] TCC_EA_WRREQ_IO_CREDIT_STALL[3] TCC_EA_WRREQ_LEVEL[3] TCC_EA_WRREQ_DRAM_CREDIT_STALL[4] TCC_EA_WRREQ_GMI_CREDIT_STALL[4] TCC_EA_WRREQ_IO_CREDIT_STALL[4] TCC_EA_WRREQ_LEVEL[4] TCC_EA_WRREQ_DRAM_CREDIT_STALL[5] TCC_EA_WRREQ_GMI_CREDIT_STALL[5] TCC_EA_WRREQ_IO_CREDIT_STALL[5] TCC_EA_WRREQ_LEVEL[5] TCC_EA_WRREQ_DRAM_CREDIT_STALL[6] TCC_EA_WRREQ_GMI_CREDIT_STALL[6] TCC_EA_WRREQ_IO_CREDIT_STALL[6] TCC_EA_WRREQ_LEVEL[6] TCC_EA_WRREQ_DRAM_CREDIT_STALL[7] TCC_EA_WRREQ_GMI_CREDIT_STALL[7] TCC_EA_WRREQ_IO_CREDIT_STALL[7] TCC_EA_WRREQ_LEVEL[7] TCC_EA_WRREQ_DRAM_CREDIT_STALL[8] TCC_EA_WRREQ_GMI_CREDIT_STALL[8] TCC_EA_WRREQ_IO_CREDIT_STALL[8] TCC_EA_WRREQ_LEVEL[8] TCC_EA_WRREQ_DRAM_CREDIT_STALL[9] TCC_EA_WRREQ_GMI_CREDIT_STALL[9] TCC_EA_WRREQ_IO_CREDIT_STALL[9] TCC_EA_WRREQ_LEVEL[9] TCC_EA_WRREQ_DRAM_CREDIT_STALL[10] TCC_EA_WRREQ_GMI_CREDIT_STALL[10] TCC_EA_WRREQ_IO_CREDIT_STALL[10] TCC_EA_WRREQ_LEVEL[10] TCC_EA_WRREQ_DRAM_CREDIT_STALL[11] TCC_EA_WRREQ_GMI_CREDIT_STALL[11] TCC_EA_WRREQ_IO_CREDIT_STALL[11] TCC_EA_WRREQ_LEVEL[11] TCC_EA_WRREQ_DRAM_CREDIT_STALL[12] TCC_EA_WRREQ_GMI_CREDIT_STALL[12] TCC_EA_WRREQ_IO_CREDIT_STALL[12] TCC_EA_WRREQ_LEVEL[12] TCC_EA_WRREQ_DRAM_CREDIT_STALL[13] TCC_EA_WRREQ_GMI_CREDIT_STALL[13] TCC_EA_WRREQ_IO_CREDIT_STALL[13] TCC_EA_WRREQ_LEVEL[13] TCC_EA_WRREQ_DRAM_CREDIT_STALL[14] TCC_EA_WRREQ_GMI_CREDIT_STALL[14] TCC_EA_WRREQ_IO_CREDIT_STALL[14] TCC_EA_WRREQ_LEVEL[14] TCC_EA_WRREQ_DRAM_CREDIT_STALL[15] TCC_EA_WRREQ_GMI_CREDIT_STALL[15] TCC_EA_WRREQ_IO_CREDIT_STALL[15] TCC_EA_WRREQ_LEVEL[15] TCC_EA_WRREQ_DRAM_CREDIT_STALL[16] TCC_EA_WRREQ_GMI_CREDIT_STALL[16] TCC_EA_WRREQ_IO_CREDIT_STALL[16] TCC_EA_WRREQ_LEVEL[16] TCC_EA_WRREQ_DRAM_CREDIT_STALL[17] TCC_EA_WRREQ_GMI_CREDIT_STALL[17] TCC_EA_WRREQ_IO_CREDIT_STALL[17] TCC_EA_WRREQ_LEVEL[17] TCC_EA_WRREQ_DRAM_CREDIT_STALL[18] TCC_EA_WRREQ_GMI_CREDIT_STALL[18] TCC_EA_WRREQ_IO_CREDIT_STALL[18] TCC_EA_WRREQ_LEVEL[18] TCC_EA_WRREQ_DRAM_CREDIT_STALL[19] TCC_EA_WRREQ_GMI_CREDIT_STALL[19] TCC_EA_WRREQ_IO_CREDIT_STALL[19] TCC_EA_WRREQ_LEVEL[19] TCC_EA_WRREQ_DRAM_CREDIT_STALL[20] TCC_EA_WRREQ_GMI_CREDIT_STALL[20] TCC_EA_WRREQ_IO_CREDIT_STALL[20] TCC_EA_WRREQ_LEVEL[20] TCC_EA_WRREQ_DRAM_CREDIT_STALL[21] TCC_EA_WRREQ_GMI_CREDIT_STALL[21] TCC_EA_WRREQ_IO_CREDIT_STALL[21] TCC_EA_WRREQ_LEVEL[21] TCC_EA_WRREQ_DRAM_CREDIT_STALL[22] TCC_EA_WRREQ_GMI_CREDIT_STALL[22] TCC_EA_WRREQ_IO_CREDIT_STALL[22] TCC_EA_WRREQ_LEVEL[22] TCC_EA_WRREQ_DRAM_CREDIT_STALL[23] TCC_EA_WRREQ_GMI_CREDIT_STALL[23] TCC_EA_WRREQ_IO_CREDIT_STALL[23] TCC_EA_WRREQ_LEVEL[23] TCC_EA_WRREQ_DRAM_CREDIT_STALL[24] TCC_EA_WRREQ_GMI_CREDIT_STALL[24] TCC_EA_WRREQ_IO_CREDIT_STALL[24] TCC_EA_WRREQ_LEVEL[24] TCC_EA_WRREQ_DRAM_CREDIT_STALL[25] TCC_EA_WRREQ_GMI_CREDIT_STALL[25] TCC_EA_WRREQ_IO_CREDIT_STALL[25] TCC_EA_WRREQ_LEVEL[25] TCC_EA_WRREQ_DRAM_CREDIT_STALL[26] TCC_EA_WRREQ_GMI_CREDIT_STALL[26] TCC_EA_WRREQ_IO_CREDIT_STALL[26] TCC_EA_WRREQ_LEVEL[26] TCC_EA_WRREQ_DRAM_CREDIT_STALL[27] TCC_EA_WRREQ_GMI_CREDIT_STALL[27] TCC_EA_WRREQ_IO_CREDIT_STALL[27] TCC_EA_WRREQ_LEVEL[27] TCC_EA_WRREQ_DRAM_CREDIT_STALL[28] TCC_EA_WRREQ_GMI_CREDIT_STALL[28] TCC_EA_WRREQ_IO_CREDIT_STALL[28] TCC_EA_WRREQ_LEVEL[28] TCC_EA_WRREQ_DRAM_CREDIT_STALL[29] TCC_EA_WRREQ_GMI_CREDIT_STALL[29] TCC_EA_WRREQ_IO_CREDIT_STALL[29] TCC_EA_WRREQ_LEVEL[29] TCC_EA_WRREQ_DRAM_CREDIT_STALL[30] TCC_EA_WRREQ_GMI_CREDIT_STALL[30] TCC_EA_WRREQ_IO_CREDIT_STALL[30] TCC_EA_WRREQ_LEVEL[30] TCC_EA_WRREQ_DRAM_CREDIT_STALL[31] TCC_EA_WRREQ_GMI_CREDIT_STALL[31] TCC_EA_WRREQ_IO_CREDIT_STALL[31] TCC_EA_WRREQ_LEVEL[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_HIT[0] TCC_MISS[0] TCC_READ[0] TCC_REQ[0] TCC_HIT[1] TCC_MISS[1] TCC_READ[1] TCC_REQ[1] TCC_HIT[2] TCC_MISS[2] TCC_READ[2] TCC_REQ[2] TCC_HIT[3] TCC_MISS[3] TCC_READ[3] TCC_REQ[3] TCC_HIT[4] TCC_MISS[4] TCC_READ[4] TCC_REQ[4] TCC_HIT[5] TCC_MISS[5] TCC_READ[5] TCC_REQ[5] TCC_HIT[6] TCC_MISS[6] TCC_READ[6] TCC_REQ[6] TCC_HIT[7] TCC_MISS[7] TCC_READ[7] TCC_REQ[7] TCC_HIT[8] TCC_MISS[8] TCC_READ[8] TCC_REQ[8] TCC_HIT[9] TCC_MISS[9] TCC_READ[9] TCC_REQ[9] TCC_HIT[10] TCC_MISS[10] TCC_READ[10] TCC_REQ[10] TCC_HIT[11] TCC_MISS[11] TCC_READ[11] TCC_REQ[11] TCC_HIT[12] TCC_MISS[12] TCC_READ[12] TCC_REQ[12] TCC_HIT[13] TCC_MISS[13] TCC_READ[13] TCC_REQ[13] TCC_HIT[14] TCC_MISS[14] TCC_READ[14] TCC_REQ[14] TCC_HIT[15] TCC_MISS[15] TCC_READ[15] TCC_REQ[15] TCC_HIT[16] TCC_MISS[16] TCC_READ[16] TCC_REQ[16] TCC_HIT[17] TCC_MISS[17] TCC_READ[17] TCC_REQ[17] TCC_HIT[18] TCC_MISS[18] TCC_READ[18] TCC_REQ[18] TCC_HIT[19] TCC_MISS[19] TCC_READ[19] TCC_REQ[19] TCC_HIT[20] TCC_MISS[20] TCC_READ[20] TCC_REQ[20] TCC_HIT[21] TCC_MISS[21] TCC_READ[21] TCC_REQ[21] TCC_HIT[22] TCC_MISS[22] TCC_READ[22] TCC_REQ[22] TCC_HIT[23] TCC_MISS[23] TCC_READ[23] TCC_REQ[23] TCC_HIT[24] TCC_MISS[24] TCC_READ[24] TCC_REQ[24] TCC_HIT[25] TCC_MISS[25] TCC_READ[25] TCC_REQ[25] TCC_HIT[26] TCC_MISS[26] TCC_READ[26] TCC_REQ[26] TCC_HIT[27] TCC_MISS[27] TCC_READ[27] TCC_REQ[27] TCC_HIT[28] TCC_MISS[28] TCC_READ[28] TCC_REQ[28] TCC_HIT[29] TCC_MISS[29] TCC_READ[29] TCC_REQ[29] TCC_HIT[30] TCC_MISS[30] TCC_READ[30] TCC_REQ[30] TCC_HIT[31] TCC_MISS[31] TCC_READ[31] TCC_REQ[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_RW_REQ[0] TCC_TOO_MANY_EA_WRREQS_STALL[0] TCC_WRITE[0] TCC_RW_REQ[1] TCC_TOO_MANY_EA_WRREQS_STALL[1] TCC_WRITE[1] TCC_RW_REQ[2] TCC_TOO_MANY_EA_WRREQS_STALL[2] TCC_WRITE[2] TCC_RW_REQ[3] TCC_TOO_MANY_EA_WRREQS_STALL[3] TCC_WRITE[3] TCC_RW_REQ[4] TCC_TOO_MANY_EA_WRREQS_STALL[4] TCC_WRITE[4] TCC_RW_REQ[5] TCC_TOO_MANY_EA_WRREQS_STALL[5] TCC_WRITE[5] TCC_RW_REQ[6] TCC_TOO_MANY_EA_WRREQS_STALL[6] TCC_WRITE[6] TCC_RW_REQ[7] TCC_TOO_MANY_EA_WRREQS_STALL[7] TCC_WRITE[7] TCC_RW_REQ[8] TCC_TOO_MANY_EA_WRREQS_STALL[8] TCC_WRITE[8] TCC_RW_REQ[9] TCC_TOO_MANY_EA_WRREQS_STALL[9] TCC_WRITE[9] TCC_RW_REQ[10] TCC_TOO_MANY_EA_WRREQS_STALL[10] TCC_WRITE[10] TCC_RW_REQ[11] TCC_TOO_MANY_EA_WRREQS_STALL[11] TCC_WRITE[11] TCC_RW_REQ[12] TCC_TOO_MANY_EA_WRREQS_STALL[12] TCC_WRITE[12] TCC_RW_REQ[13] TCC_TOO_MANY_EA_WRREQS_STALL[13] TCC_WRITE[13] TCC_RW_REQ[14] TCC_TOO_MANY_EA_WRREQS_STALL[14] TCC_WRITE[14] TCC_RW_REQ[15] TCC_TOO_MANY_EA_WRREQS_STALL[15] TCC_WRITE[15] TCC_RW_REQ[16] TCC_TOO_MANY_EA_WRREQS_STALL[16] TCC_WRITE[16] TCC_RW_REQ[17] TCC_TOO_MANY_EA_WRREQS_STALL[17] TCC_WRITE[17] TCC_RW_REQ[18] TCC_TOO_MANY_EA_WRREQS_STALL[18] TCC_WRITE[18] TCC_RW_REQ[19] TCC_TOO_MANY_EA_WRREQS_STALL[19] TCC_WRITE[19] TCC_RW_REQ[20] TCC_TOO_MANY_EA_WRREQS_STALL[20] TCC_WRITE[20] TCC_RW_REQ[21] TCC_TOO_MANY_EA_WRREQS_STALL[21] TCC_WRITE[21] TCC_RW_REQ[22] TCC_TOO_MANY_EA_WRREQS_STALL[22] TCC_WRITE[22] TCC_RW_REQ[23] TCC_TOO_MANY_EA_WRREQS_STALL[23] TCC_WRITE[23] TCC_RW_REQ[24] TCC_TOO_MANY_EA_WRREQS_STALL[24] TCC_WRITE[24] TCC_RW_REQ[25] TCC_TOO_MANY_EA_WRREQS_STALL[25] TCC_WRITE[25] TCC_RW_REQ[26] TCC_TOO_MANY_EA_WRREQS_STALL[26] TCC_WRITE[26] TCC_RW_REQ[27] TCC_TOO_MANY_EA_WRREQS_STALL[27] TCC_WRITE[27] TCC_RW_REQ[28] TCC_TOO_MANY_EA_WRREQS_STALL[28] TCC_WRITE[28] TCC_RW_REQ[29] TCC_TOO_MANY_EA_WRREQS_STALL[29] TCC_WRITE[29] TCC_RW_REQ[30] TCC_TOO_MANY_EA_WRREQS_STALL[30] TCC_WRITE[30] TCC_RW_REQ[31] TCC_TOO_MANY_EA_WRREQS_STALL[31] TCC_WRITE[31]
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_VALU_MUL_F32 SQ_INSTS_VALU_FMA_F32 SQ_INSTS_VALU_TRANS_F32 SQ_INSTS_VALU_ADD_F64 SQ_INSTS_VALU_MUL_F64 SQ_INSTS_VALU_FMA_F64 SQ_INSTS_VALU_TRANS_F64 SQ_INSTS_VALU_INT32 TCP_VOLATILE_sum TCP_TOTAL_ACCESSES_sum TCP_TOTAL_READ_sum TCP_TOTAL_WRITE_sum TA_BUFFER_ATOMIC_WAVEFRONTS_sum TA_BUFFER_TOTAL_CYCLES_sum TD_ATOMIC_WAVEFRONT_sum TD_STORE_WAVEFRONT_sum SPI_RA_REQ_NO_ALLOC SPI_RA_REQ_NO_ALLOC_CSN CPC_CPC_STAT_STALL CPC_UTCL1_STALL_ON_TRANSLATION CPF_CPF_STAT_IDLE CPF_CPF_TCIU_IDLE TCC_REQ_sum TCC_STREAMING_REQ_sum TCC_HIT_sum TCC_MISS_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_VALU_INT64 SQ_INSTS_SMEM SQ_INSTS_FLAT SQ_INSTS_LDS SQ_INSTS_GDS SQ_INSTS_EXP_GDS SQ_INSTS_BRANCH SQ_INSTS_SENDMSG TCP_TOTAL_ATOMIC_WITH_RET_sum TCP_TOTAL_ATOMIC_WITHOUT_RET_sum TCP_TOTAL_WRITEBACK_INVALIDATES_sum TCP_TOTAL_CACHE_ACCESSES_sum TA_BUFFER_COALESCED_READ_CYCLES_sum TA_BUFFER_COALESCED_WRITE_CYCLES_sum TD_COALESCABLE_WAVEFRONT_sum SPI_RA_RES_STALL_CSN SPI_RA_TMP_STALL_CSN CPC_CPC_UTCL2IU_BUSY CPC_CPC_UTCL2IU_IDLE CPF_CMP_UTCL1_STALL_ON_TRANSLATION TCC_READ_sum TCC_WRITE_sum TCC_ATOMIC_sum TCC_WRITEBACK_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_WAVE_CYCLES SQ_WAIT_ANY SQ_WAIT_INST_ANY SQ_ACTIVE_INST_ANY SQ_BUSY_CU_CYCLES SQ_ACTIVE_INST_VMEM SQ_ACTIVE_INST_LDS SQ_ACTIVE_INST_VALU TCP_UTCL1_TRANSLATION_MISS_sum TCP_UTCL1_TRANSLATION_HIT_sum TCP_UTCL1_PERMISSION_MISS_sum TCP_UTCL1_REQUEST_sum TA_ADDR_STALLED_BY_TC_CYCLES_sum TA_TOTAL_WAVEFRONTS_sum SPI_RA_WAVE_SIMD_FULL_CSN SPI_RA_VGPR_SIMD_FULL_CSN CPC_CPC_UTCL2IU_STALL CPC_ME1_BUSY_FOR_PACKET_DECODE TCC_EA_WRREQ_sum TCC_EA_WRREQ_64B_sum TCC_EA_WR_UNCACHED_32B_sum TCC_EA_WRREQ_DRAM_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_ACTIVE_INST_SCA SQ_ACTIVE_INST_EXP_GDS SQ_ACTIVE_INST_MISC SQ_ACTIVE_INST_FLAT SQ_INST_CYCLES_VMEM_WR SQ_INST_CYCLES_VMEM_RD SQ_INST_CYCLES_SMEM SQ_INST_CYCLES_SALU TCP_TCP_LATENCY_sum TCP_TCC_READ_REQ_LATENCY_sum TCP_TCC_WRITE_REQ_LATENCY_sum TCP_TCC_READ_REQ_sum TA_ADDR_STALLED_BY_TD_CYCLES_sum TA_DATA_STALLED_BY_TC_CYCLES_sum SPI_RA_SGPR_SIMD_FULL_CSN SPI_RA_LDS_CU_FULL_CSN CPC_ME1_DC0_SPI_BUSY TCC_EA_WRREQ_STALL_sum TCC_EA_RDREQ_sum TCC_EA_RDREQ_32B_sum TCC_EA_RD_UNCACHED_32B_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_THREAD_CYCLES_VALU SQ_IFETCH SQ_LDS_BANK_CONFLICT SQ_LDS_ADDR_CONFLICT SQ_LDS_UNALIGNED_STALL SQ_WAVES_EQ_64 SQ_WAVES_LT_64 SQ_WAVES_LT_48 TCP_TCC_WRITE_REQ_sum TCP_TCC_ATOMIC_WITH_RET_REQ_sum TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum TCP_TCC_NC_READ_REQ_sum TA_FLAT_WAVEFRONTS_sum TA_FLAT_READ_WAVEFRONTS_sum SPI_RA_BAR_CU_FULL_CSN SPI_RA_TGLIM_CU_FULL_CSN TCC_EA_RDREQ_DRAM_sum TCC_TAG_STALL_sum TCC_NORMAL_WRITEBACK_sum TCC_ALL_TC_OP_WB_WRITEBACK_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_WAVES_LT_32 SQ_WAVES_LT_16 SQ_ITEMS SQ_LDS_MEM_VIOLATIONS SQ_LDS_ATOMIC_RETURN SQ_LDS_IDX_ACTIVE SQ_WAVES_RESTORED SQ_WAVES_SAVED TCP_TCC_NC_WRITE_REQ_sum TCP_TCC_NC_ATOMIC_REQ_sum TCP_TCC_UC_READ_REQ_sum TCP_TCC_UC_WRITE_REQ_sum TA_FLAT_WRITE_WAVEFRONTS_sum TA_FLAT_ATOMIC_WAVEFRONTS_sum SPI_RA_WVLIM_STALL_CSN SPI_SWC_CSC_WR TCC_NORMAL_EVICT_sum TCC_ALL_TC_OP_INV_EVICT_sum TCC_TOO_MANY_EA_WRREQS_STALL_sum TCC_EA_ATOMIC_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_SMEM_NORM SQ_INSTS_MFMA SQ_INSTS_VALU_MFMA_I8 SQ_INSTS_VALU_MFMA_F16 SQ_INSTS_VALU_MFMA_BF16 SQ_INSTS_VALU_MFMA_F32 SQ_INSTS_VALU_MFMA_F64 SQ_VALU_MFMA_BUSY_CYCLES TCP_TCC_UC_ATOMIC_REQ_sum TCP_TCC_CC_READ_REQ_sum TCP_TCC_CC_WRITE_REQ_sum TCP_TCC_CC_ATOMIC_REQ_sum SPI_VWC_CSC_WR SPI_RA_BULKY_CU_FULL_CSN TCC_EA_RDREQ_LEVEL_sum TCC_EA_WRREQ_LEVEL_sum TCC_EA_ATOMIC_LEVEL_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_FLAT_LDS_ONLY SQ_INSTS_VALU_MFMA_MOPS_I8 SQ_INSTS_VALU_MFMA_MOPS_F16 SQ_INSTS_VALU_MFMA_MOPS_BF16 SQ_INSTS_VALU_MFMA_MOPS_F32 SQ_INSTS_VALU_MFMA_MOPS_F64 SQC_TC_INST_REQ SQC_TC_DATA_READ_REQ TCP_TCC_RW_READ_REQ_sum TCP_TCC_RW_WRITE_REQ_sum TCP_TCC_RW_ATOMIC_REQ_sum TCP_PENDING_STALL_CYCLES_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc:
gpu:
range:
kernel:
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2
1 Dispatch_ID Kernel_Name GPU_ID
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
device,HBMBw,HBMBwLow,hbmBwHigh,L2Bw,L2BwLow,L2BwHigh,L1Bw,L1BwLow,L1BwHigh,LDSBw,LDSBwLow,LDSBwHigh,FP32Flops,FP32FlopsLow,FP32FlopsHigh,FP64Flops,FP64FlopsLow,FP64FlopsHigh,MFMABF16Flops,MFMABF16FlopsLow,MFMABF16FlopsHigh,MFMAF16Flops,MFMAF16FlopsLow,MFMAF16FlopsHigh,MFMAF32Flops,MFMAF32FlopsLow,MFMAF32FlopsHigh,MFMAF64Flops,MFMAF64FlopsLow,MFMAF64FlopsHigh,MFMAI8Ops,MFMAFI8OpsLow,MFMAI8OpsHigh
0,1388.7948,1388.2125,1389.3771,5016.1738,5013.2036,5019.144,9226.4229,9225.7852,9227.0605,17715.307,17712.113,17718.5,20942.453,20882.1,21002.807,20272.682,20272.182,20273.182,170487.92,170484.22,170491.62,164932.06,164926.69,164937.44,41438.844,41438.195,41439.492,41498.918,41498.344,41499.492,166413.58,165921.97,166905.19
1 device HBMBw HBMBwLow hbmBwHigh L2Bw L2BwLow L2BwHigh L1Bw L1BwLow L1BwHigh LDSBw LDSBwLow LDSBwHigh FP32Flops FP32FlopsLow FP32FlopsHigh FP64Flops FP64FlopsLow FP64FlopsHigh MFMABF16Flops MFMABF16FlopsLow MFMABF16FlopsHigh MFMAF16Flops MFMAF16FlopsLow MFMAF16FlopsHigh MFMAF32Flops MFMAF32FlopsLow MFMAF32FlopsHigh MFMAF64Flops MFMAF64FlopsLow MFMAF64FlopsHigh MFMAI8Ops MFMAFI8OpsLow MFMAI8OpsHigh
2 0 1388.7948 1388.2125 1389.3771 5016.1738 5013.2036 5019.144 9226.4229 9225.7852 9227.0605 17715.307 17712.113 17718.5 20942.453 20882.1 21002.807 20272.682 20272.182 20273.182 170487.92 170484.22 170491.62 164932.06 164926.69 164937.44 41438.844 41438.195 41439.492 41498.918 41498.344 41499.492 166413.58 165921.97 166905.19
@@ -0,0 +1,2 @@
workload_name,command,ip_blocks,timestamp,version,hostname,cpu_model,sbios,linux_distro,linux_kernel_version,amd_gpu_kernel_version,cpu_memory,gpu_memory,rocm_version,vbios,compute_partition,memory_partition,gpu_model,gpu_arch,gpu_l1,gpu_l2,cu_per_gpu,simd_per_cu,se_per_gpu,wave_size,workgroup_max_size,max_waves_per_cu,max_sclk,max_mclk,cur_sclk,cur_mclk,total_l2_chan,lds_banks_per_cu,sqc_per_gpu,pipes_per_gpu,hbm_bw,num_xcd,num_hbm_channels
path,./tests/vcopy -n 1048576 -b 256 -i 3,SQ|LDS|SQC|TA|TD|TCP|TCC|SPI|CPC|CPF|roofline,Thu 21 Mar 2024 04:16:46 PM (CDT),2,t007-002.hpcfund,AMD EPYC 7V13 64-Core Processor,American Megatrends Inc.0602,Rocky Linux 9.1 (Blue Onyx),5.14.0-162.18.1.el9_1.x86_64,,527650760,,6.0.2-115,113-D67301-059,NA,NA,MI200,gfx90a,16,8192,104,4,8,64,1024,32,1700,1600,1700,1600,32,32,56,4,1638.4,1,32
1 workload_name command ip_blocks timestamp version hostname cpu_model sbios linux_distro linux_kernel_version amd_gpu_kernel_version cpu_memory gpu_memory rocm_version vbios compute_partition memory_partition gpu_model gpu_arch gpu_l1 gpu_l2 cu_per_gpu simd_per_cu se_per_gpu wave_size workgroup_max_size max_waves_per_cu max_sclk max_mclk cur_sclk cur_mclk total_l2_chan lds_banks_per_cu sqc_per_gpu pipes_per_gpu hbm_bw num_xcd num_hbm_channels
2 path ./tests/vcopy -n 1048576 -b 256 -i 3 SQ|LDS|SQC|TA|TD|TCP|TCC|SPI|CPC|CPF|roofline Thu 21 Mar 2024 04:16:46 PM (CDT) 2 t007-002.hpcfund AMD EPYC 7V13 64-Core Processor American Megatrends Inc.0602 Rocky Linux 9.1 (Blue Onyx) 5.14.0-162.18.1.el9_1.x86_64 527650760 6.0.2-115 113-D67301-059 NA NA MI200 gfx90a 16 8192 104 4 8 64 1024 32 1700 1600 1700 1600 32 32 56 4 1638.4 1 32
@@ -0,0 +1,4 @@
Dispatch_ID,Kernel_Name,GPU_ID,queue-id,queue-index,pid,tid,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,wave_size,sig,obj,DispatchNs,Start_Timestamp,End_Timestamp,CompleteNs
0,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,0,4159385,4159385,1048576,256,0,0,8,0,16,64,0x0,0x7f7aee850ec0,1412702536482286,1412702536508356,1412702536528996,1412702536542951
1,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,2,4159385,4159385,1048576,256,0,0,8,0,16,64,0x0,0x7f7aee850ec0,1412702536540095,1412702536548036,1412702536563556,1412702536623202
2,"vecCopy(double*, double*, double*, int, int) [clone .kd]",2,0,4,4159385,4159385,1048576,256,0,0,8,0,16,64,0x0,0x7f7aee850ec0,1412702536574069,1412702536625636,1412702536642116,1412702536643421
1 Dispatch_ID Kernel_Name GPU_ID queue-id queue-index pid tid Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR wave_size sig obj DispatchNs Start_Timestamp End_Timestamp CompleteNs
2 0 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 0 4159385 4159385 1048576 256 0 0 8 0 16 64 0x0 0x7f7aee850ec0 1412702536482286 1412702536508356 1412702536528996 1412702536542951
3 1 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 2 4159385 4159385 1048576 256 0 0 8 0 16 64 0x0 0x7f7aee850ec0 1412702536540095 1412702536548036 1412702536563556 1412702536623202
4 2 vecCopy(double*, double*, double*, int, int) [clone .kd] 2 0 4 4159385 4159385 1048576 256 0 0 8 0 16 64 0x0 0x7f7aee850ec0 1412702536574069 1412702536625636 1412702536642116 1412702536643421
@@ -0,0 +1,4 @@
Dispatch_ID,GPU_ID,Queue_ID,PID,TID,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,Wave_Size,Kernel_Name,Start_Timestamp,End_Timestamp,Correlation_ID,GRBM_COUNT,GRBM_GUI_ACTIVE,SQ_WAVES,SQ_IFETCH,SQ_IFETCH_LEVEL,SQ_ACCUM_PREV_HIRES
0,11995,1,148337,148337,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843971992178,73843971999909,0,218990.0,218990.0,16384.0,65536.0,28159.0,2249984.0
1,11995,1,148337,148337,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972017897,73843972024226,0,194419.0,194419.0,16384.0,65536.0,13100.0,1048608.0
2,11995,1,148337,148337,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972039650,73843972045859,0,166313.0,166313.0,16384.0,65536.0,13087.0,1048708.0
1 Dispatch_ID GPU_ID Queue_ID PID TID Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR Wave_Size Kernel_Name Start_Timestamp End_Timestamp Correlation_ID GRBM_COUNT GRBM_GUI_ACTIVE SQ_WAVES SQ_IFETCH SQ_IFETCH_LEVEL SQ_ACCUM_PREV_HIRES
2 0 11995 1 148337 148337 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843971992178 73843971999909 0 218990.0 218990.0 16384.0 65536.0 28159.0 2249984.0
3 1 11995 1 148337 148337 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972017897 73843972024226 0 194419.0 194419.0 16384.0 65536.0 13100.0 1048608.0
4 2 11995 1 148337 148337 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972039650 73843972045859 0 166313.0 166313.0 16384.0 65536.0 13087.0 1048708.0
@@ -0,0 +1,4 @@
Dispatch_ID,GPU_ID,Queue_ID,PID,TID,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,Wave_Size,Kernel_Name,Start_Timestamp,End_Timestamp,Correlation_ID,SQ_INSTS_LDS,SQ_INST_LEVEL_LDS,SQ_ACCUM_PREV_HIRES
0,11995,1,148348,148348,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843971992178,73843971999909,0,0.0,0.0,0.0
1,11995,1,148348,148348,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972017897,73843972024226,0,0.0,0.0,0.0
2,11995,1,148348,148348,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972039650,73843972045859,0,0.0,0.0,0.0
1 Dispatch_ID GPU_ID Queue_ID PID TID Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR Wave_Size Kernel_Name Start_Timestamp End_Timestamp Correlation_ID SQ_INSTS_LDS SQ_INST_LEVEL_LDS SQ_ACCUM_PREV_HIRES
2 0 11995 1 148348 148348 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843971992178 73843971999909 0 0.0 0.0 0.0
3 1 11995 1 148348 148348 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972017897 73843972024226 0 0.0 0.0 0.0
4 2 11995 1 148348 148348 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972039650 73843972045859 0 0.0 0.0 0.0
@@ -0,0 +1,4 @@
Dispatch_ID,GPU_ID,Queue_ID,PID,TID,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,Wave_Size,Kernel_Name,Start_Timestamp,End_Timestamp,Correlation_ID,SQ_INSTS_SMEM,SQ_INST_LEVEL_SMEM,SQ_ACCUM_PREV_HIRES
0,11995,1,148359,148359,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843971992178,73843971999909,0,65536.0,359830.0,28775024.0
1,11995,1,148359,148359,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972017897,73843972024226,0,65536.0,279626.0,22368848.0
2,11995,1,148359,148359,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972039650,73843972045859,0,65536.0,212150.0,16965480.0
1 Dispatch_ID GPU_ID Queue_ID PID TID Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR Wave_Size Kernel_Name Start_Timestamp End_Timestamp Correlation_ID SQ_INSTS_SMEM SQ_INST_LEVEL_SMEM SQ_ACCUM_PREV_HIRES
2 0 11995 1 148359 148359 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843971992178 73843971999909 0 65536.0 359830.0 28775024.0
3 1 11995 1 148359 148359 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972017897 73843972024226 0 65536.0 279626.0 22368848.0
4 2 11995 1 148359 148359 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972039650 73843972045859 0 65536.0 212150.0 16965480.0
@@ -0,0 +1,4 @@
Dispatch_ID,GPU_ID,Queue_ID,PID,TID,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,Wave_Size,Kernel_Name,Start_Timestamp,End_Timestamp,Correlation_ID,SQ_INSTS_VMEM,SQ_INST_LEVEL_VMEM,SQ_ACCUM_PREV_HIRES
0,11995,1,148370,148370,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843971992178,73843971999909,0,32768.0,540654.0,43241432.0
1,11995,1,148370,148370,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972017897,73843972024226,0,32768.0,423717.0,33892596.0
2,11995,1,148370,148370,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972039650,73843972045859,0,32768.0,421757.0,33736452.0
1 Dispatch_ID GPU_ID Queue_ID PID TID Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR Wave_Size Kernel_Name Start_Timestamp End_Timestamp Correlation_ID SQ_INSTS_VMEM SQ_INST_LEVEL_VMEM SQ_ACCUM_PREV_HIRES
2 0 11995 1 148370 148370 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843971992178 73843971999909 0 32768.0 540654.0 43241432.0
3 1 11995 1 148370 148370 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972017897 73843972024226 0 32768.0 423717.0 33892596.0
4 2 11995 1 148370 148370 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972039650 73843972045859 0 32768.0 421757.0 33736452.0
@@ -0,0 +1,4 @@
Dispatch_ID,GPU_ID,Queue_ID,PID,TID,Grid_Size,Workgroup_Size,LDS_Per_Workgroup,Scratch_Per_Workitem,Arch_VGPR,Accum_VGPR,SGPR,Wave_Size,Kernel_Name,Start_Timestamp,End_Timestamp,Correlation_ID,GRBM_COUNT,GRBM_GUI_ACTIVE,CPC_ME1_BUSY_FOR_PACKET_DECODE,SQ_CYCLES,SQ_WAVES,SQ_WAVE_CYCLES,SQ_BUSY_CYCLES,SQ_LEVEL_WAVES,SQ_ACCUM_PREV_HIRES
0,11995,1,148381,148381,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843971992178,73843971999909,0,215077.0,215077.0,120524.0,860308.0,16384.0,14073357.0,258076.0,0.0,56727488.0
1,11995,1,148381,148381,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972017897,73843972024226,0,186817.0,186817.0,103332.0,747268.0,16384.0,10901162.0,200092.0,0.0,43996920.0
2,11995,1,148381,148381,1048576,256,0,0,4,4,16,64,"vecCopy(double*, double*, double*, int, int) (.kd)",73843972039650,73843972045859,0,183393.0,183393.0,102287.0,733572.0,16384.0,10354964.0,192829.0,0.0,41809560.0
1 Dispatch_ID GPU_ID Queue_ID PID TID Grid_Size Workgroup_Size LDS_Per_Workgroup Scratch_Per_Workitem Arch_VGPR Accum_VGPR SGPR Wave_Size Kernel_Name Start_Timestamp End_Timestamp Correlation_ID GRBM_COUNT GRBM_GUI_ACTIVE CPC_ME1_BUSY_FOR_PACKET_DECODE SQ_CYCLES SQ_WAVES SQ_WAVE_CYCLES SQ_BUSY_CYCLES SQ_LEVEL_WAVES SQ_ACCUM_PREV_HIRES
2 0 11995 1 148381 148381 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843971992178 73843971999909 0 215077.0 215077.0 120524.0 860308.0 16384.0 14073357.0 258076.0 0.0 56727488.0
3 1 11995 1 148381 148381 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972017897 73843972024226 0 186817.0 186817.0 103332.0 747268.0 16384.0 10901162.0 200092.0 0.0 43996920.0
4 2 11995 1 148381 148381 1048576 256 0 0 4 4 16 64 vecCopy(double*, double*, double*, int, int) (.kd) 73843972039650 73843972045859 0 183393.0 183393.0 102287.0 733572.0 16384.0 10354964.0 192829.0 0.0 41809560.0
@@ -0,0 +1,247 @@
Omniperf version: 2.0.0
Profiler choice: rocprofv2
Path: /home/colramos/omniperf/tests/workloads/device_filter/MI300A_A1
Target: MI300A_A1
Command: ./tests/vcopy -n 1048576 -b 256 -i 3
Kernel Selection: None
Dispatch Selection: None
Hardware Blocks: All
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Collecting Performance Counters
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/SQ_IFETCH_LEVEL.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - GRBM_COUNT
|-> [/opt/rocm/bin/rocprofv2] - GRBM_GUI_ACTIVE
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVES
|-> [/opt/rocm/bin/rocprofv2] - SQ_IFETCH
|-> [/opt/rocm/bin/rocprofv2] - SQ_IFETCH_LEVEL
|-> [/opt/rocm/bin/rocprofv2] - SQ_ACCUM_PREV_HIRES
|-> [/opt/rocm/bin/rocprofv2] Enabling Counter Collection
|-> [/opt/rocm/bin/rocprofv2] vcopy testing on GCD 0
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the CPU
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the GPU
|-> [/opt/rocm/bin/rocprofv2] Finished copying vectors to the GPU
|-> [/opt/rocm/bin/rocprofv2] sw thinks it moved 1.000000 KB per wave
|-> [/opt/rocm/bin/rocprofv2] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [/opt/rocm/bin/rocprofv2] Launching the kernel on the GPU
|-> [/opt/rocm/bin/rocprofv2] Finished executing kernel
|-> [/opt/rocm/bin/rocprofv2] Finished executing kernel
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/SQ_INST_LEVEL_LDS.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_LDS
|-> [/opt/rocm/bin/rocprofv2] - SQ_INST_LEVEL_LDS
|-> [/opt/rocm/bin/rocprofv2] - SQ_ACCUM_PREV_HIRES
|-> [/opt/rocm/bin/rocprofv2] Enabling Counter Collection
|-> [/opt/rocm/bin/rocprofv2] vcopy testing on GCD 0
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the CPU
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the GPU
|-> [/opt/rocm/bin/rocprofv2] Finished copying vectors to the GPU
|-> [/opt/rocm/bin/rocprofv2] sw thinks it moved 1.000000 KB per wave
|-> [/opt/rocm/bin/rocprofv2] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/SQ_INST_LEVEL_SMEM.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_SMEM
|-> [/opt/rocm/bin/rocprofv2] - SQ_INST_LEVEL_SMEM
|-> [/opt/rocm/bin/rocprofv2] - SQ_ACCUM_PREV_HIRES
|-> [/opt/rocm/bin/rocprofv2] Enabling Counter Collection
|-> [/opt/rocm/bin/rocprofv2] vcopy testing on GCD 0
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the CPU
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the GPU
|-> [/opt/rocm/bin/rocprofv2] Finished copying vectors to the GPU
|-> [/opt/rocm/bin/rocprofv2] sw thinks it moved 1.000000 KB per wave
|-> [/opt/rocm/bin/rocprofv2] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/SQ_INST_LEVEL_VMEM.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VMEM
|-> [/opt/rocm/bin/rocprofv2] - SQ_INST_LEVEL_VMEM
|-> [/opt/rocm/bin/rocprofv2] - SQ_ACCUM_PREV_HIRES
|-> [/opt/rocm/bin/rocprofv2] Enabling Counter Collection
|-> [/opt/rocm/bin/rocprofv2] vcopy testing on GCD 0
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the CPU
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the GPU
|-> [/opt/rocm/bin/rocprofv2] Finished copying vectors to the GPU
|-> [/opt/rocm/bin/rocprofv2] sw thinks it moved 1.000000 KB per wave
|-> [/opt/rocm/bin/rocprofv2] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [/opt/rocm/bin/rocprofv2] Launching the kernel on the GPU
|-> [/opt/rocm/bin/rocprofv2] Finished executing kernel
|-> [/opt/rocm/bin/rocprofv2] Finished executing kernel
|-> [/opt/rocm/bin/rocprofv2] Finished executing kernel
|-> [/opt/rocm/bin/rocprofv2] Finished copying the output vector from the GPU to the CPU
|-> [/opt/rocm/bin/rocprofv2] Releasing GPU memory
|-> [/opt/rocm/bin/rocprofv2] Releasing CPU memory
|-> [/opt/rocm/bin/rocprofv2] Results File: "tests/workloads/device_filter/MI300A_A1/out/pmc_1/results_SQ_INST_LEVEL_VMEM.csv"
|-> [/opt/rocm/bin/rocprofv2]
|-> [/opt/rocm/bin/rocprofv2] The output path for the following counters: tests/workloads/device_filter/MI300A_A1/out/pmc_1
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/SQ_LEVEL_WAVES.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - GRBM_COUNT
|-> [/opt/rocm/bin/rocprofv2] - GRBM_GUI_ACTIVE
|-> [/opt/rocm/bin/rocprofv2] - CPC_ME1_BUSY_FOR_PACKET_DECODE
|-> [/opt/rocm/bin/rocprofv2] - SQ_CYCLES
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVES
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVE_CYCLES
|-> [/opt/rocm/bin/rocprofv2] - SQ_BUSY_CYCLES
|-> [/opt/rocm/bin/rocprofv2] - SQ_LEVEL_WAVES
|-> [/opt/rocm/bin/rocprofv2] - SQ_ACCUM_PREV_HIRES
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_0.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_CYCLES
|-> [/opt/rocm/bin/rocprofv2] - SQ_BUSY_CYCLES
|-> [/opt/rocm/bin/rocprofv2] - SQ_BUSY_CU_CYCLES
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVES
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVE_CYCLES
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_CVT
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VMEM_WR
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VMEM_RD
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_1.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VMEM
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_SALU
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VSKIPPED
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_ADD_F16
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MUL_F16
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_FMA_F16
|-> [/opt/rocm/bin/rocprofv2] - GRBM_SPI_BUSY
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_10.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQC_TC_DATA_ATOMIC_REQ
|-> [/opt/rocm/bin/rocprofv2] - SQC_TC_STALL
|-> [/opt/rocm/bin/rocprofv2] - SQC_TC_REQ
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_11.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQC_DCACHE_INPUT_VALID_READYB
|-> [/opt/rocm/bin/rocprofv2] - SQC_DCACHE_ATOMIC
|-> [/opt/rocm/bin/rocprofv2] - SQC_DCACHE_REQ_READ_8
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_12.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQC_DCACHE_REQ_READ_2
|-> [/opt/rocm/bin/rocprofv2] - SQC_DCACHE_REQ_READ_4
|-> [/opt/rocm/bin/rocprofv2] Enabling Counter Collection
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_13.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - TCC_ATOMIC[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_BUBBLE[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_CYCLE[0]
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_14.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_ATOMIC_LEVEL[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_RDREQ[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_RDREQ_32B[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_RDREQ_LEVEL[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_ATOMIC_LEVEL[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_RDREQ[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_RDREQ_32B[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_RDREQ_LEVEL[1]
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_15.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_WRREQ[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_WRREQ_64B[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_WRREQ_LEVEL[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_HIT[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_WRREQ[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_WRREQ_64B[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_EA0_WRREQ_LEVEL[1]
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_16.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - TCC_MISS[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_READ[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_REQ[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_RW_REQ[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_MISS[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_READ[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_REQ[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_RW_REQ[1]
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_17.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - TCC_TAG_STALL[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_TOO_MANY_EA_WRREQS_STALL[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_WRITE[0]
|-> [/opt/rocm/bin/rocprofv2] - TCC_TAG_STALL[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_TOO_MANY_EA_WRREQS_STALL[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_WRITE[1]
|-> [/opt/rocm/bin/rocprofv2] - TCC_TAG_STALL[2]
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_2.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_TRANS_F16
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_ADD_F32
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MUL_F32
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_FMA_F32
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_TRANS_F32
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_ADD_F64
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MUL_F64
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_3.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_TRANS_F64
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_INT32
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_INT64
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_SMEM
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_FLAT
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_LDS
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_GDS
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_4.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_BRANCH
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_SENDMSG
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAIT_ANY
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_5.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_ACTIVE_INST_SCA
|-> [/opt/rocm/bin/rocprofv2] - SQ_ACTIVE_INST_EXP_GDS
|-> [/opt/rocm/bin/rocprofv2] - SQ_ACTIVE_INST_MISC
|-> [/opt/rocm/bin/rocprofv2] - SQ_ACTIVE_INST_FLAT
|-> [/opt/rocm/bin/rocprofv2] - SQ_INST_CYCLES_VMEM_WR
|-> [/opt/rocm/bin/rocprofv2] - SQ_INST_CYCLES_VMEM_RD
|-> [/opt/rocm/bin/rocprofv2] - SQ_INST_CYCLES_SMEM
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_6.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_THREAD_CYCLES_VALU
|-> [/opt/rocm/bin/rocprofv2] - SQ_IFETCH
|-> [/opt/rocm/bin/rocprofv2] - SQ_LDS_BANK_CONFLICT
|-> [/opt/rocm/bin/rocprofv2] - SQ_LDS_ADDR_CONFLICT
|-> [/opt/rocm/bin/rocprofv2] - SQ_LDS_UNALIGNED_STALL
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVES_EQ_64
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVES_LT_64
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_7.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVES_LT_32
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVES_LT_16
|-> [/opt/rocm/bin/rocprofv2] - SQ_ITEMS
|-> [/opt/rocm/bin/rocprofv2] - SQ_LDS_MEM_VIOLATIONS
|-> [/opt/rocm/bin/rocprofv2] - SQ_LDS_ATOMIC_RETURN
|-> [/opt/rocm/bin/rocprofv2] - SQ_LDS_IDX_ACTIVE
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVES_RESTORED
|-> [/opt/rocm/bin/rocprofv2] - SQ_WAVES_SAVED
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_8.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_SMEM_NORM
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_MFMA
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_I8
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_F16
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_BF16
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_F32
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_F64
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/pmc_perf_9.txt
|-> [/opt/rocm/bin/rocprofv2] ROCProfilerV2: Collecting the following counters:
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_MOPS_I8
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_MOPS_F16
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_MOPS_BF16
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_MOPS_F32
|-> [/opt/rocm/bin/rocprofv2] - SQ_INSTS_VALU_MFMA_MOPS_F64
|-> [/opt/rocm/bin/rocprofv2] - SQC_TC_INST_REQ
|-> [/opt/rocm/bin/rocprofv2] - SQC_TC_DATA_READ_REQ
|-> [/opt/rocm/bin/rocprofv2] - SQC_TC_DATA_WRITE_REQ
[profiling] Current input file: tests/workloads/device_filter/MI300A_A1/perfmon/timestamps.txt
|-> [/opt/rocm/bin/rocprofv2] vcopy testing on GCD 0
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the CPU
|-> [/opt/rocm/bin/rocprofv2] Finished allocating vectors on the GPU
|-> [/opt/rocm/bin/rocprofv2] Finished copying vectors to the GPU
|-> [/opt/rocm/bin/rocprofv2] sw thinks it moved 1.000000 KB per wave
|-> [/opt/rocm/bin/rocprofv2] Total threads: 1048576, Grid Size: 4096 block Size:256, Wavefronts:16384:
|-> [/opt/rocm/bin/rocprofv2] Launching the kernel on the GPU
|-> [/opt/rocm/bin/rocprofv2] Finished executing kernel
[roofline] Roofline temporarily disabled in MI300
@@ -0,0 +1,5 @@
pmc: GRBM_COUNT GRBM_GUI_ACTIVE SQ_WAVES SQ_IFETCH SQ_IFETCH_LEVEL SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_LDS SQ_INST_LEVEL_LDS SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_SMEM SQ_INST_LEVEL_SMEM SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_VMEM SQ_INST_LEVEL_VMEM SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: GRBM_COUNT GRBM_GUI_ACTIVE CPC_ME1_BUSY_FOR_PACKET_DECODE SQ_CYCLES SQ_WAVES SQ_WAVE_CYCLES SQ_BUSY_CYCLES SQ_LEVEL_WAVES SQ_ACCUM_PREV_HIRES
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_CYCLES SQ_BUSY_CYCLES SQ_BUSY_CU_CYCLES SQ_WAVES SQ_WAVE_CYCLES SQ_INSTS_VALU_CVT SQ_INSTS_VMEM_WR SQ_INSTS_VMEM_RD GRBM_COUNT GRBM_GUI_ACTIVE TCP_GATE_EN1_sum TCP_GATE_EN2_sum TCP_TD_TCP_STALL_CYCLES_sum TCP_TCR_TCP_STALL_CYCLES_sum TA_TA_BUSY_sum TA_BUFFER_WAVEFRONTS_sum TD_TD_BUSY_sum TD_TC_STALL_sum SPI_CSN_WINDOW_VALID SPI_CSN_BUSY CPC_CPC_STAT_BUSY CPC_CPC_STAT_IDLE CPF_CPF_STAT_BUSY CPF_CPF_STAT_STALL TCC_CYCLE_sum TCC_BUSY_sum TCC_PROBE_sum TCC_PROBE_ALL_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQ_INSTS_VMEM SQ_INSTS_SALU SQ_INSTS_VSKIPPED SQ_INSTS SQ_INSTS_VALU SQ_INSTS_VALU_ADD_F16 SQ_INSTS_VALU_MUL_F16 SQ_INSTS_VALU_FMA_F16 GRBM_SPI_BUSY TCP_READ_TAGCONFLICT_STALL_CYCLES_sum TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum TCP_TA_TCP_STATE_READ_sum TA_BUFFER_READ_WAVEFRONTS_sum TA_BUFFER_WRITE_WAVEFRONTS_sum TD_SPI_STALL_sum TD_LOAD_WAVEFRONT_sum SPI_CSN_NUM_THREADGROUPS SPI_CSN_WAVE CPC_CPC_TCIU_BUSY CPC_CPC_TCIU_IDLE CPF_CPF_TCIU_BUSY CPF_CPF_TCIU_STALL TCC_NC_REQ_sum TCC_UC_REQ_sum TCC_CC_REQ_sum TCC_RW_REQ_sum
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQC_TC_DATA_ATOMIC_REQ SQC_TC_STALL SQC_TC_REQ SQC_DCACHE_REQ_READ_16 SQC_ICACHE_REQ SQC_ICACHE_HITS SQC_ICACHE_MISSES SQC_ICACHE_MISSES_DUPLICATE
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQC_DCACHE_INPUT_VALID_READYB SQC_DCACHE_ATOMIC SQC_DCACHE_REQ_READ_8 SQC_DCACHE_REQ SQC_DCACHE_HITS SQC_DCACHE_MISSES SQC_DCACHE_MISSES_DUPLICATE SQC_DCACHE_REQ_READ_1
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: SQC_DCACHE_REQ_READ_2 SQC_DCACHE_REQ_READ_4
gpu:
range:
kernel:
@@ -0,0 +1,5 @@
pmc: TCC_ATOMIC[0] TCC_BUBBLE[0] TCC_CYCLE[0] TCC_EA0_ATOMIC[0] TCC_ATOMIC[1] TCC_BUBBLE[1] TCC_CYCLE[1] TCC_EA0_ATOMIC[1] TCC_ATOMIC[2] TCC_BUBBLE[2] TCC_CYCLE[2] TCC_EA0_ATOMIC[2] TCC_ATOMIC[3] TCC_BUBBLE[3] TCC_CYCLE[3] TCC_EA0_ATOMIC[3] TCC_ATOMIC[4] TCC_BUBBLE[4] TCC_CYCLE[4] TCC_EA0_ATOMIC[4] TCC_ATOMIC[5] TCC_BUBBLE[5] TCC_CYCLE[5] TCC_EA0_ATOMIC[5] TCC_ATOMIC[6] TCC_BUBBLE[6] TCC_CYCLE[6] TCC_EA0_ATOMIC[6] TCC_ATOMIC[7] TCC_BUBBLE[7] TCC_CYCLE[7] TCC_EA0_ATOMIC[7] TCC_ATOMIC[8] TCC_BUBBLE[8] TCC_CYCLE[8] TCC_EA0_ATOMIC[8] TCC_ATOMIC[9] TCC_BUBBLE[9] TCC_CYCLE[9] TCC_EA0_ATOMIC[9] TCC_ATOMIC[10] TCC_BUBBLE[10] TCC_CYCLE[10] TCC_EA0_ATOMIC[10] TCC_ATOMIC[11] TCC_BUBBLE[11] TCC_CYCLE[11] TCC_EA0_ATOMIC[11] TCC_ATOMIC[12] TCC_BUBBLE[12] TCC_CYCLE[12] TCC_EA0_ATOMIC[12] TCC_ATOMIC[13] TCC_BUBBLE[13] TCC_CYCLE[13] TCC_EA0_ATOMIC[13] TCC_ATOMIC[14] TCC_BUBBLE[14] TCC_CYCLE[14] TCC_EA0_ATOMIC[14] TCC_ATOMIC[15] TCC_BUBBLE[15] TCC_CYCLE[15] TCC_EA0_ATOMIC[15]
gpu:
range:
kernel:

Some files were not shown because too many files have changed in this diff Show More