1 /** 2 * Copyright 2023 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_CORE_BASE_LITE_OPS_H_ 18 #define MINDSPORE_CORE_BASE_LITE_OPS_H_ 19 20 #include <memory> 21 #include "ir/anf.h" 22 #include "ir/primitive.h" 23 #include "utils/hash_map.h" 24 #include "ops/lite_op_name.h" 25 #include "ops/auto_generate/gen_ops_primitive.h" 26 27 namespace mindspore { 28 namespace prim { 29 // Only used in lite 30 GVAR_DEF(PrimitivePtr, kPrimLeakyRelu, std::make_shared<Primitive>("LeakyRelu")); 31 GVAR_DEF(PrimitivePtr, kPrimConstant, std::make_shared<Primitive>("Constant")); 32 GVAR_DEF(PrimitivePtr, kPrimLocalResponseNormalization, std::make_shared<Primitive>("LocalResponseNormalization")); 33 GVAR_DEF(PrimitivePtr, kPrimFftReal, std::make_shared<Primitive>("FftReal")); 34 GVAR_DEF(PrimitivePtr, kPrimMfcc, std::make_shared<Primitive>("Mfcc")); 35 GVAR_DEF(PrimitivePtr, kPrimRfft, std::make_shared<Primitive>("Rfft")); 36 GVAR_DEF(PrimitivePtr, kPrimFftImag, std::make_shared<Primitive>("FftImag")); 37 GVAR_DEF(PrimitivePtr, kPrimSkipGram, std::make_shared<Primitive>("SkipGram")); 38 GVAR_DEF(PrimitivePtr, kPrimConv2DFusion, std::make_shared<Primitive>("Conv2DFusion")); 39 GVAR_DEF(PrimitivePtr, kPrimConv2dTransposeFusion, std::make_shared<Primitive>("Conv2dTransposeFusion")); 40 GVAR_DEF(PrimitivePtr, kPrimDepthWiseConv2DFusion, std::make_shared<Primitive>("DepthWiseConv2DFusion")); 41 GVAR_DEF(PrimitivePtr, kPrimAddFusion, std::make_shared<Primitive>("AddFusion")); 42 GVAR_DEF(PrimitivePtr, kPrimScaleFusion, std::make_shared<Primitive>("ScaleFusion")); 43 GVAR_DEF(PrimitivePtr, kPrimSubFusion, std::make_shared<Primitive>("SubFusion")); 44 GVAR_DEF(PrimitivePtr, kPrimMulFusion, std::make_shared<Primitive>("MulFusion")); 45 GVAR_DEF(PrimitivePtr, kPrimLogSigmoid, std::make_shared<Primitive>("LogSigmoid")); 46 GVAR_DEF(PrimitivePtr, kPrimClip, std::make_shared<Primitive>("Clip")); 47 GVAR_DEF(PrimitivePtr, kPrimHardTanh, std::make_shared<Primitive>("HardTanh")); 48 GVAR_DEF(PrimitivePtr, kPrimDepthWiseConv2DTransposeFusion, 49 std::make_shared<Primitive>("DepthWiseConv2DTransposeFusion")); 50 GVAR_DEF(PrimitivePtr, kPrimArgMinFusion, std::make_shared<Primitive>("ArgMinFusion")); 51 GVAR_DEF(PrimitivePtr, kPrimArgMaxFusion, std::make_shared<Primitive>("ArgMaxFusion")); 52 GVAR_DEF(PrimitivePtr, kPrimSpaceToDepth, std::make_shared<Primitive>("SpaceToDepth")); 53 GVAR_DEF(PrimitivePtr, kPrimPadFusion, std::make_shared<Primitive>("PadFusion")); 54 GVAR_DEF(PrimitivePtr, kPrimPowFusion, std::make_shared<Primitive>("PowFusion")); 55 GVAR_DEF(PrimitivePtr, kPrimResize, std::make_shared<Primitive>("Resize")); 56 GVAR_DEF(PrimitivePtr, kPrimIf, std::make_shared<Primitive>("If")); 57 GVAR_DEF(PrimitivePtr, kPrimAvgPoolFusion, std::make_shared<Primitive>("AvgPoolFusion")); 58 GVAR_DEF(PrimitivePtr, kPrimMaxPoolFusion, std::make_shared<Primitive>("MaxPoolFusion")); 59 GVAR_DEF(PrimitivePtr, kPrimActivation, std::make_shared<Primitive>("Activation")); 60 GVAR_DEF(PrimitivePtr, kPrimActivationGrad, std::make_shared<Primitive>("ActivationGrad")); 61 GVAR_DEF(PrimitivePtr, kPrimPReLUFusion, std::make_shared<Primitive>("PReLUFusion")); 62 GVAR_DEF(PrimitivePtr, kPrimTopKFusion, std::make_shared<Primitive>("TopKFusion")); 63 GVAR_DEF(PrimitivePtr, kPrimTileFusion, std::make_shared<Primitive>("TileFusion")); 64 GVAR_DEF(PrimitivePtr, kPrimReduceFusion, std::make_shared<Primitive>("ReduceFusion")); 65 GVAR_DEF(PrimitivePtr, kPrimReduceSumD, std::make_shared<Primitive>("ReduceSumD")); 66 GVAR_DEF(PrimitivePtr, kPrimLayerNormFusion, std::make_shared<Primitive>("LayerNormFusion")); 67 GVAR_DEF(PrimitivePtr, kPrimDivFusion, std::make_shared<Primitive>("DivFusion")); 68 GVAR_DEF(PrimitivePtr, kPrimExpFusion, std::make_shared<Primitive>("ExpFusion")); 69 GVAR_DEF(PrimitivePtr, kPrimSplice, std::make_shared<Primitive>("Splice")); 70 GVAR_DEF(PrimitivePtr, kPrimAffine, std::make_shared<Primitive>("Affine")); 71 GVAR_DEF(PrimitivePtr, kPrimEltwise, std::make_shared<Primitive>("Eltwise")); 72 GVAR_DEF(PrimitivePtr, kPrimMatMulFusion, std::make_shared<Primitive>("MatMulFusion")); 73 GVAR_DEF(PrimitivePtr, kPrimDynamicQuant, std::make_shared<Primitive>("DynamicQuant")); 74 GVAR_DEF(PrimitivePtr, kPrimPartialFusion, std::make_shared<Primitive>("PartialFusion")); 75 GVAR_DEF(PrimitivePtr, kPrimFSEDecode, std::make_shared<Primitive>("FSEDecode")); 76 GVAR_DEF(PrimitivePtr, kPrimKVCacheMgr, std::make_shared<Primitive>("KVCacheMgr")); 77 GVAR_DEF(PrimitivePtr, kPrimMakeTupleV2, std::make_shared<Primitive>("make_tuple")); 78 GVAR_DEF(PrimitivePtr, kPrimMatMulAllReduce, std::make_shared<Primitive>("MatMulAllReduce")); 79 } // namespace prim 80 } // namespace mindspore 81 82 #endif // MINDSPORE_CORE_BASE_LITE_OPS_H_ 83