From f288a3148a4271a453a91aa567e44e6879ac4461 Mon Sep 17 00:00:00 2001 From: Xavier Hallade Date: Fri, 28 Mar 2025 08:46:53 +0100 Subject: [PATCH 1/3] [UR][HIP] Fix headers inclusion for compiling with Visual Studio 2022 --- unified-runtime/source/adapters/hip/device.cpp | 1 + unified-runtime/source/adapters/hip/kernel.hpp | 1 + 2 files changed, 2 insertions(+) diff --git a/unified-runtime/source/adapters/hip/device.cpp b/unified-runtime/source/adapters/hip/device.cpp index 98ab6184e341a..613a8b6bbe824 100644 --- a/unified-runtime/source/adapters/hip/device.cpp +++ b/unified-runtime/source/adapters/hip/device.cpp @@ -13,6 +13,7 @@ #include "context.hpp" #include "event.hpp" +#include #include #include diff --git a/unified-runtime/source/adapters/hip/kernel.hpp b/unified-runtime/source/adapters/hip/kernel.hpp index 7c91742550ebd..97c80c32709ee 100644 --- a/unified-runtime/source/adapters/hip/kernel.hpp +++ b/unified-runtime/source/adapters/hip/kernel.hpp @@ -11,6 +11,7 @@ #include +#include #include #include #include From f83b1f681b8e054759174bfa317203cb42964af2 Mon Sep 17 00:00:00 2001 From: Xavier Hallade Date: Fri, 28 Mar 2025 08:49:27 +0100 Subject: [PATCH 2/3] [UR][HIP] Fix HIP library import on Windows --- .../source/adapters/hip/CMakeLists.txt | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/unified-runtime/source/adapters/hip/CMakeLists.txt b/unified-runtime/source/adapters/hip/CMakeLists.txt index d5c92c90ef019..d0674ad504d4e 100644 --- a/unified-runtime/source/adapters/hip/CMakeLists.txt +++ b/unified-runtime/source/adapters/hip/CMakeLists.txt @@ -110,12 +110,21 @@ if("${UR_HIP_PLATFORM}" STREQUAL "AMD") # Import HIP runtime library add_library(rocmdrv SHARED IMPORTED GLOBAL) - set_target_properties( - rocmdrv PROPERTIES - IMPORTED_LOCATION "${UR_HIP_LIB_DIR}/libamdhip64.so" - INTERFACE_INCLUDE_DIRECTORIES "${HIP_HEADERS}" - INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${HIP_HEADERS}" - ) + if(WIN32) + set_target_properties( + rocmdrv PROPERTIES + IMPORTED_IMPLIB "${UR_HIP_LIB_DIR}/amdhip64.lib" + INTERFACE_INCLUDE_DIRECTORIES "${HIP_HEADERS}" + INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${HIP_HEADERS}" + ) + else() + set_target_properties( + rocmdrv PROPERTIES + IMPORTED_LOCATION "${UR_HIP_LIB_DIR}/libamdhip64.so" + INTERFACE_INCLUDE_DIRECTORIES "${HIP_HEADERS}" + INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${HIP_HEADERS}" + ) + endif() if(UR_ENABLE_COMGR) set(UR_COMGR_VERSION5_HEADER "${UR_HIP_INCLUDE_DIR}/amd_comgr/amd_comgr.h") From a042b8483d681b2d0aa7f46dd5df4ce0c0373781 Mon Sep 17 00:00:00 2001 From: Xavier Hallade Date: Fri, 28 Mar 2025 08:57:38 +0100 Subject: [PATCH 3/3] [UR][HIP] Fix narrowing conversion of ur_context_info_t Converting ur_context_info_t (int32_t) to uint32_t was a narrowing conversion and it was making Visual Studio compiler error out during compilation. --- unified-runtime/source/adapters/hip/context.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unified-runtime/source/adapters/hip/context.cpp b/unified-runtime/source/adapters/hip/context.cpp index 30bf4743a4cc4..12c5f8348c02c 100644 --- a/unified-runtime/source/adapters/hip/context.cpp +++ b/unified-runtime/source/adapters/hip/context.cpp @@ -61,7 +61,7 @@ urContextGetInfo(ur_context_handle_t hContext, ur_context_info_t propName, UrReturnHelper ReturnValue(propSize, pPropValue, pPropSizeRet); - switch (uint32_t{propName}) { + switch (propName) { case UR_CONTEXT_INFO_NUM_DEVICES: return ReturnValue(static_cast(hContext->Devices.size())); case UR_CONTEXT_INFO_DEVICES: