diff options
author | Georgios Pinitas <georgios.pinitas@arm.com> | 2018-11-12 18:36:19 +0000 |
---|---|---|
committer | Georgios Pinitas <georgios.pinitas@arm.com> | 2018-11-14 16:00:45 +0000 |
commit | 1c32bf396eb690a54fd94487e3f258b2c7d31753 (patch) | |
tree | 83dafe008fe428133c1c531cd179e4cad256ef5c /src/graph/Utils.cpp | |
parent | 6c7c38e70c795077ba727aadeefc670888bec089 (diff) | |
download | ComputeLibrary-1c32bf396eb690a54fd94487e3f258b2c7d31753.tar.gz |
COMPMID-1451: Perform fusion before GroupConvolution unrolling
Change-Id: Id94fb9c88a498d7b938f4f707e2e7b9b6df94880
Diffstat (limited to 'src/graph/Utils.cpp')
-rw-r--r-- | src/graph/Utils.cpp | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/src/graph/Utils.cpp b/src/graph/Utils.cpp index 0a85a7f119..71ec548f8a 100644 --- a/src/graph/Utils.cpp +++ b/src/graph/Utils.cpp @@ -78,20 +78,16 @@ PassManager create_default_pass_manager(Target target) { PassManager pm; + const bool is_target_gc = target == Target::GC; + // Passes that mutate graph IR + pm.append(support::cpp14::make_unique<NodeFusionMutator>(), !is_target_gc); pm.append(support::cpp14::make_unique<GroupedConvolutionMutator>()); - if(target != Target::GC) - { - pm.append(support::cpp14::make_unique<NodeFusionMutator>()); - pm.append(support::cpp14::make_unique<InPlaceOperationMutator>()); - } + pm.append(support::cpp14::make_unique<InPlaceOperationMutator>(), !is_target_gc); // Passes that mutate backend information - if(target != Target::GC) - { - pm.append(support::cpp14::make_unique<DepthConcatSubTensorMutator>()); - pm.append(support::cpp14::make_unique<SplitLayerSubTensorMutator>()); - } + pm.append(support::cpp14::make_unique<DepthConcatSubTensorMutator>(), !is_target_gc); + pm.append(support::cpp14::make_unique<SplitLayerSubTensorMutator>(), !is_target_gc); pm.append(support::cpp14::make_unique<NodeExecutionMethodMutator>()); return pm; |