16d535ef48
* CMake support for OTF2 library * Preliminary OTF2 generation implementation * Completed OTF2 Support - HSA API - HIP API - Marker API - Async Memory Copies - Kernel Dispatch * Update lib/rocprofiler-sdk-tool/generateOTF2.cpp - fix location type for dispatches * Testing for OTF2 output * Add OTF2 to requirements.txt * Update lib/rocprofiler-sdk-tool/generateOTF2.cpp - fix getting kernel name * OTF2 testing with rocprofv3/tracing-hip-in-libraries * Format external/otf2/CMakeLists.txt * Update external/otf2/CMakeLists.txt - guard CMP0135 for cmake < 3.24 * Update lib/rocprofiler-sdk-tool/generateOTF2.cpp - fix duplicate string ref issue * Update lib/rocprofiler-sdk-tool/generateOTF2.cpp - fix header includes * Update CI workflow - sudo install pypi requirements for core-rpm for $HOME/.local installs * Update pytest_utils/otf2_reader.py - modifications for reading trace * Update pytest_utils/otf2_reader.py - misc cleanup * Update CI workflow - fix installer artifact naming * Update pytest_utils/otf2_reader.py - handle slightly overlapping kernel timestamps for MI300 * OTF2 attributes for category * Testing with OTF2Reader category attributes * Fix memory leak in OTF2 generation - leaking OTF2_AttributeList
119 lines
4.3 KiB
CMake
119 lines
4.3 KiB
CMake
#
|
|
# rocprofv3 tool tests for kernel renaming
|
|
#
|
|
cmake_minimum_required(VERSION 3.21.0 FATAL_ERROR)
|
|
|
|
project(
|
|
rocprofiler-tests-rocprofv3-kernel-rename
|
|
LANGUAGES CXX
|
|
VERSION 0.0.0)
|
|
|
|
find_package(rocprofiler-sdk REQUIRED)
|
|
|
|
if(ROCPROFILER_MEMCHECK STREQUAL "LeakSanitizer")
|
|
set(LOG_LEVEL "warning") # info produces memory leak
|
|
else()
|
|
set(LOG_LEVEL "info")
|
|
endif()
|
|
|
|
string(REPLACE "LD_PRELOAD=" "ROCPROF_PRELOAD=" PRELOAD_ENV
|
|
"${ROCPROFILER_MEMCHECK_PRELOAD_ENV}")
|
|
|
|
set(kernel-rename-env "${PRELOAD_ENV}")
|
|
|
|
rocprofiler_configure_pytest_files(CONFIG pytest.ini input-kernel-rename.yml
|
|
COPY validate.py conftest.py)
|
|
|
|
##########################################################################################
|
|
#
|
|
# Command line input
|
|
#
|
|
##########################################################################################
|
|
|
|
add_test(
|
|
NAME rocprofv3-test-kernel-rename-cmd-line-execute
|
|
COMMAND
|
|
$<TARGET_FILE:rocprofiler-sdk::rocprofv3> -M --sys-trace no --hsa-trace=0
|
|
--hsa-core-trace=1 --hip-compiler-trace False --hip-runtime-trace --kernel-trace
|
|
--memory-copy-trace -d ${CMAKE_CURRENT_BINARY_DIR}/%argt%-trace-cmd-line -o out
|
|
--output-format pftrace json otf2 --log-level env --kernel-rename
|
|
--perfetto-shmem-size-hint 128 --perfetto-buffer-size 2048000
|
|
--perfetto-buffer-fill-policy ring_buffer --perfetto-backend inprocess --
|
|
$<TARGET_FILE:transpose>)
|
|
|
|
set_tests_properties(
|
|
rocprofv3-test-kernel-rename-cmd-line-execute
|
|
PROPERTIES TIMEOUT 45 LABELS "integration-tests" ENVIRONMENT "${kernel-rename-env}"
|
|
FAIL_REGULAR_EXPRESSION "${ROCPROFILER_DEFAULT_FAIL_REGEX}")
|
|
|
|
add_test(
|
|
NAME rocprofv3-test-kernel-rename-cmd-line-validate
|
|
COMMAND
|
|
${Python3_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/validate.py --json-input
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-cmd-line/out_results.json
|
|
--pftrace-input
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-cmd-line/out_results.pftrace
|
|
--otf2-input
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-cmd-line/out_results.otf2)
|
|
|
|
set(VALIDATION_FILES
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-cmd-line/out_results.pftrace
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-cmd-line/out_results.json)
|
|
|
|
set_tests_properties(
|
|
rocprofv3-test-kernel-rename-cmd-line-validate
|
|
PROPERTIES TIMEOUT
|
|
45
|
|
LABELS
|
|
"integration-tests"
|
|
DEPENDS
|
|
"rocprofv3-test-kernel-rename-execute"
|
|
FAIL_REGULAR_EXPRESSION
|
|
"AssertionError"
|
|
ATTACHED_FILES_ON_FAIL
|
|
"${VALIDATION_FILES}")
|
|
|
|
##########################################################################################
|
|
#
|
|
# YAML input
|
|
#
|
|
##########################################################################################
|
|
|
|
add_test(
|
|
NAME rocprofv3-test-kernel-rename-inp-yaml-execute
|
|
COMMAND
|
|
$<TARGET_FILE:rocprofiler-sdk::rocprofv3> -i
|
|
${CMAKE_CURRENT_BINARY_DIR}/input-kernel-rename.yml -- $<TARGET_FILE:transpose>)
|
|
|
|
set_tests_properties(
|
|
rocprofv3-test-kernel-rename-inp-yaml-execute
|
|
PROPERTIES TIMEOUT 45 LABELS "integration-tests" ENVIRONMENT "${kernel-rename-env}"
|
|
FAIL_REGULAR_EXPRESSION "${ROCPROFILER_DEFAULT_FAIL_REGEX}")
|
|
|
|
add_test(
|
|
NAME rocprofv3-test-kernel-rename-inp-yaml-validate
|
|
COMMAND
|
|
${Python3_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/validate.py --json-input
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-inp-yaml/out_results.json
|
|
--pftrace-input
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-inp-yaml/out_results.pftrace
|
|
--otf2-input
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-inp-yaml/out_results.otf2)
|
|
|
|
set(VALIDATION_FILES
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-inp-yaml/out_results.pftrace
|
|
${CMAKE_CURRENT_BINARY_DIR}/transpose-trace-inp-yaml/out_results.json)
|
|
|
|
set_tests_properties(
|
|
rocprofv3-test-kernel-rename-inp-yaml-validate
|
|
PROPERTIES TIMEOUT
|
|
45
|
|
LABELS
|
|
"integration-tests"
|
|
DEPENDS
|
|
"rocprofv3-test-kernel-rename-inp-yaml-execute"
|
|
FAIL_REGULAR_EXPRESSION
|
|
"AssertionError"
|
|
ATTACHED_FILES_ON_FAIL
|
|
"${VALIDATION_FILES}")
|