From 20add33513de67b3344fdc104a4917519633d40d Mon Sep 17 00:00:00 2001 From: Jatin Chaudhary Date: Mon, 24 Jul 2023 19:28:08 +0100 Subject: [PATCH] SWDEV-264166 - [ABI Break] goodbye gcnArch, hello gcnArchName Change-Id: I4b31284243a801f92f0be9468c25db7d027d9a13 [ROCm/clr commit: f136a576f566f37df03703f5f914c051d095b481] --- .../hipamd/include/hip/nvidia_detail/nvidia_hip_runtime_api.h | 1 - projects/clr/hipamd/src/hip_device.cpp | 2 -- projects/clr/hipamd/src/hip_peer.cpp | 4 +++- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/projects/clr/hipamd/include/hip/nvidia_detail/nvidia_hip_runtime_api.h b/projects/clr/hipamd/include/hip/nvidia_detail/nvidia_hip_runtime_api.h index a6331d9fc9..72e2c5271e 100644 --- a/projects/clr/hipamd/include/hip/nvidia_detail/nvidia_hip_runtime_api.h +++ b/projects/clr/hipamd/include/hip/nvidia_detail/nvidia_hip_runtime_api.h @@ -2034,7 +2034,6 @@ inline static hipError_t hipGetDeviceProperties(hipDeviceProp_t* p_prop, int dev p_prop->maxSharedMemoryPerMultiProcessor = cdprop.sharedMemPerMultiprocessor; p_prop->isMultiGpuBoard = cdprop.isMultiGpuBoard; p_prop->canMapHostMemory = cdprop.canMapHostMemory; - p_prop->gcnArch = 0; // Not a GCN arch p_prop->integrated = cdprop.integrated; p_prop->cooperativeLaunch = cdprop.cooperativeLaunch; p_prop->cooperativeMultiDeviceLaunch = cdprop.cooperativeMultiDeviceLaunch; diff --git a/projects/clr/hipamd/src/hip_device.cpp b/projects/clr/hipamd/src/hip_device.cpp index 268e2ca815..f114a8fd91 100644 --- a/projects/clr/hipamd/src/hip_device.cpp +++ b/projects/clr/hipamd/src/hip_device.cpp @@ -337,8 +337,6 @@ hipError_t ihipGetDeviceProperties(hipDeviceProp_t* props, hipDevice_t device) { deviceProps.pciDeviceID = info.deviceTopology_.pcie.device; deviceProps.maxSharedMemoryPerMultiProcessor = info.localMemSizePerCU_; deviceProps.canMapHostMemory = 1; - // FIXME: This should be removed, targets can have character names as well. - deviceProps.gcnArch = isa.versionMajor() * 100 + isa.versionMinor() * 10 + isa.versionStepping(); sprintf(deviceProps.gcnArchName, "%s", isa.targetId()); deviceProps.cooperativeLaunch = info.cooperativeGroups_; deviceProps.cooperativeMultiDeviceLaunch = info.cooperativeMultiDeviceGroups_; diff --git a/projects/clr/hipamd/src/hip_peer.cpp b/projects/clr/hipamd/src/hip_peer.cpp index 17dc65da05..4a7b8e4db1 100644 --- a/projects/clr/hipamd/src/hip_peer.cpp +++ b/projects/clr/hipamd/src/hip_peer.cpp @@ -151,7 +151,9 @@ hipError_t hipDeviceGetP2PAttribute(int* value, hipDeviceP2PAttr attr, // Linear layout access is supported if P2P is enabled // Opaque Images are supported only on homogeneous systems // Might have more conditions to check, in future. - if (srcDeviceProp.gcnArch == dstDeviceProp.gcnArch) { + if ((0 == + strncmp(srcDeviceProp.gcnArchName, dstDeviceProp.gcnArchName, + sizeof(srcDeviceProp.gcnArchName)))) { HIP_RETURN_ONFAIL(canAccessPeer(value, srcDevice, dstDevice)); } else { *value = 0;