Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add more passes to the MOC backend #6749

Merged

Conversation

GlebKazantaev
Copy link
Contributor

@GlebKazantaev GlebKazantaev commented Jul 21, 2021

Description

Enable additional plugin independent fusions into MOC backend phase. Validation shows that this transformations additionally optimize graphs. For example MVN fusion pass fuse a lot of sub-graphs in bert models family. Also Clamp fusion sucessfully works on some super resolution networks. All other passes have implementation inside MO legacy frontends so they currently doesn't optimize graphs but they will be necessary for new frontends.

nGraph Transformations Transition Status

Click to expand!
FINAL MOC PIPELINE CURRENT MOC PIPELINE
InitNodeInfo InitNodeInfo
ConstantFolding
SimplifyShapeOfSubGraph SimplifyShapeOfSubGraph
RemoveFilteringBoxesBySize RemoveFilteringBoxesBySize
ConvertQuantizeDequantize ConvertQuantizeDequantize
TransposeFQReduction
TransposeReduction
TransposeFuse
SplitSqueezeConcatFusion
EliminateUnsqueezeGather EliminateUnsqueezeGather
ConvertScatterElementsToScatter ConvertScatterElementsToScatter
BroadcastElementwiseFusion
SoftPlusFusion SoftPlusFusion
SoftPlusToMishFusion SoftPlusToMishFusion
SwishFusion SwishFusion
HSwishFusion HSwishFusion
HSigmoidFusion HSigmoidFusion
NormalizeL2Fusion
ClampFusion ClampFusion
PadFusion PadFusion
SoftmaxFusion
MVNFusion MVNFusion
DilatedConvolutionConverter DilatedConvolutionConverter
GeluFusion GeluFusion
BinarizeWeights BinarizeWeights
ConvToBinaryConv ConvToBinaryConv
LinOpSequenceFusion
ConvolutionMultiplyFusion
GroupConvolutionMultiplyFusion
ConvolutionBackpropDataMultiplyFusion
GroupConvolutionBackpropDataMultiplyFusion

Note: transformations marked as bold were enabled in current PR

@GlebKazantaev GlebKazantaev marked this pull request as ready for review July 22, 2021 22:39
@GlebKazantaev GlebKazantaev requested review from a team, lazarevevgeny and jane-intel and removed request for a team July 22, 2021 22:39
@GlebKazantaev GlebKazantaev requested a review from ilyachur July 23, 2021 08:51
@ilyachur
Copy link
Contributor

Should we have new MO tests?

@GlebKazantaev
Copy link
Contributor Author

Should we have new MO tests?

All this MO Backend transformation part is covered by e2e validation and DL Benchmark validation scope. Also each ngraph transformation has already existing functional tests.

@GlebKazantaev GlebKazantaev merged commit 83a3e08 into openvinotoolkit:master Jul 26, 2021
rnugmanx pushed a commit to rnugmanx/openvino that referenced this pull request Aug 26, 2021
andrei-cv pushed a commit to andrei-cv/openvino that referenced this pull request Aug 30, 2021
akuporos pushed a commit to akuporos/openvino that referenced this pull request Sep 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants