-
Notifications
You must be signed in to change notification settings - Fork 81
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
1cc2d55
commit 4040915
Showing
6 changed files
with
211 additions
and
92 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,8 @@ | ||
ld-linux-x86-64.so.2 | ||
libamdhip64.so.5 | ||
libamdhip64.so.6 | ||
libc.so.6 | ||
libgcc_s.so.1 | ||
libhiprtc.so.5 | ||
libhiprtc.so.6 | ||
libm.so.6 | ||
libsqlite3.so.0 | ||
libstdc++.so.6 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
77 changes: 77 additions & 0 deletions
77
packages/r/rocfft/files/0001-Extend-HIP-ISA-compatibility.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
From 29146d4505403226ec238b235df1ddab7e603746 Mon Sep 17 00:00:00 2001 | ||
From: Gavin Zhao <git@gzgz.dev> | ||
Date: Sun, 18 Feb 2024 16:11:08 -0500 | ||
Subject: [PATCH] Extend HIP ISA compatibility | ||
|
||
Signed-off-by: Gavin Zhao <git@gzgz.dev> | ||
--- | ||
library/src/include/tree_node.h | 36 +++++++++++++++++++++++++-------- | ||
1 file changed, 28 insertions(+), 8 deletions(-) | ||
|
||
diff --git a/library/src/include/tree_node.h b/library/src/include/tree_node.h | ||
index 5255915..23e4fea 100644 | ||
--- a/library/src/include/tree_node.h | ||
+++ b/library/src/include/tree_node.h | ||
@@ -81,6 +81,33 @@ struct GridParam | ||
} | ||
}; | ||
|
||
+static bool is_device_gcn_arch(const hipDeviceProp_t& prop, const std::string& cmpTarget) | ||
+{ | ||
+ std::string archName(prop.gcnArchName); | ||
+ | ||
+ if (cmpTarget == "gfx1030" && archName.find("gfx103") != std::string::npos) | ||
+ { | ||
+ return true; | ||
+ } | ||
+ else if (cmpTarget == "gfx1010" && archName.find("gfx101") != std::string::npos) | ||
+ { | ||
+ return true; | ||
+ } | ||
+ else if (cmpTarget == "gfx900") | ||
+ { | ||
+ auto pos = archName.find("gfx90"); | ||
+ const auto cmpIdx = cmpTarget.size() - 1; | ||
+ if (pos != std::string::npos && pos + cmpIdx < archName.size()) | ||
+ { | ||
+ return archName.at(pos + cmpIdx) == '0' || archName.at(pos + cmpIdx) == '2' || archName.at(pos + cmpIdx) == '9' || archName.at(pos + cmpIdx) == 'c'; | ||
+ } | ||
+ } | ||
+ else | ||
+ { | ||
+ return archName.find(cmpTarget) != std::string::npos; | ||
+ } | ||
+} | ||
+ | ||
// get the arch name, as a part of key of solution map | ||
static std::string get_arch_name(const hipDeviceProp_t& prop) | ||
{ | ||
@@ -98,11 +125,10 @@ static std::string get_arch_name(const hipDeviceProp_t& prop) | ||
"gfx1102"}; | ||
|
||
static const std::string anyArch("any"); | ||
- std::string archName(prop.gcnArchName); | ||
|
||
for(const auto& arch : arch_list) | ||
{ | ||
- if(archName.find(arch) != std::string::npos) | ||
+ if(is_device_gcn_arch(prop, arch)) | ||
return arch; | ||
} | ||
|
||
@@ -110,12 +136,6 @@ static std::string get_arch_name(const hipDeviceProp_t& prop) | ||
return anyArch; | ||
} | ||
|
||
-static bool is_device_gcn_arch(const hipDeviceProp_t& prop, const std::string& cmpTarget) | ||
-{ | ||
- std::string archName(prop.gcnArchName); | ||
- return archName.find(cmpTarget) != std::string::npos; | ||
-} | ||
- | ||
static bool is_diagonal_sbrc_3D_length(size_t len) | ||
{ | ||
// SBRC diagonal-transpose dimensions are currently 128, 256 | ||
-- | ||
2.43.0 | ||
|
Oops, something went wrong.