Correct scratch allocation logic to account for asymmetric harvest.

With asym. harvest hw does not issue groups equally to each SE,
occasionally hw will skip an SE so that the distribution reflects
each SE's CU count.  Scratch resources must be allocated to reflect
this asymmetric distribution of groups.

Change-Id: I65e26206500483ea18e6e8796e65ecba5354b029
Tento commit je obsažen v:
Sean Keely
2022-02-28 21:03:49 -06:00
rodič cedc3e80a8
revize 552dcead93
2 změnil soubory, kde provedl 19 přidání a 6 odebrání
+1 -2
Zobrazit soubor
@@ -237,8 +237,7 @@ static __forceinline bool IsPowerOfTwo(T val) {
/// @return: T.
template <typename T>
static __forceinline T AlignDown(T value, size_t alignment) {
assert(IsPowerOfTwo(alignment));
return (T)(value & ~(alignment - 1));
return (T)((value / alignment) * alignment);
}
/// @brief: Same as previous one, but first parameter becomes pointer, for more