Build system (libdw), correlation ID, and shebang fixes (#354)
* Fix compilation for output library - link to targets for ATT (amd-comgr, dw, elf) * Relax correlation ID retirement log failures - only fail for correlation ID retirement underflow when building in CI mode * Fix shebang for several files - license was inserted before shebang in several places * Update code coverage exclude folders for samples * Tweak to agent tests - test to make sure hsa agent is not the old value instead of testing that it is the new value * Fix libdw include/link --------- Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
Cette révision appartient à :
1 Parent
06005c7f6b
révision
3580478426
31 fichiers modifiés
+116
-316
Aucun fichier ne correspond à votre recherche
@@ -77,19 +77,6 @@ target_compile_options(hsa_code_object_testapp PRIVATE -W -Wall -Wextra -Wshadow
|
||||
find_package(Threads REQUIRED)
|
||||
target_link_libraries(hsa_code_object_testapp PRIVATE stdc++fs Threads::Threads)
|
||||
|
||||
find_package(
|
||||
amd_comgr
|
||||
REQUIRED
|
||||
CONFIG
|
||||
HINTS
|
||||
${CMAKE_INSTALL_PREFIX}
|
||||
PATHS
|
||||
${ROCM_PATH}
|
||||
PATH_SUFFIXES
|
||||
lib/cmake/amd_comgr)
|
||||
|
||||
target_link_libraries(hsa_code_object_testapp PRIVATE amd_comgr)
|
||||
|
||||
find_package(rocprofiler-sdk REQUIRED)
|
||||
target_link_libraries(
|
||||
hsa_code_object_testapp PRIVATE rocprofiler-sdk::rocprofiler-sdk
|
||||
|
||||
@@ -54,19 +54,6 @@ target_compile_options(multiqueue_testapp PRIVATE -W -Wall -Wextra -Wshadow -Wer
|
||||
find_package(Threads REQUIRED)
|
||||
target_link_libraries(multiqueue_testapp PRIVATE stdc++fs Threads::Threads)
|
||||
|
||||
find_package(
|
||||
amd_comgr
|
||||
REQUIRED
|
||||
CONFIG
|
||||
HINTS
|
||||
${CMAKE_INSTALL_PREFIX}
|
||||
PATHS
|
||||
${ROCM_PATH}
|
||||
PATH_SUFFIXES
|
||||
lib/cmake/amd_comgr)
|
||||
|
||||
target_link_libraries(multiqueue_testapp PRIVATE amd_comgr)
|
||||
|
||||
find_package(rocprofiler-sdk REQUIRED)
|
||||
target_link_libraries(multiqueue_testapp PRIVATE rocprofiler-sdk::rocprofiler-sdk
|
||||
rocprofiler-sdk::tests-common-library)
|
||||
|
||||
@@ -42,6 +42,11 @@ if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.30)
|
||||
cmake_policy(SET CMP0167 NEW)
|
||||
endif()
|
||||
|
||||
find_package(rocprofiler-sdk REQUIRED)
|
||||
|
||||
# rocprofiler-sdk provides a Findlibdw.cmake
|
||||
find_package(libdw REQUIRED)
|
||||
|
||||
# build flags
|
||||
add_library(rocprofiler-sdk-tests-build-flags INTERFACE)
|
||||
add_library(rocprofiler-sdk::tests-build-flags ALIAS rocprofiler-sdk-tests-build-flags)
|
||||
@@ -138,7 +143,8 @@ add_library(rocprofiler-sdk::tests-common-library ALIAS
|
||||
rocprofiler-sdk-tests-common-library)
|
||||
target_link_libraries(
|
||||
rocprofiler-sdk-tests-common-library
|
||||
INTERFACE rocprofiler-sdk::tests-build-flags rocprofiler-sdk::rocprofiler-sdk-cereal)
|
||||
INTERFACE rocprofiler-sdk::tests-build-flags rocprofiler-sdk::rocprofiler-sdk-cereal
|
||||
libdw::libdw)
|
||||
target_compile_features(rocprofiler-sdk-tests-common-library INTERFACE cxx_std_17)
|
||||
target_include_directories(rocprofiler-sdk-tests-common-library
|
||||
INTERFACE ${COMMON_LIBRARY_INCLUDE_DIR})
|
||||
|
||||
@@ -27,61 +27,6 @@ endforeach()
|
||||
|
||||
find_package(rocprofiler-sdk REQUIRED)
|
||||
|
||||
find_package(PkgConfig)
|
||||
|
||||
if(PkgConfig_FOUND)
|
||||
set(ENV{PKG_CONFIG_SYSTEM_INCLUDE_PATH} "")
|
||||
pkg_check_modules(DW libdw)
|
||||
|
||||
if(DW_FOUND
|
||||
AND DW_INCLUDE_DIRS
|
||||
AND DW_LIBRARIES)
|
||||
set(libdw_INCLUDE_DIR
|
||||
"${DW_INCLUDE_DIRS}"
|
||||
CACHE FILEPATH "libdw include directory")
|
||||
set(libdw_LIBRARY
|
||||
"${DW_LIBRARIES}"
|
||||
CACHE FILEPATH "libdw libraries")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT libdw_INCLUDE_DIR OR NOT libdw_LIBRARY)
|
||||
find_path(
|
||||
libdw_ROOT_DIR
|
||||
NAMES include/elfutils/libdw.h
|
||||
HINTS ${libdw_ROOT}
|
||||
PATHS ${libdw_ROOT})
|
||||
|
||||
mark_as_advanced(libdw_ROOT_DIR)
|
||||
|
||||
find_path(
|
||||
libdw_INCLUDE_DIR
|
||||
NAMES elfutils/libdw.h
|
||||
HINTS ${libdw_ROOT}
|
||||
PATHS ${libdw_ROOT}
|
||||
PATH_SUFFIXES include)
|
||||
|
||||
find_library(
|
||||
libdw_LIBRARY
|
||||
NAMES dw
|
||||
HINTS ${libdw_ROOT}
|
||||
PATHS ${libdw_ROOT}
|
||||
PATH_SUFFIXES lib lib64)
|
||||
endif()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(libdw DEFAULT_MSG libdw_LIBRARY libdw_INCLUDE_DIR)
|
||||
|
||||
if(libdw_FOUND AND NOT TARGET libdw::libdw)
|
||||
add_library(libdw::libdw INTERFACE IMPORTED)
|
||||
if(TARGET PkgConfig::DW AND DW_FOUND)
|
||||
target_link_libraries(libdw::libdw INTERFACE PkgConfig::DW)
|
||||
else()
|
||||
target_link_libraries(libdw::libdw INTERFACE ${libdw_LIBRARY})
|
||||
target_include_directories(libdw::libdw SYSTEM INTERFACE ${libdw_INCLUDE_DIR})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
add_library(pc-sampling-integration-test-client SHARED)
|
||||
target_sources(
|
||||
pc-sampling-integration-test-client
|
||||
@@ -104,7 +49,7 @@ target_sources(
|
||||
target_link_libraries(
|
||||
pc-sampling-integration-test-client
|
||||
PRIVATE rocprofiler-sdk::rocprofiler-sdk rocprofiler-sdk::tests-build-flags
|
||||
rocprofiler-sdk::tests-common-library amd_comgr dw)
|
||||
rocprofiler-sdk::tests-common-library)
|
||||
|
||||
set_source_files_properties(main.cpp PROPERTIES LANGUAGE HIP)
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,11 +21,8 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
|
||||
from __future__ import absolute_import
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import itertools
|
||||
import sys
|
||||
import pytest
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,8 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import json
|
||||
import os
|
||||
import pytest
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,8 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import sys
|
||||
import pytest
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,8 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import csv
|
||||
import pytest
|
||||
import json
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,7 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import sys
|
||||
import pytest
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,7 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import csv
|
||||
import json
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,7 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import sys
|
||||
import pytest
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,7 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import json
|
||||
import os
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,7 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import sys
|
||||
import pytest
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,7 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import json
|
||||
import os
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,7 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import itertools
|
||||
import sys
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,7 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import csv
|
||||
import json
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env python3
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
@@ -20,7 +21,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import sys
|
||||
import pytest
|
||||
|
||||
@@ -22,74 +22,7 @@ project(
|
||||
LANGUAGES CXX HIP
|
||||
VERSION 0.0.0)
|
||||
|
||||
find_package(PkgConfig)
|
||||
|
||||
if(PkgConfig_FOUND)
|
||||
set(ENV{PKG_CONFIG_SYSTEM_INCLUDE_PATH} "")
|
||||
pkg_check_modules(DW libdw)
|
||||
|
||||
if(DW_FOUND
|
||||
AND DW_INCLUDE_DIRS
|
||||
AND DW_LIBRARIES)
|
||||
set(libdw_INCLUDE_DIR
|
||||
"${DW_INCLUDE_DIRS}"
|
||||
CACHE FILEPATH "libdw include directory")
|
||||
set(libdw_LIBRARY
|
||||
"${DW_LIBRARIES}"
|
||||
CACHE FILEPATH "libdw libraries")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT libdw_INCLUDE_DIR OR NOT libdw_LIBRARY)
|
||||
find_path(
|
||||
libdw_ROOT_DIR
|
||||
NAMES include/elfutils/libdw.h
|
||||
HINTS ${libdw_ROOT}
|
||||
PATHS ${libdw_ROOT})
|
||||
|
||||
mark_as_advanced(libdw_ROOT_DIR)
|
||||
|
||||
find_path(
|
||||
libdw_INCLUDE_DIR
|
||||
NAMES elfutils/libdw.h
|
||||
HINTS ${libdw_ROOT}
|
||||
PATHS ${libdw_ROOT}
|
||||
PATH_SUFFIXES include)
|
||||
|
||||
find_library(
|
||||
libdw_LIBRARY
|
||||
NAMES dw
|
||||
HINTS ${libdw_ROOT}
|
||||
PATHS ${libdw_ROOT}
|
||||
PATH_SUFFIXES lib lib64)
|
||||
endif()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(libdw DEFAULT_MSG libdw_LIBRARY libdw_INCLUDE_DIR)
|
||||
|
||||
if(libdw_FOUND AND NOT TARGET libdw::libdw)
|
||||
add_library(libdw::libdw INTERFACE IMPORTED)
|
||||
if(TARGET PkgConfig::DW AND DW_FOUND)
|
||||
target_link_libraries(libdw::libdw INTERFACE PkgConfig::DW)
|
||||
else()
|
||||
target_link_libraries(libdw::libdw INTERFACE ${libdw_LIBRARY})
|
||||
target_include_directories(libdw::libdw SYSTEM INTERFACE ${libdw_INCLUDE_DIR})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
find_package(rocprofiler-sdk REQUIRED)
|
||||
find_package(
|
||||
amd_comgr
|
||||
REQUIRED
|
||||
CONFIG
|
||||
HINTS
|
||||
${rocm_version_DIR}
|
||||
${ROCM_PATH}
|
||||
PATHS
|
||||
${rocm_version_DIR}
|
||||
${ROCM_PATH}
|
||||
PATH_SUFFIXES
|
||||
lib/cmake/amd_comgr)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
@@ -104,10 +37,9 @@ foreach(_TYPE DEBUG MINSIZEREL RELEASE RELWITHDEBINFO)
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set_source_files_properties(kernel_branch.cpp PROPERTIES COMPILE_FLAGS "-g -O2")
|
||||
set_source_files_properties(kernel_branch.cpp PROPERTIES LANGUAGE HIP)
|
||||
set_source_files_properties(kernel_lds.cpp PROPERTIES COMPILE_FLAGS "-g -O2")
|
||||
set_source_files_properties(kernel_lds.cpp PROPERTIES LANGUAGE HIP)
|
||||
set_source_files_properties(
|
||||
kernel_branch.cpp kernel_lds.cpp
|
||||
PROPERTIES LANGUAGE HIP COMPILE_FLAGS "${CMAKE_HIP_FLAGS_RELWITHDEBINFO}")
|
||||
set_source_files_properties(main.cpp PROPERTIES LANGUAGE HIP)
|
||||
|
||||
# Single dispatch test
|
||||
@@ -115,8 +47,10 @@ add_executable(thread-trace-api-single-test)
|
||||
target_sources(
|
||||
thread-trace-api-single-test PRIVATE main.cpp trace_callbacks.cpp single_dispatch.cpp
|
||||
kernel_branch.cpp kernel_lds.cpp)
|
||||
target_link_libraries(thread-trace-api-single-test
|
||||
PRIVATE rocprofiler-sdk::rocprofiler-sdk)
|
||||
target_link_libraries(
|
||||
thread-trace-api-single-test
|
||||
PRIVATE rocprofiler-sdk::rocprofiler-sdk rocprofiler-sdk::tests-build-flags
|
||||
rocprofiler-sdk::tests-common-library)
|
||||
|
||||
add_test(NAME thread-trace-api-single-test
|
||||
COMMAND $<TARGET_FILE:thread-trace-api-single-test>)
|
||||
@@ -132,8 +66,10 @@ add_executable(thread-trace-api-multi-test)
|
||||
target_sources(
|
||||
thread-trace-api-multi-test PRIVATE main.cpp trace_callbacks.cpp multi_dispatch.cpp
|
||||
kernel_branch.cpp kernel_lds.cpp)
|
||||
target_link_libraries(thread-trace-api-multi-test
|
||||
PRIVATE rocprofiler-sdk::rocprofiler-sdk)
|
||||
target_link_libraries(
|
||||
thread-trace-api-multi-test
|
||||
PRIVATE rocprofiler-sdk::rocprofiler-sdk rocprofiler-sdk::tests-build-flags
|
||||
rocprofiler-sdk::tests-common-library)
|
||||
|
||||
add_test(NAME thread-trace-api-multi-test
|
||||
COMMAND $<TARGET_FILE:thread-trace-api-multi-test>)
|
||||
@@ -148,8 +84,10 @@ set_tests_properties(
|
||||
add_executable(thread-trace-api-agent-test)
|
||||
target_sources(thread-trace-api-agent-test PRIVATE main.cpp trace_callbacks.cpp agent.cpp
|
||||
kernel_branch.cpp kernel_lds.cpp)
|
||||
target_link_libraries(thread-trace-api-agent-test
|
||||
PRIVATE rocprofiler-sdk::rocprofiler-sdk)
|
||||
target_link_libraries(
|
||||
thread-trace-api-agent-test
|
||||
PRIVATE rocprofiler-sdk::rocprofiler-sdk rocprofiler-sdk::tests-build-flags
|
||||
rocprofiler-sdk::tests-common-library)
|
||||
|
||||
add_test(NAME thread-trace-api-agent-test
|
||||
COMMAND $<TARGET_FILE:thread-trace-api-agent-test>)
|
||||
|
||||
@@ -63,7 +63,7 @@ public:
|
||||
};
|
||||
|
||||
int
|
||||
main(int argc, char** argv)
|
||||
main(int /*argc*/, char** /*argv*/)
|
||||
{
|
||||
hipMemory src1(DATA_SIZE);
|
||||
hipMemory src2(DATA_SIZE);
|
||||
|
||||
Référencer dans un nouveau ticket
Bloquer un utilisateur