Update to use rocprofiler-sdk (#55)
- Renames the CMake option "ROCPROFSYS_USE_HIP" to "ROCPROFSYS_USE_ROCM" - Remove the "ROCPROFSYS_USE_ROCM_SMI option. Controlled with the "ROCPROFSYS_USE_ROCM" option, instead. - Runtime configuration can still toggle ROCPROFSYS_USE_ROCM_SMI to disable the sampling. - Rename ROCPROFSYS_HIP_VERSION macro to ROCPROFSYS_ROCM_VERSION and remove blocks for `ROCPROFSYS_ROCM_VERSION < 60000` - Remove ROCPROFSYS_USE_ROCTRACER and ROCPROFSYS_USE_ROCPROFILER - Update test cases - Update docker files and workflows to install cmake 3.21, which is required for the rocprofiler-sdk findPackage script. - Removed rocm-6.2 from workflows due to a rocprofiler-sdk API change.
This commit is contained in:
@@ -35,6 +35,8 @@ target_link_libraries(
|
||||
timemory::timemory-extensions
|
||||
timemory::timemory-core)
|
||||
|
||||
add_target_flag_if_avail(rocprofiler-systems-instrument "-Wno-deprecated-declarations")
|
||||
|
||||
set_target_properties(
|
||||
rocprofiler-systems-instrument
|
||||
PROPERTIES BUILD_RPATH "\$ORIGIN:\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}"
|
||||
|
||||
@@ -312,13 +312,25 @@ get_internal_basic_libs_impl()
|
||||
"liblzma.so" };
|
||||
|
||||
// shared libraries used by rocprof-sys
|
||||
const auto _omni_libs = strview_init_t{
|
||||
"libstdc++.so.6", "libgotcha.so", "libunwind-coredump.so",
|
||||
"libunwind-generic.so", "libunwind-ptrace.so", "libunwind-setjmp.so",
|
||||
"libunwind.so", "libunwind-x86_64.so", "librocm_smi64.so",
|
||||
"libroctx64.so", "librocmtools.so", "libroctracer64.so",
|
||||
"librocprofiler64.so", "libpapi.so", "libpfm.so"
|
||||
};
|
||||
const auto _omni_libs = strview_init_t{ "libstdc++.so.6",
|
||||
"libgotcha.so",
|
||||
"libunwind-coredump.so",
|
||||
"libunwind-generic.so",
|
||||
"libunwind-ptrace.so",
|
||||
"libunwind-setjmp.so",
|
||||
"libunwind.so",
|
||||
"libunwind-x86_64.so",
|
||||
"librocm_smi64.so",
|
||||
"libroctx64.so",
|
||||
"librocmtools.so",
|
||||
"libroctracer64.so",
|
||||
"librocprofiler64.so",
|
||||
"libpapi.so",
|
||||
"libpfm.so",
|
||||
"librocprofiler-register.so",
|
||||
"librocprofiler-sdk.so",
|
||||
"librocprofiler-sdk-roctx.so",
|
||||
"libamd_smi.so" };
|
||||
|
||||
// shared libraries potentially used by timemory
|
||||
const auto _3rdparty_libs = strview_init_t{ "libcaliper.so",
|
||||
|
||||
@@ -357,10 +357,12 @@ main(int argc, char** argv)
|
||||
itr.find("rocprof-sys") != std::string::npos ||
|
||||
itr.find("rocprofiler-systems") != std::string::npos ||
|
||||
std::regex_search(
|
||||
itr, std::regex{ "lib(dyninstAPI|stackwalk|pcontrol|patchAPI|parseAPI|"
|
||||
"instructionAPI|symtabAPI|dynDwarf|common|dynElf|tbb|"
|
||||
"tbbmalloc|tbbmalloc_proxy|gotcha|libunwind|roctracer|"
|
||||
"hsa-runtime|amdhip|rocm_smi)\\.(so|a)" }))
|
||||
itr, std::regex{
|
||||
"lib(dyninstAPI|stackwalk|pcontrol|patchAPI|parseAPI|"
|
||||
"instructionAPI|symtabAPI|dynDwarf|common|dynElf|tbb|tbbmalloc|"
|
||||
"tbbmalloc_proxy|gotcha|libunwind|roctracer64|hsa-runtime|amdhip|"
|
||||
"amd_comgr|rocm_smi64|rocprofiler64|rocprofiler-register|"
|
||||
"rocprofiler-sdk|rocprofiler-sdk-roctx|amd_smi)\\.(so|a)" }))
|
||||
{
|
||||
if(!find(filepath::dirname(itr), lib_search_paths))
|
||||
lib_search_paths.emplace_back(filepath::dirname(itr));
|
||||
|
||||
Reference in New Issue
Block a user