• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /**
2  * Copyright 2019-2021 Huawei Technologies Co., Ltd
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef MINDSPORE_CCSRC_TRANSFORM_GRAPH_IR_OP_ADAPTER_MAP_H_
18 #define MINDSPORE_CCSRC_TRANSFORM_GRAPH_IR_OP_ADAPTER_MAP_H_
19 
20 #include <string>
21 #include <unordered_map>
22 #include "transform/graph_ir/op_adapter_desc.h"
23 
24 namespace mindspore {
25 namespace transform {
26 constexpr const char kNameCustomOp[] = "CustomOp";
27 constexpr const char kNameConst[] = "Const";
28 constexpr const char kNameParam[] = "parameter";
29 constexpr const char kNameRandomUniform[] = "RandomUniform";
30 constexpr const char kNameSimpleMean[] = "SimpleMean";
31 constexpr const char kNameSimpleMeanGrad[] = "SimpleMeanGrad";
32 constexpr const char kNameAllReduce[] = "AllReduce";
33 constexpr const char kNameBroadcast[] = "Broadcast";
34 constexpr const char kNameBroadcastTo[] = "BroadcastTo";
35 constexpr const char kNameAllgather[] = "AllGather";
36 constexpr const char kNameReduceScatter[] = "ReduceScatter";
37 constexpr const char kNameReduceSum[] = "ReduceSum";
38 constexpr const char kNameIsFinite[] = "isFinite";
39 constexpr const char kNameReciprocal[] = "Reciprocal";
40 constexpr const char kNameRsqrt[] = "Rsqrt";
41 constexpr const char kNameSqrt[] = "Sqrt";
42 constexpr const char kNameSquare[] = "Square";
43 constexpr const char kNameSquaredDifference[] = "SquaredDifference";
44 constexpr const char kNamePow[] = "Pow";
45 constexpr const char kNameBatchMatMul[] = "BatchMatMul";
46 constexpr const char kNameStridedSlice[] = "StridedSlice";
47 constexpr const char kNameStridedSliceGrad[] = "StridedSliceGrad";
48 constexpr const char kNameExpandDims[] = "ExpandDims";
49 constexpr const char kNameLog[] = "Log";
50 constexpr const char kNameLogicalAnd[] = "LogicalAnd";
51 constexpr const char kNameLogicalNot[] = "LogicalNot";
52 constexpr const char kNameLogicalOr[] = "LogicalOr";
53 constexpr const char kNameExp[] = "Exp";
54 constexpr const char kNameLessEqual[] = "LessEqual";
55 constexpr const char kNameGreaterEqual[] = "GreaterEqual";
56 constexpr const char kNameApproximateEqual[] = "ApproximateEqual";
57 constexpr const char kNameEqual[] = "Equal";
58 constexpr const char kNameNotEqual[] = "NotEqual";
59 constexpr const char kNameFlattenGrad[] = "FlattenGrad";
60 constexpr const char kNameConvolution[] = "Convolution";
61 constexpr const char kNameMaxPool3D[] = "MaxPool3D";
62 constexpr const char kNameMaxPool3DGrad[] = "MaxPool3DGrad";
63 constexpr const char kNameConv3DTransposeD[] = "Conv3DTranspose";
64 constexpr const char kNameConv3D[] = "Conv3D";
65 constexpr const char kNameConv3DBackpropInputD[] = "Conv3DBackpropInput";
66 constexpr const char kNameConv3DBackpropFilterD[] = "Conv3DBackpropFilter";
67 constexpr const char kNameBiasAdd[] = "BiasAdd";
68 constexpr const char kNameMaxPoolGrad[] = "MaxPoolGrad";
69 constexpr const char kNameRsqrtGrad[] = "RsqrtGrad";
70 constexpr const char kNameSqrtGrad[] = "SqrtGrad";
71 constexpr const char kNameReciprocalGrad[] = "ReciprocalGrad";
72 constexpr const char kNameAvgPoolGrad[] = "AvgPoolGrad";
73 constexpr const char kNameMaxPoolGradWithArgmax[] = "MaxPoolGradWithArgmax";
74 constexpr const char kNameApplyMomentum[] = "ApplyMomentum";
75 constexpr const char kNameDropoutDoMask[] = "DropoutDoMask";
76 constexpr const char kNameResizeBilinear[] = "ResizeBilinear";
77 constexpr const char kNameResizeBilinearGrad[] = "ResizeBilinearGrad";
78 constexpr const char kNameZerosLike[] = "ZerosLike";
79 constexpr const char kNameOnesLike[] = "OnesLike";
80 constexpr const char kNameTruncatedNormal[] = "TruncatedNormal";
81 constexpr const char kNameSpaceToBatchNd[] = "SpaceToBatchNd";
82 constexpr const char kNameConfusionMatrix[] = "ConfusionMatrix";
83 constexpr const char kNameResizeNearestNeighborD[] = "ResizeNearestNeighbor";
84 constexpr const char kNameResizeNearestNeighborGrad[] = "ResizeNearestNeighborGrad";
85 constexpr const char kNameApplyAdam[] = "Adam";
86 constexpr const char kNameApplyAdagrad[] = "ApplyAdagrad";
87 constexpr const char kNameApplyAdadelta[] = "ApplyAdadelta";
88 constexpr const char kNameApplyAdaMax[] = "ApplyAdaMax";
89 constexpr const char kNameApplyGradientDescent[] = "ApplyGradientDescent";
90 constexpr const char kNameApplyPowerSign[] = "ApplyPowerSign";
91 constexpr const char kNameApplyProximalGradientDescent[] = "ApplyProximalGradientDescent";
92 constexpr const char kNameExtractImagePatches[] = "ExtractImagePatches";
93 constexpr const char kNameReLU6[] = "ReLU6";
94 constexpr const char kNameReLU6Grad[] = "ReLU6Grad";
95 constexpr const char kNameSoftplus[] = "Softplus";
96 constexpr const char kNameSoftplusGrad[] = "SoftplusGrad";
97 constexpr const char kNameElu[] = "Elu";
98 constexpr const char kNameEluGrad[] = "EluGrad";
99 constexpr const char kNameTensorScatterUpdate[] = "TensorScatterUpdate";
100 constexpr const char kNameScatterUpdate[] = "ScatterUpdate";
101 constexpr const char kNameScatterNdUpdate[] = "ScatterNdUpdate";
102 constexpr const char kNameScatterMax[] = "ScatterMax";
103 constexpr const char kNameNMSWithMask[] = "NMSWithMask";
104 constexpr const char kNameCheckValid[] = "CheckValid";
105 constexpr const char kNameSmoothL1Loss[] = "SmoothL1Loss";
106 constexpr const char kNameSmoothL1LossGrad[] = "SmoothL1LossGrad";
107 constexpr const char kNameSGD[] = "SGD";
108 constexpr const char kNameSigmoidCrossEntropyWithLogits[] = "SigmoidCrossEntropyWithLogits";
109 constexpr const char kNameSigmoidCrossEntropyWithLogitsGrad[] = "SigmoidCrossEntropyWithLogitsGrad";
110 constexpr const char kNameSigmoidCrossEntropyWithLogitsV2[] = "BCEWithLogitsLoss";
111 constexpr const char kNameScatterNdD[] = "ScatterNd";
112 constexpr const char kNamePadD[] = "Pad";
113 constexpr const char kNameMirrorPad[] = "MirrorPad";
114 constexpr const char kNameMirrorPadGrad[] = "MirrorPadGrad";
115 constexpr const char kNameGatherNd[] = "GatherNd";
116 constexpr const char kNameArgmax[] = "Argmax";
117 constexpr const char kNameArgmin[] = "Argmin";
118 constexpr const char kNameArgMaxWithValue[] = "ArgMaxWithValue";
119 constexpr const char kNameArgMinWithValue[] = "ArgMinWithValue";
120 constexpr const char kNameReduceProd[] = "ReduceProd";
121 constexpr const char kNameCumProd[] = "CumProd";
122 constexpr const char kNameDiagpart[] = "Diagpart";
123 constexpr const char kNameSplitD[] = "Split";
124 constexpr const char kNameBatchToSpaceNd[] = "BatchToSpaceND";
125 constexpr const char kNameFloor[] = "Floor";
126 constexpr const char kNameNPUGetFloatStatus[] = "NPUGetFloatStatus";
127 constexpr const char kNameAssign[] = "Assign";
128 constexpr const char kNameAssignAdd[] = "AssignAdd";
129 constexpr const char kNameAssignSub[] = "AssignSub";
130 constexpr const char kNameNPUAllocFloatStatus[] = "NPUAllocFloatStatus";
131 constexpr const char kNameNPUClearFloatStatus[] = "NPUClearFloatStatus";
132 constexpr const char kNameReshape[] = "Reshape";
133 constexpr const char kNameTransShape[] = "TransShape";
134 constexpr const char kNameDiv[] = "Div";
135 constexpr const char kNameDivNoNan[] = "DivNoNan";
136 constexpr const char kNameRealDiv[] = "RealDiv";
137 constexpr const char kNameBitwiseAnd[] = "BitwiseAnd";
138 constexpr const char kNameBitwiseOr[] = "BitwiseOr";
139 constexpr const char kNameBitwiseXor[] = "BitwiseXor";
140 constexpr const char kNameBesselI0e[] = "BesselI0e";
141 constexpr const char kNameBesselI1e[] = "BesselI1e";
142 constexpr const char kNameBNTrainingReduce[] = "BNTrainingReduce";
143 constexpr const char kNameBNTrainingReduceGrad[] = "BNTrainingReduceGrad";
144 constexpr const char kNameBNTrainingUpdate[] = "BNTrainingUpdate";
145 constexpr const char kNameBNTrainingUpdateGrad[] = "BNTrainingUpdateGrad";
146 constexpr const char kNameErf[] = "Erf";
147 constexpr const char kNameErfc[] = "Erfc";
148 constexpr const char kNameExpm1[] = "Expm1";
149 constexpr const char kNameFillD[] = "Fill";
150 constexpr const char kNameInplaceAddD[] = "InplaceAdd";
151 constexpr const char kNameInplaceSubD[] = "InplaceSub";
152 constexpr const char kNameInplaceUpdateD[] = "InplaceUpdate";
153 constexpr const char kNameInTopKD[] = "InTopK";
154 constexpr const char kNameInv[] = "Inv";
155 constexpr const char kNameInvGrad[] = "InvGrad";
156 constexpr const char kNameInvert[] = "Invert";
157 constexpr const char kNameLinSpace[] = "LinSpace";
158 constexpr const char kNameLog1p[] = "Log1p";
159 constexpr const char kNameLRN[] = "LRN";
160 constexpr const char kNameLRNGrad[] = "LRNGrad";
161 constexpr const char kNameLSTMInputGrad[] = "LSTMInputGrad";
162 constexpr const char kNameMatMul[] = "MatMul";
163 constexpr const char kNameMatrixDiagD[] = "MatrixDiag";
164 constexpr const char kNameMatrixDiagPartD[] = "MatrixDiagPart";
165 constexpr const char kNameMatrixSetDiagD[] = "MatrixSetDiag";
166 constexpr const char kNameMaxPool3DGradGrad[] = "MaxPool3DGradGrad";
167 constexpr const char kNameMaxPoolGradGrad[] = "MaxPoolGradGrad";
168 constexpr const char kNameMaxPoolGradGradWithArgmax[] = "MaxPoolGradGradWithArgmax";
169 constexpr const char kNameMish[] = "Mish";
170 constexpr const char kNameMulNoNan[] = "MulNoNan";
171 constexpr const char kNameParallelConcat[] = "ParallelConcat";
172 constexpr const char kNamePopulationCount[] = "PopulationCount";
173 constexpr const char kNameReduceAnyD[] = "ReduceAny";
174 constexpr const char kNameReluGradV2[] = "ReluGradV2";
175 constexpr const char kNameCeil[] = "Ceil";
176 constexpr const char kNameCosineEmbeddingLoss[] = "CosineEmbeddingLoss";
177 constexpr const char kNameXdivy[] = "Xdivy";
178 constexpr const char kNameMod[] = "Mod";
179 constexpr const char kNameRint[] = "Rint";
180 constexpr const char kNameScatterAdd[] = "ScatterAdd";
181 constexpr const char kNameScatterSub[] = "ScatterSub";
182 constexpr const char kNameScatterMul[] = "ScatterMul";
183 constexpr const char kNameScatterDiv[] = "ScatterDiv";
184 constexpr const char kNameScatterMin[] = "ScatterMin";
185 constexpr const char kNameScatterNdAdd[] = "ScatterNdAdd";
186 constexpr const char kNameScatterNdSub[] = "ScatterNdSub";
187 constexpr const char kNameScatterNonAliasingAdd[] = "ScatterNonAliasingAdd";
188 constexpr const char kNameSelu[] = "SeLU";
189 constexpr const char kNameSoftsign[] = "Softsign";
190 constexpr const char kNameSort[] = "Sort";
191 constexpr const char kNameSpaceToBatchNDD[] = "SpaceToBatchND";
192 constexpr const char kNameSparseApplyFtrlV2D[] = "SparseApplyFtrlV2";
193 constexpr const char kNameSparseApplyProximalAdagradD[] = "SparseApplyProximalAdagrad";
194 constexpr const char kNameTruncateDiv[] = "TruncateDiv";
195 constexpr const char kNameTruncateMod[] = "TruncateMod";
196 constexpr const char kNameUnsortedSegmentMaxD[] = "UnsortedSegmentMax";
197 constexpr const char kNameUnsortedSegmentProdD[] = "UnsortedSegmentProd";
198 constexpr const char kNameWtsARQ[] = "WtsARQ";
199 constexpr const char kNameXlogy[] = "Xlogy";
200 constexpr const char kNameReluV2[] = "ReLUV2";
201 constexpr const char kNameAccumulateNV2[] = "AccumulateNV2";
202 constexpr const char kNameConfusionMulGrad[] = "ConfusionMulGrad";
203 constexpr const char kNameFakeQuantWithMinMaxVars[] = "FakeQuantWithMinMaxVars";
204 constexpr const char kNameFakeQuantWithMinMaxVarsGradient[] = "FakeQuantWithMinMaxVarsGradient";
205 constexpr const char kNameFakeQuantWithMinMaxVarsPerChannel[] = "FakeQuantWithMinMaxVarsPerChannel";
206 constexpr const char kNameFakeQuantWithMinMaxVarsPerChannelGradient[] = "FakeQuantWithMinMaxVarsPerChannelGradient";
207 constexpr const char kNameActsULQ[] = "ActsULQ";
208 constexpr const char kNameActsULQInputGrad[] = "ActsULQInputGrad";
209 constexpr const char kNameActULQClampMaxGrad[] = "ActULQClampMaxGrad";
210 constexpr const char kNameActULQClampMinGrad[] = "ActULQClampMinGrad";
211 constexpr const char kNameHistogramFixedWidthD[] = "HistogramFixedWidth";
212 constexpr const char kNameIFMR[] = "IFMR";
213 constexpr const char kNameCentralization[] = "Centralization";
214 constexpr const char kNameApplyAdagradV2D[] = "ApplyAdagradV2";
215 constexpr const char kNameApplyAddSignD[] = "ApplyAddSign";
216 constexpr const char kNameSparseApplyAdagradV2D[] = "SparseApplyAdagradV2";
217 constexpr const char kNameDataFormatDimMap[] = "DataFormatDimMap";
218 constexpr const char kNameTile[] = "Tile";
219 constexpr const char kNameCos[] = "Cos";
220 constexpr const char kNameCosh[] = "Cosh";
221 constexpr const char kNameACos[] = "ACos";
222 constexpr const char kNameACosGrad[] = "ACosGrad";
223 constexpr const char kNameFloorDiv[] = "FloorDiv";
224 constexpr const char kNameSin[] = "Sin";
225 constexpr const char kNameSinh[] = "Sinh";
226 constexpr const char kNameAsin[] = "Asin";
227 constexpr const char kNameAsinGrad[] = "AsinGrad";
228 constexpr const char kNameAsinh[] = "Asinh";
229 constexpr const char kNameAsinhGrad[] = "AsinhGrad";
230 constexpr const char kNamePrelu[] = "PReLU";
231 constexpr const char kNamePreluGrad[] = "PReLUGrad";
232 constexpr const char kNameSigmoid[] = "Sigmoid";
233 constexpr const char kNameSigmoidGrad[] = "SigmoidGrad";
234 constexpr const char kNameL2Normalize[] = "L2Normalize";
235 constexpr const char kNameL2NormalizeGrad[] = "L2NormalizeGrad";
236 constexpr const char kNameSoftmax[] = "Softmax";
237 constexpr const char kNameIOU[] = "IOU";
238 constexpr const char kNameBoundingBoxDecode[] = "BoundingBoxDecode";
239 constexpr const char kNameBoundingBoxEncode[] = "BoundingBoxEncode";
240 constexpr const char kNameSlice[] = "Slice";
241 constexpr const char kNameAddN[] = "AddN";
242 constexpr const char kNameLess[] = "Less";
243 constexpr const char kNameGreater[] = "Greater";
244 constexpr const char kNameUnpack[] = "Unpack";
245 constexpr const char kNameMerge[] = "Merge";
246 constexpr const char kNameGeSwitch[] = "GeSwitch";
247 
248 constexpr const char kNameHuberLoss[] = "HuberLoss";
249 constexpr const char kNameCumSum[] = "CumSum";
250 constexpr const char kNameHuberLossGrad[] = "HuberLossGrad";
251 constexpr const char kNameSparseSoftmaxCrossEntropy[] = "SparseSoftmaxCrossEntropy";
252 constexpr const char kNameSparseSoftmaxCrossEntropyGrad[] = "SparseSoftmaxCrossEntropyGrad";
253 constexpr const char kNameNLLLoss[] = "NLLLoss";
254 constexpr const char kNameNLLLossGrad[] = "NLLLossGrad";
255 constexpr const char kNameTopK[] = "TopK";
256 constexpr const char kNameSoftmaxGrad[] = "SoftmaxGrad";
257 constexpr const char kNameMaxPool[] = "MaxPool";
258 constexpr const char kNameAvgPool[] = "AvgPool";
259 constexpr const char kNameMaxPoolWithArgmax[] = "MaxPoolWithArgmax";
260 constexpr const char kNameBatchNorm[] = "BatchNorm";
261 constexpr const char kNameBatchNormGrad[] = "BatchNormGrad";
262 constexpr const char kNameROIAlign[] = "ROIAlign";
263 constexpr const char kNameROIAlignGrad[] = "ROIAlignGrad";
264 constexpr const char kNameRandomChoiceWithMask[] = "RandomChoiceWithMask";
265 constexpr const char kNameAbs[] = "Abs";
266 constexpr const char kNameAbsGrad[] = "AbsGrad";
267 constexpr const char kNameBinaryCrossEntropy[] = "BinaryCrossEntropy";
268 constexpr const char kNameBinaryCrossEntropyGrad[] = "BinaryCrossEntropyGrad";
269 constexpr const char kNameSparseApplyAdagrad[] = "SparseApplyAdagrad";
270 constexpr const char kNameSparseApplyFtrlD[] = "SparseApplyFtrlD";
271 constexpr const char kNameApplyProximalAdagrad[] = "ApplyProximalAdagrad";
272 constexpr const char kNameAcosh[] = "Acosh";
273 constexpr const char kNameAcoshGrad[] = "AcoshGrad";
274 constexpr const char kNameFloorMod[] = "FloorMod";
275 constexpr const char kNameSpaceToDepth[] = "SpaceToDepth";
276 constexpr const char kNameDepthToSpace[] = "DepthToSpace";
277 constexpr const char kNameSign[] = "Sign";
278 constexpr const char kNameLARSUpdate[] = "LARSUpdate";
279 constexpr const char kNameRound[] = "Round";
280 constexpr const char kNamePrint[] = "Print";
281 constexpr const char kNameApplyFtrl[] = "ApplyFtrl";
282 constexpr const char kNameDiag[] = "Diag";
283 constexpr const char kNameDiagPart[] = "DiagPart";
284 constexpr const char kNameSpaceToBatch[] = "SpaceToBatch";
285 constexpr const char kNameBatchToSpace[] = "BatchToSpace";
286 constexpr const char kNameTan[] = "Tan";
287 constexpr const char kNameAtan[] = "Atan";
288 constexpr const char kNameAtanGrad[] = "AtanGrad";
289 constexpr const char kNameAtanh[] = "Atanh";
290 constexpr const char kNameAtan2[] = "Atan2";
291 constexpr const char kNameApplyRMSProp[] = "ApplyRMSProp";
292 constexpr const char kNameApplyCenteredRMSProp[] = "ApplyCenteredRMSProp";
293 constexpr const char kNameBasicLSTMCell[] = "BasicLSTMCell";
294 constexpr const char kNameBasicLSTMCellInputGrad[] = "BasicLSTMCellInputGrad";
295 constexpr const char kNameBasicLSTMCellWeightGrad[] = "BasicLSTMCellWeightGrad";
296 constexpr const char kNameBasicLSTMCellCStateGrad[] = "BasicLSTMCellCStateGrad";
297 constexpr const char kNameDynamicRNN[] = "DynamicRNN";
298 constexpr const char kNameDynamicRNNGrad[] = "DynamicRNNGrad";
299 constexpr const char kNameDynamicGRUV2[] = "DynamicGRUV2";
300 constexpr const char kNameDynamicGRUV2Grad[] = "DynamicGRUV2Grad";
301 constexpr const char kNameL2Loss[] = "L2Loss";
302 constexpr const char kNameCTCLoss[] = "CTCLoss";
303 constexpr const char kNameRange[] = "Range";
304 constexpr const char kNameSquareSumAll[] = "SquareSumAll";
305 constexpr const char kNameAscendQuant[] = "Quant";
306 constexpr const char kNameAscendDequant[] = "Dequant";
307 constexpr const char kNameCropAndResize[] = "CropAndResize";
308 constexpr const char kNameReverseSequence[] = "ReverseSequence";
309 constexpr const char kNameEditDistance[] = "EditDistance";
310 constexpr const char kNameCase[] = "Case";
311 constexpr const char kNameAssert[] = "Assert";
312 constexpr const char kNameCTCGreedyDecoder[] = "CTCGreedyDecoder";
313 constexpr const char kNameReverseV2[] = "ReverseV2";
314 constexpr const char kNameLambApplyWeightAssign[] = "LambApplyWeightAssign";
315 constexpr const char kNameLambApplyOptimizerAssign[] = "LambApplyOptimizerAssign";
316 constexpr const char kNameScale[] = "Scale";
317 constexpr const char kNameEltwise[] = "Eltwise";
318 constexpr const char kNameFullConnection[] = "FullConnection";
319 constexpr const char kNameFusedBatchNorm[] = "FusedBatchNorm";
320 constexpr const char kNamePooling[] = "Pooling";
321 constexpr const char kNameMaxPoolV3[] = "MaxPoolV3";
322 constexpr const char kNameAvgPoolV2[] = "AvgPoolV2";
323 constexpr const char kNameShape[] = "Shape";
324 constexpr const char kNameGather[] = "Gather";
325 constexpr const char kNameUnsqueeze[] = "Unsqueeze";
326 constexpr const char kNamePadV3[] = "PadV3";
327 constexpr const char kNameGlobalAvgPool[] = "GlobalAveragePool";
328 constexpr const char kNameStridedSliceV2[] = "StridedSliceV2";
329 constexpr const char kNameBNInference[] = "BNInference";
330 constexpr const char kNameDeconvolution[] = "Deconvolution";
331 
332 class OpAdapterMap {
333  public:
334   static std::unordered_map<std::string, OpAdapterDescPtr> &get();
335 
336  private:
337   static std::unordered_map<std::string, OpAdapterDescPtr> adpt_map_;
338 };
339 }  // namespace transform
340 }  // namespace mindspore
341 #endif  // MINDSPORE_CCSRC_TRANSFORM_GRAPH_IR_OP_ADAPTER_MAP_H_
342