From bb1f4a2224fb43d0eeca27cbb5ac93950dc06dd3 Mon Sep 17 00:00:00 2001 From: Tom Rix Date: Fri, 6 Dec 2024 14:08:27 -0800 Subject: [PATCH] More gfx1151 --- Tensile/Common.py | 2 +- Tensile/Source/CMakeLists.txt | 4 ++-- Tensile/Source/lib/include/Tensile/AMDGPU.hpp | 9 ++++++++- .../Source/lib/include/Tensile/PlaceholderLibrary.hpp | 3 +++ Tensile/Source/lib/source/ocl/OclUtils.cpp | 4 ++++ 5 files changed, 18 insertions(+), 4 deletions(-) diff --git a/Tensile/Common.py b/Tensile/Common.py index 79ae322ad926..ce7c8218d850 100644 --- a/Tensile/Common.py +++ b/Tensile/Common.py @@ -2459,7 +2459,7 @@ def assignGlobalParameters( config ): if os.name == "nt": globalParameters["CurrentISA"] = (9,0,6) printWarning("Failed to detect ISA so forcing (gfx906) on windows") - isasWithDisabledHWMonitor = ((9,4,1), (9,4,2), (11,0,0), (11,0,1), (11,0,2), (12,0,0), (12,0,1)) + isasWithDisabledHWMonitor = ((9,4,1), (9,4,2), (11,0,0), (11,0,1), (11,0,2), (11,5,1), (12,0,0), (12,0,1)) if globalParameters["CurrentISA"] in isasWithDisabledHWMonitor: isaString = ', '.join(map(gfxName, isasWithDisabledHWMonitor)) printWarning(f"HardwareMonitor currently disabled for {isaString}") diff --git a/Tensile/Source/CMakeLists.txt b/Tensile/Source/CMakeLists.txt index e02b209a262a..f350b26caf7f 100644 --- a/Tensile/Source/CMakeLists.txt +++ b/Tensile/Source/CMakeLists.txt @@ -51,9 +51,9 @@ if(CMAKE_CXX_COMPILER MATCHES ".*/hipcc$" OR CMAKE_CXX_COMPILER MATCHES ".*clang endif() if(CMAKE_CXX_COMPILER STREQUAL "hipcc") - set(TENSILE_GPU_ARCHS gfx803 gfx900 gfx906:xnack- gfx908:xnack- gfx90a:xnack- gfx1010 gfx1011 gfx1012 gfx1030 gfx1031 gfx1032 gfx1034 gfx1035 gfx1100 gfx1101 gfx1102 CACHE STRING "GPU architectures") + set(TENSILE_GPU_ARCHS gfx803 gfx900 gfx906:xnack- gfx908:xnack- gfx90a:xnack- gfx1010 gfx1011 gfx1012 gfx1030 gfx1031 gfx1032 gfx1034 gfx1035 gfx1100 gfx1101 gfx1102 gfx1151 CACHE STRING "GPU architectures") else() - set(TENSILE_GPU_ARCHS gfx803 gfx900 gfx906 gfx908 gfx90a gfx1010 gfx1011 gfx1012 gfx1030 gfx1031 gfx1032 gfx1034 gfx1035 gfx1100 gfx1101 gfx1102 CACHE STRING "GPU architectures") + set(TENSILE_GPU_ARCHS gfx803 gfx900 gfx906 gfx908 gfx90a gfx1010 gfx1011 gfx1012 gfx1030 gfx1031 gfx1032 gfx1034 gfx1035 gfx1100 gfx1101 gfx1102 gfx1151 CACHE STRING "GPU architectures") endif() include(CMakeDependentOption) diff --git a/Tensile/Source/lib/include/Tensile/AMDGPU.hpp b/Tensile/Source/lib/include/Tensile/AMDGPU.hpp index 0ab8ced5cf5d..d83ee830d1da 100644 --- a/Tensile/Source/lib/include/Tensile/AMDGPU.hpp +++ b/Tensile/Source/lib/include/Tensile/AMDGPU.hpp @@ -73,7 +73,8 @@ namespace Tensile gfx1035 = 1035, gfx1100 = 1100, gfx1101 = 1101, - gfx1102 = 1102 + gfx1102 = 1102, + gfx1151 = 1151 }; static std::string toString(Processor p) @@ -118,6 +119,8 @@ namespace Tensile return "gfx1101"; case AMDGPU::Processor::gfx1102: return "gfx1102"; + case AMDGPU::Processor::gfx1151: + return "gfx1151"; } return ""; } @@ -184,6 +187,10 @@ namespace Tensile { return AMDGPU::Processor::gfx1102; } + else if(deviceString.find("gfx1151") != std::string::npos) + { + return AMDGPU::Processor::gfx1151; + } else { return static_cast(0); diff --git a/Tensile/Source/lib/include/Tensile/PlaceholderLibrary.hpp b/Tensile/Source/lib/include/Tensile/PlaceholderLibrary.hpp index 10898ec2d1d6..f83713c04430 100644 --- a/Tensile/Source/lib/include/Tensile/PlaceholderLibrary.hpp +++ b/Tensile/Source/lib/include/Tensile/PlaceholderLibrary.hpp @@ -58,6 +58,7 @@ namespace Tensile gfx1100, gfx1101, gfx1102, + gfx1151, All }; @@ -106,6 +107,8 @@ namespace Tensile return "TensileLibrary_*_gfx1101"; case LazyLoadingInit::gfx1102: return "TensileLibrary_*_gfx1102"; + case LazyLoadingInit::gfx1151: + return "TensileLibrary_*_gfx1151"; case LazyLoadingInit::None: return ""; } diff --git a/Tensile/Source/lib/source/ocl/OclUtils.cpp b/Tensile/Source/lib/source/ocl/OclUtils.cpp index 8ee6d21769f0..ff04c56a1025 100644 --- a/Tensile/Source/lib/source/ocl/OclUtils.cpp +++ b/Tensile/Source/lib/source/ocl/OclUtils.cpp @@ -188,6 +188,10 @@ namespace Tensile { return AMDGPU::Processor::gfx1102; } + else if(deviceString.find("gfx1151") != std::string::npos) + { + return AMDGPU::Processor::gfx1151; + } else { return static_cast(0); -- 2.47.1