From 218d9d2a30f0664e53b86c310b49d044cc131c04 Mon Sep 17 00:00:00 2001 From: David Yat Sin Date: Thu, 24 Aug 2023 18:36:34 +0000 Subject: [PATCH] Add support for HSA_OVERRIDE_GFX_VERSION env var Change-Id: Iab75cbbba7da654dbf56f4206900d9c2ff5e4565 [ROCm/rocminfo commit: 3670ff21036a4d8fdf2481a3ad0f8644f478f060] --- projects/rocminfo/rocm_agent_enumerator | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/projects/rocminfo/rocm_agent_enumerator b/projects/rocminfo/rocm_agent_enumerator index b901e47012..33538df4d3 100755 --- a/projects/rocminfo/rocm_agent_enumerator +++ b/projects/rocminfo/rocm_agent_enumerator @@ -209,9 +209,28 @@ def readFromKFD(): if search_result is not None: device_id = int(search_result.group(0).split(' ')[1], 10) if device_id != 0: - major_ver = int((device_id / 10000) % 100) - minor_ver = int((device_id / 100) % 100) - stepping_ver = int(device_id % 100) + gfx_override = os.environ.get("HSA_OVERRIDE_GFX_VERSION") + if gfx_override is not None: + try: + override_tokens = gfx_override.split('.') + major_ver=int(override_tokens[0]) + minor_ver=int(override_tokens[1]) + stepping_ver=int(override_tokens[2]) + if major_ver > 63 or minor_ver > 255 or stepping_ver > 255: + print('Invalid HSA_OVERRIDE_GFX_VERSION value') + major_ver = 0 + minor_ver = 0 + stepping_ver = 0 + except Exception as e: + print('Invalid HSA_OVERRIDE_GFX_VERSION format expected \"1.2.3\"') + major_ver = 0 + minor_ver = 0 + stepping_ver = 0 + else: + major_ver = int((device_id / 10000) % 100) + minor_ver = int((device_id / 100) % 100) + stepping_ver = int(device_id % 100) + target_list.append("gfx" + format(major_ver, 'd') + format(minor_ver, 'x') + format(stepping_ver, 'x')) line = f.readline()