From 553a4c7ee76074a60ec82a922716bf869715f5b4 Mon Sep 17 00:00:00 2001 From: Ammar ELWazir Date: Fri, 18 Nov 2022 16:10:18 -0600 Subject: [PATCH] GPU Index to use HSA AMD Agent Driver Node ID Change-Id: Ia814f64419615f1d77fc09fc88f11bbaf75afd45 --- src/util/hsa_rsrc_factory.cpp | 8 +++++++- test/util/hsa_rsrc_factory.cpp | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/util/hsa_rsrc_factory.cpp b/src/util/hsa_rsrc_factory.cpp index 6d60882b23..50d4ec1eb6 100644 --- a/src/util/hsa_rsrc_factory.cpp +++ b/src/util/hsa_rsrc_factory.cpp @@ -366,7 +366,13 @@ const AgentInfo* HsaRsrcFactory::AddAgentInfo(const hsa_agent_t agent) { agent_info->vgpr_block_size = 4; // Set GPU index - agent_info->dev_index = gpu_list_.size(); + uint32_t driver_node_id; + status = hsa_api_.hsa_agent_get_info( + agent, + static_cast(HSA_AMD_AGENT_INFO_DRIVER_NODE_ID), + &driver_node_id); + CHECK_STATUS("hsa_agent_get_info(gpu hsa_driver_node_id)", status); + agent_info->dev_index = driver_node_id; gpu_list_.push_back(agent_info); gpu_agents_.push_back(agent); } diff --git a/test/util/hsa_rsrc_factory.cpp b/test/util/hsa_rsrc_factory.cpp index f20e66f057..21f340e0d5 100644 --- a/test/util/hsa_rsrc_factory.cpp +++ b/test/util/hsa_rsrc_factory.cpp @@ -355,7 +355,13 @@ const AgentInfo* HsaRsrcFactory::AddAgentInfo(const hsa_agent_t agent) { CHECK_ITER_STATUS("hsa_amd_agent_iterate_memory_pools(gpu pool)", status); // Set GPU index - agent_info->dev_index = gpu_list_.size(); + uint32_t driver_node_id; + status = hsa_api_.hsa_agent_get_info( + agent, + static_cast(HSA_AMD_AGENT_INFO_DRIVER_NODE_ID), + &driver_node_id); + CHECK_STATUS("hsa_agent_get_info(gpu hsa_driver_node_id)", status); + agent_info->dev_index = driver_node_id; gpu_list_.push_back(agent_info); gpu_agents_.push_back(agent); }