diff --git a/projects/roctracer/src/core/loader.h b/projects/roctracer/src/core/loader.h index bf3530c2ab..dfddb11a20 100644 --- a/projects/roctracer/src/core/loader.h +++ b/projects/roctracer/src/core/loader.h @@ -42,6 +42,7 @@ class BaseLoader : public T { } static loader_t* GetRef() { return instance_; } + static void SetLibName(const char *name) { lib_name_ = name; } private: BaseLoader(bool preload) { diff --git a/projects/roctracer/src/core/roctracer.cpp b/projects/roctracer/src/core/roctracer.cpp index 7c38dcc3b3..8fd429448b 100644 --- a/projects/roctracer/src/core/roctracer.cpp +++ b/projects/roctracer/src/core/roctracer.cpp @@ -1048,8 +1048,11 @@ PUBLIC_API roctracer_status_t roctracer_set_properties( break; } case ACTIVITY_DOMAIN_HCC_OPS: - case ACTIVITY_DOMAIN_HIP_API: + case ACTIVITY_DOMAIN_HIP_API: { + const char* hip_backend_lib_name = getenv("HIP_BACKEND_LIB"); + if (hip_backend_lib_name != NULL) roctracer::HccLoader::Instance().SetLibName(hip_backend_lib_name); mark_api_callback_ptr = reinterpret_cast(properties); + } default: EXC_RAISING(ROCTRACER_STATUS_BAD_DOMAIN, "invalid domain ID(" << domain << ")"); }