moving tile shape to problem-size dependent b/c numRegisters
@@ -593,15 +593,15 @@ class Solution:
if printReason: print2("rejecting %u threads" % state["NumThreads"])
state["Valid"] = False
+ # tile shape
if state["MacroTile0"]/state["MacroTile1"] > globalParameters["MaxMacroTileRatio"] \
- or state["MacroTile1"]/state["MacroTile0"] > globalParameters["MaxMacroTileRatio"] \
- or state["ThreadTile0"]*state["ThreadTile1"]*state["ProblemType"]["DataType"].numRegisters() > globalParameters["MaxThreadTile"]:
+ or state["MacroTile1"]/state["MacroTile0"] > globalParameters["MaxMacroTileRatio"]:
state["Valid"] = False
-
-
+ # done
state["AssignedProblemIndependentDerivedParameters"] = True
+
########################################
# assign all derived parameters
@staticmethod
@@ -615,6 +615,10 @@ class Solution:
ProblemType.assignDerivedParameters(state["ProblemType"])
printReason = False
+ # tile size
+ if state["ThreadTile0"]*state["ThreadTile1"]*state["ProblemType"]["DataType"].numRegisters() > globalParameters["MaxThreadTile"]:
+ state["Valid"] = False
+
# how many elements to load
if state["ProblemType"]["TLUA"]:
totalElementsCoalescedA = state["MacroTile0"]
