69b8a43dc6
* Added first ATT API * Finalizing thread trace API * Fixing more rebase conflicts * Added codeobj disassembly sample * Fixing merge issues with rebase [2] * Adding ATT packets * Implemented thread trace intercept * Moved codeobj parser to same repo as rocprofiler * Moved thread trace to new API * Fixing merge conflicts * Fixing more merge conflicts * Adding thread trace packet reuse * Merged aql_profile_v2 headers * Linked ATT sample to aqlprofile * Updated decoder to include non-loaded codeobjs * Implemented ISA decoder into ATT sample * Added marker_id to vaddr * Updating aql_profile_v2 API to memcpy * Updating thread trace API to include 64bit markers. Using the result of ISA matching. * Added instruction type and cycles summary * Updated sample with selection of kernel by kernel_object * Added option to copy from memory kernels * Moved tool_data in thread_trace to dynamic alloc * Restoring hsa.cpp * Fixed ATT sample crash. General improvements. * Moved codeobj library to outside src/ * Updated license header * Moved codeobj_capture to camelcase * Solving some more merge conflicts * Update samples/advanced_thread_trace/CMakeLists.txt Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update samples/advanced_thread_trace/CMakeLists.txt Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update samples/code_object_isa_decode/CMakeLists.txt Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update source/lib/rocprofiler-sdk/thread_trace/CMakeLists.txt * Removing unused parameter check * Adding const to isEmpty * Removing unused warning * Adding libdw-dev to requirements * Running clang-format * Commenting out new aql calls * Clang format * Unused variable fix * Adding codeobj-decoder coverage * Commenting out threadtrace * Update samples/CMakeLists.txt Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * P * WOverloaded * Addressing clang-tidy * Virtual destructor on ttracer class * Corr id * Fixing code source format * Update CMakeLists.txt * Build fixes * Update source/lib/rocprofiler-sdk-codeobj/code_object_track.cpp Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Fix shadowing * Update CMakeLists.txt * Update samples/CMakeLists.txt Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Ammar ELWazir <ammar.elwazir@amd.com> Co-authored-by: Ammar ELWazir <aelwazir@amd.com> Co-authored-by: Benjamin Welton <bewelton@amd.com>
59 linhas
2.8 KiB
CMake
59 linhas
2.8 KiB
CMake
# ##############################################################################
|
|
# # Copyright (c) 2024 Advanced Micro Devices, Inc. # # 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.
|
|
# ##############################################################################
|
|
|
|
set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME "codeobj")
|
|
find_package(amd_comgr REQUIRED)
|
|
|
|
set(LIB_CODEOBJ_PARSER_SOURCES code_object_track.cpp code_printing.cpp disassembly.cpp)
|
|
set(LIB_CODEOBJ_PARSER_HEADERS code_object_track.hpp code_printing.hpp disassembly.hpp
|
|
segment.hpp)
|
|
|
|
add_library(rocprofiler-sdk-codeobj STATIC)
|
|
target_sources(rocprofiler-sdk-codeobj PRIVATE ${LIB_CODEOBJ_PARSER_SOURCES})
|
|
target_link_libraries(
|
|
rocprofiler-sdk-codeobj
|
|
PRIVATE amd_comgr dw elf rocprofiler::rocprofiler-build-flags
|
|
rocprofiler::rocprofiler-memcheck rocprofiler::rocprofiler-common-library)
|
|
|
|
target_include_directories(rocprofiler-sdk-codeobj PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
if(ROCPROFILER_BUILD_CODECOV)
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -coverage")
|
|
target_link_libraries(rocprofiler-sdk-codeobj PUBLIC gcov)
|
|
endif()
|
|
|
|
set_target_properties(
|
|
rocprofiler-sdk-codeobj
|
|
PROPERTIES LIBRARY_OUTPUT_DIRECTORY
|
|
${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}/rocprofiler-sdk-codeobj
|
|
SOVERSION ${PROJECT_VERSION_MAJOR}
|
|
VERSION ${PROJECT_VERSION}
|
|
BUILD_RPATH "\$ORIGIN:\$ORIGIN/.."
|
|
INSTALL_RPATH "\$ORIGIN:\$ORIGIN/..")
|
|
|
|
install(
|
|
TARGETS rocprofiler-sdk-codeobj
|
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}/rocprofiler-sdk-codeobj
|
|
COMPONENT tools
|
|
EXPORT rocprofiler-sdk-codeobj-targets)
|
|
|
|
install(
|
|
FILES ${LIB_CODEOBJ_PARSER_HEADERS}
|
|
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/rocprofiler-sdk-codeobj
|
|
COMPONENT tools)
|