已合并
修复Gru算子执行报错问题 #9449
chenyifeng创建于 9 天前
修复Gru算子执行报错问题 #9449
已合并
共 1 个文件变更+4-1
| @@ -124,7 +124,10 @@ ge::graphStatus GruTilingOp::GetVectorTiling() | |||
| 124 | auto ubSplit = (gruParams_.dataType == 2 ? 6 : 5) + multiple; | 124 | auto ubSplit = (gruParams_.dataType == 2 ? 6 : 5) + multiple; |
| 125 | auto BLOCK_SIZE = 32; | 125 | auto BLOCK_SIZE = 32; |
| 126 | auto partUb = ((gruParams_.ubSize / ubSplit) + BLOCK_SIZE - 1) / BLOCK_SIZE * BLOCK_SIZE / 4; | 126 | auto partUb = ((gruParams_.ubSize / ubSplit) + BLOCK_SIZE - 1) / BLOCK_SIZE * BLOCK_SIZE / 4; |
| 127 | - gruParams_.baseN = gruParams_.singleCoreN < partUb ? gruParams_.singleCoreN : partUb; | 127 | + auto calBlockSize = BLOCK_SIZE / gruParams_.dataType; |
| 128 | + partUb = partUb / calBlockSize * calBlockSize; | ||
| 129 | + auto singleCoreNAlign = Ops::Base::CeilDiv(gruParams_.singleCoreN, calBlockSize) * calBlockSize; | ||
| 130 | + gruParams_.baseN = singleCoreNAlign < partUb ? singleCoreNAlign : partUb; | ||
| 128 | gruParams_.baseM = partUb / gruParams_.baseN < gruParams_.singleCoreM ? partUb / gruParams_.baseN : | 131 | gruParams_.baseM = partUb / gruParams_.baseN < gruParams_.singleCoreM ? partUb / gruParams_.baseN : |
| 129 | gruParams_.singleCoreM; | 132 | gruParams_.singleCoreM; |
| 130 | 133 | ||