已合并
修复Gru算子执行报错问题 #9449
chenyifeng创建于 9 天前
修复Gru算子执行报错问题 #9449
已合并
chenyifeng创建于 9 天前
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