2020from nncf .common .graph .operator_metatypes import OperatorMetatypeRegistry
2121from nncf .common .graph .operator_metatypes import UnknownMetatype
2222from nncf .common .hardware .opset import HWConfigOpName
23+ from nncf .openvino .graph .layout import OVLayoutElem
2324
2425OV_OPERATOR_METATYPES = OperatorMetatypeRegistry ("openvino_operator_metatypes" )
2526
@@ -58,7 +59,8 @@ class OVConvolutionMetatype(OVOpMetatype):
5859 name = "ConvOp"
5960 op_names = ["Convolution" ]
6061 hw_config_names = [HWConfigOpName .CONVOLUTION ]
61- const_channel_axis = [0 ] # const layout: [C_OUT, C_IN, Z, Y, X]
62+ const_channel_axis = [0 ]
63+ const_layout = [OVLayoutElem .C_OUT , OVLayoutElem .C_IN ]
6264 output_channel_axis = 1
6365
6466
@@ -67,7 +69,8 @@ class OVConvolutionBackpropDataMetatype(OVOpMetatype):
6769 name = "ConvBackpropDataOp"
6870 op_names = ["ConvolutionBackpropData" ]
6971 hw_config_names = [HWConfigOpName .CONVOLUTION ]
70- const_channel_axis = [1 ] # const layout: [C_IN, C_OUT, Z, Y, X]
72+ const_channel_axis = [1 ]
73+ const_layout = [OVLayoutElem .C_IN , OVLayoutElem .C_OUT ]
7174 output_channel_axis = 1
7275
7376
@@ -76,7 +79,8 @@ class OVDepthwiseConvolutionMetatype(OVOpMetatype):
7679 name = "DepthwiseConvolutionOp"
7780 op_names = ["GroupConvolution" ]
7881 hw_config_names = [HWConfigOpName .DEPTHWISECONVOLUTION ]
79- const_channel_axis = [0 , 1 ] # const layout: [GROUPS, C_OUT / GROUPS, C_IN / GROUPS, Z, Y, X]
82+ const_channel_axis = [0 , 1 ]
83+ const_layout = [OVLayoutElem .GROUPS , OVLayoutElem .C_OUT , OVLayoutElem .C_IN ]
8084 output_channel_axis = 1
8185
8286 @classmethod
@@ -90,7 +94,8 @@ class OVGroupConvolutionMetatype(OVOpMetatype):
9094 op_names = ["GroupConvolution" ]
9195 hw_config_names = [HWConfigOpName .CONVOLUTION ]
9296 subtypes = [OVDepthwiseConvolutionMetatype ]
93- const_channel_axis = [0 , 1 ] # const layout: [GROUPS, C_OUT / GROUPS, C_IN / GROUPS, Z, Y, X]
97+ const_channel_axis = [0 , 1 ]
98+ const_layout = [OVLayoutElem .GROUPS , OVLayoutElem .C_OUT , OVLayoutElem .C_IN ]
9499 output_channel_axis = 1
95100
96101
@@ -99,7 +104,8 @@ class OVGroupConvolutionBackpropDataMetatype(OVOpMetatype):
99104 name = "GroupConvolutionBackpropDataOp"
100105 op_names = ["GroupConvolutionBackpropData" ]
101106 hw_config_names = [HWConfigOpName .CONVOLUTION ]
102- const_channel_axis = [0 , 2 ] # const layout: [GROUPS, C_IN / GROUPS, C_OUT / GROUPS, Z, Y, X]
107+ const_channel_axis = [0 , 2 ]
108+ const_layout = [OVLayoutElem .GROUPS , OVLayoutElem .C_IN , OVLayoutElem .C_OUT ]
103109 output_channel_axis = 1
104110
105111
0 commit comments