Files
rocm-systems/projects/aqlprofile/src/CMakeLists.txt
T
Bing Ma 171a5f5bda [aqlprofile] Enable SPM support for MI200/MI300 (#1768)
* [SPM] Enable legacy SPM aqlprofile API

* [SPM] Enable SPM aqlprofile_v2 API

* [NPI][SPM] Fix crash from ctrl test

* Adding decode v1 (#189)

Co-authored-by: Giovanni baraldi <gbaraldi@amd.com>

* Fix various issues on MI200
1. RLC_SPM_PERFMON_SEGMENT_SIZE_CORE1 support
2. ActiveCU patch for SPM delay table

* [SPM] Fix wrong SPM counter values on MI3xx

* Add mode and query blocks (#196)

Co-authored-by: Giovanni baraldi <gbaraldi@amd.com>

* [aqlprofile][spm] Use existing SpmBlockId enum info for delay table size

* [aqlprofile][spm] Remove obsolete logic

* Update projects/aqlprofile/src/core/include/aqlprofile-sdk/aql_profile_v2.h

---------

Co-authored-by: Baraldi, Giovanni <Giovanni.Baraldi@amd.com>
Co-authored-by: Giovanni baraldi <gbaraldi@amd.com>
2025-11-19 11:17:01 -08:00

98 lines
3.6 KiB
CMake

#
# Build dynamic Library object
#
set ( TARGET_LIB "${TARGET_NAME}" )
set ( LIB_SRC
${LIB_DIR}/core/aql_profile.cpp
${LIB_DIR}/core/counters.cpp
${LIB_DIR}/core/threadtrace.cpp
${LIB_DIR}/core/spm_data.cpp
${LIB_DIR}/core/spm_decode.cpp
${LIB_DIR}/core/spm_v2.cpp
${LIB_DIR}/core/populate_aql.cpp
${LIB_DIR}/core/memorymanager.cpp
${LIB_DIR}/core/pm4_factory.cpp
${LIB_DIR}/core/gfx9_factory.cpp
${LIB_DIR}/core/gfx908_factory.cpp
${LIB_DIR}/core/gfx90a_factory.cpp
${LIB_DIR}/core/gfx940_factory.cpp
${LIB_DIR}/core/gfx10_factory.cpp
${LIB_DIR}/core/gfx11_factory.cpp
${LIB_DIR}/core/gfx115x_factory.cpp
${LIB_DIR}/core/gfx12_factory.cpp
${LIB_DIR}/core/vega20_reg_init.cpp
${LIB_DIR}/core/parse_ip_discovery.cpp
${LIB_DIR}/core/navi_reg_init.cpp
${LIB_DIR}/core/ip_offset_table_init.cpp
${LIB_DIR}/util/hsa_rsrc_factory.cpp
)
add_library ( ${TARGET_LIB} SHARED ${LIB_SRC} )
add_library (aqlprofile::aqlprofile-lib ALIAS ${TARGET_LIB})
target_include_directories ( ${TARGET_LIB}
PRIVATE ${LIB_DIR}
${API_PATH}
${LIB_DIR}/core/include
)
target_link_libraries( ${TARGET_LIB}
PRIVATE
pthread
hsa-runtime64::hsa-runtime64
PUBLIC
aqlprofile::headers
)
## Generating definitions
set ( SCRIPT_DIR "${ROOT_DIR}/script" )
set ( GFXIP_DIR "${ROOT_DIR}/gfxip" )
set ( DEF_DIR "${ROOT_DIR}/src/def" )
set ( BINFO_TEMPL "${SCRIPT_DIR}/gpu_block_info.h" )
set ( BINFO_DEF "${GFXIP_DIR}/gpu_block_info.h" )
set ( BINFO_HEADER "${DEF_DIR}/gpu_block_info.h" )
set ( GFX9_TEMPL "${SCRIPT_DIR}/gfx9_def.h" )
set ( GFX9_DEF "${GFXIP_DIR}/gfx9_def.h" )
set ( GFX9_HEADER "${DEF_DIR}/gfx9_def.h" )
set ( GFX10_TEMPL "${SCRIPT_DIR}/gfx10_def.h" )
set ( GFX10_DEF "${GFXIP_DIR}/gfx10_def.h" )
set ( GFX10_HEADER "${DEF_DIR}/gfx10_def.h" )
set ( GFX11_TEMPL "${SCRIPT_DIR}/gfx11_def.h" )
set ( GFX11_DEF "${GFXIP_DIR}/gfx11_def.h" )
set ( GFX11_HEADER "${DEF_DIR}/gfx11_def.h" )
set ( GFX12_TEMPL "${SCRIPT_DIR}/gfx12_def.h" )
set ( GFX12_DEF "${GFXIP_DIR}/gfx12_def.h" )
set ( GFX12_HEADER "${DEF_DIR}/gfx12_def.h" )
include_directories ( ${ROOT_DIR} )
add_custom_target( mygenreset
COMMAND sh -xc "cp ${BINFO_TEMPL} ${BINFO_HEADER}"
COMMAND sh -xc "cp ${GFX9_TEMPL} ${GFX9_HEADER}"
COMMAND sh -xc "cp ${GFX10_TEMPL} ${GFX10_HEADER}"
COMMAND sh -xc "cp ${GFX11_TEMPL} ${GFX11_HEADER}"
COMMAND sh -xc "cp ${GFX12_TEMPL} ${GFX12_HEADER}"
)
add_custom_target( mygen
COMMAND sh -xc "cp ${BINFO_TEMPL} ${BINFO_HEADER}"
COMMAND sh -xc "cp ${GFX9_TEMPL} ${GFX9_HEADER}"
COMMAND sh -xc "cp ${GFX10_TEMPL} ${GFX10_HEADER}"
COMMAND sh -xc "cp ${GFX11_TEMPL} ${GFX11_HEADER}"
COMMAND sh -xc "cp ${GFX12_TEMPL} ${GFX12_HEADER}"
COMMAND sh -xc "sed '/gfx9_def/ s/.*//' ${GFX9_TEMPL} >${GFX9_HEADER}"
COMMAND sh -xc "${ROOT_DIR}/script/errextr.sh ${GFX9_HEADER} ${GFX9_DEF}"
COMMAND sh -xc "sed '/gfx10_def/ s/.*//' ${GFX10_TEMPL} >${GFX10_HEADER}"
COMMAND sh -xc "${ROOT_DIR}/script/errextr.sh ${GFX10_HEADER} ${GFX10_DEF}"
COMMAND sh -xc "sed '/gfx11_def/ s/.*//' ${GFX11_TEMPL} >${GFX11_HEADER}"
COMMAND sh -xc "${ROOT_DIR}/script/errextr.sh ${GFX11_HEADER} ${GFX11_DEF}"
COMMAND sh -xc "sed '/gfx12_def/ s/.*//' ${GFX12_TEMPL} >${GFX12_HEADER}"
COMMAND sh -xc "${ROOT_DIR}/script/errextr.sh ${GFX12_HEADER} ${GFX12_DEF}"
COMMAND sh -xc "head -n1 ${BINFO_TEMPL} >${BINFO_HEADER}"
COMMAND sh -xc "sed 's/_GPU_BLOCKINFO_H_/SRC_DEF_GPU_BLOCK_INFO_H_/' ${BINFO_DEF} >>${BINFO_HEADER}"
)
add_subdirectory(src/core)
if(AQLPROFILE_BUILD_TESTS)
enable_testing()
include(CTest)
add_subdirectory(src/util/tests)
add_subdirectory(src/pm4/tests)
endif()