Skip to content

Commit 77f8a26

Browse files
Replace std::map with std::unordered_map for lookup table and fix
getArchName so it handles gfx90a.
1 parent fecd61a commit 77f8a26

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

mlir/lib/Dialect/Rock/Tuning/GridwiseGemmParams.cpp

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ class ParamLookupTable {
7171
llvm_unreachable("Invalid architecture string");
7272
}
7373
auto remaining = arch.substr(gfxPos);
74-
auto endPos = remaining.find_first_not_of("0123456789", 3);
74+
auto endPos = remaining.find_first_not_of("0123456789a", 3);
7575
return remaining.substr(0, endPos);
7676
}
7777

@@ -96,12 +96,13 @@ class ParamLookupTable {
9696
return getArchName(arch).str() + "_" + makeSuffix(op, dataType);
9797
}
9898

99-
static const std::map<std::string, ParamArray> &getTable() {
100-
static const std::map<std::string, ParamArray> table = buildTable();
99+
static const std::unordered_map<std::string, ParamArray> &getTable() {
100+
static const std::unordered_map<std::string, ParamArray> table =
101+
buildTable();
101102
return table;
102103
}
103104

104-
static std::map<std::string, ParamArray> buildTable();
105+
static std::unordered_map<std::string, ParamArray> buildTable();
105106
};
106107

107108
} // anonymous namespace
@@ -820,7 +821,8 @@ Attribute PopulateParamsWmma::getGemmParamsAttr(
820821
namespace {
821822

822823
template <>
823-
std::map<std::string, ParamLookupTable<InitParamsNonAccel>::ParamArray>
824+
std::unordered_map<std::string,
825+
ParamLookupTable<InitParamsNonAccel>::ParamArray>
824826
ParamLookupTable<InitParamsNonAccel>::buildTable() {
825827
return {
826828
#define NonAccel_LOOKUP_TABLE_GEN
@@ -831,7 +833,7 @@ ParamLookupTable<InitParamsNonAccel>::buildTable() {
831833

832834
// Specialization for Accel (XDL/WMMA) parameters
833835
template <>
834-
std::map<std::string, ParamLookupTable<InitParamsAccel>::ParamArray>
836+
std::unordered_map<std::string, ParamLookupTable<InitParamsAccel>::ParamArray>
835837
ParamLookupTable<InitParamsAccel>::buildTable() {
836838
return {
837839
#define Accel_LOOKUP_TABLE_GEN

0 commit comments

Comments
 (0)