diff --git a/ethosu/regor/architecture/ethosu85/ethos_u85.cpp b/ethosu/regor/architecture/ethosu85/ethos_u85.cpp index 40070b88d90cfc4e7a761103dc5c3049f6809cf4..4d37a8003499ff5539bf1ed12099ff5b91ddfe62 100644 --- a/ethosu/regor/architecture/ethosu85/ethos_u85.cpp +++ b/ethosu/regor/architecture/ethosu85/ethos_u85.cpp @@ -776,7 +776,7 @@ Shape ArchEthosU85::AreaFit(const FindConfigCommon &common, const Shape &ofmShap } // Didn't fit both ACC & IB, reduce the volume and retry - double ratio = std::min(ibRatio * ibRatio, abRatio); + double ratio = std::min(ibRatio, abRatio); int newAcc = GranularScale(fitAcc, ubAccElements, ratio); // Ratio didn't scale if ( newAcc == fitAcc ) @@ -784,7 +784,7 @@ Shape ArchEthosU85::AreaFit(const FindConfigCommon &common, const Shape &ofmShap newAcc = fitAcc - ubAccElements; } // No fit - if ( newAcc <= ubAccElements ) + if ( newAcc < ubAccElements ) { break; }