Browse Source

fix bug in formatTrans+transpose fusion

tags/v0.7.0-beta
hangq 5 years ago
parent
commit
90b55937fe
2 changed files with 11 additions and 12 deletions
  1. +10
    -11
      mindspore/lite/tools/converter/graphdef_transform.cc
  2. +1
    -1
      mindspore/lite/tools/converter/legacy_optimizer/fusion/format_trans_transpose_fusion_pass.cc

+ 10
- 11
mindspore/lite/tools/converter/graphdef_transform.cc View File

@@ -97,17 +97,6 @@ void GraphDefTransform::CreateQuantizer(const converter::Flags *flags) {

int GraphDefTransform::Transform(const converter::Flags &ctx) {
STATUS status;
{
Optimizer fusionOptimizer;
fusionOptimizer.AddPass(new (std::nothrow) FormatTransPermuteFusionPass());
fusionOptimizer.AddPass(new (std::nothrow) IsolatedNodeRemovePass());
status = fusionOptimizer.Run(graphDefT);
if (status != RET_OK && status != RET_NO_CHANGE) {
MS_LOG(ERROR) << "Run fusionOptimizer graphPasses Failed";
return status;
}
}

// weight format trans
if (ctx.formatTrans) {
Optimizer weightFormatOptimizer;
@@ -195,6 +184,16 @@ int GraphDefTransform::Transform(const converter::Flags &ctx) {
return status;
}
}
{
Optimizer fusionOptimizer;
fusionOptimizer.AddPass(new (std::nothrow) FormatTransPermuteFusionPass());
fusionOptimizer.AddPass(new (std::nothrow) IsolatedNodeRemovePass());
status = fusionOptimizer.Run(graphDefT);
if (status != RET_OK && status != RET_NO_CHANGE) {
MS_LOG(ERROR) << "Run fusionOptimizer graphPasses Failed";
return status;
}
}

// do quantization
if (fbQuantizer != nullptr) {


+ 1
- 1
mindspore/lite/tools/converter/legacy_optimizer/fusion/format_trans_transpose_fusion_pass.cc View File

@@ -58,7 +58,7 @@ STATUS FormatTransPermuteFusionPass::DefinePattern() {
formatTransOp->types = {PrimitiveType_Nchw2Nhwc, PrimitiveType_Nhwc2Nchw};
auto transposeOp = std::make_shared<PatternOp>();
transposeOp->id = kPermuteOp;
transposeOp->types = {PrimitiveType_Permute};
transposeOp->types = {PrimitiveType_Transpose};

formatTransOp->left = transposeOp;
std::unique_ptr<FusionPattern> transposeFormatTransFusionPattern(


Loading…
Cancel
Save