Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
magicwindyyd
mindspore
提交
fdaa08dc
M
mindspore
项目概览
magicwindyyd
/
mindspore
与 Fork 源项目一致
Fork自
MindSpore / mindspore
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
mindspore
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
fdaa08dc
编写于
8月 11, 2020
作者:
M
mindspore-ci-bot
提交者:
Gitee
8月 11, 2020
浏览文件
操作
浏览文件
下载
差异文件
!4185 re-arrange the primitive between core_ops.h and frontend/operator/ops.h
Merge pull request !4185 from xychow/move-core-ops
上级
f287471f
27223aae
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
194 addition
and
181 deletion
+194
-181
mindspore/ccsrc/frontend/operator/ops.h
mindspore/ccsrc/frontend/operator/ops.h
+40
-142
mindspore/core/base/core_ops.h
mindspore/core/base/core_ops.h
+154
-39
未找到文件。
mindspore/ccsrc/frontend/operator/ops.h
浏览文件 @
fdaa08dc
...
...
@@ -31,160 +31,58 @@ ValuePtr GetPythonOps(const std::string &op_name,
const
std
::
string
&
module_name
=
"mindspore._extends.parse.standard_method"
,
bool
use_signature
=
false
);
// Arithmetic
inline
const
PrimitivePtr
kPrimScalarAdd
=
std
::
make_shared
<
Primitive
>
(
"scalar_add"
);
inline
const
PrimitivePtr
kPrimScalarSub
=
std
::
make_shared
<
Primitive
>
(
"scalar_sub"
);
inline
const
PrimitivePtr
kPrimScalarMul
=
std
::
make_shared
<
Primitive
>
(
"scalar_mul"
);
inline
const
PrimitivePtr
kPrimScalarDiv
=
std
::
make_shared
<
Primitive
>
(
"scalar_div"
);
inline
const
PrimitivePtr
kPrimScalarFloordiv
=
std
::
make_shared
<
Primitive
>
(
"scalar_floordiv"
);
inline
const
PrimitivePtr
kPrimScalarMod
=
std
::
make_shared
<
Primitive
>
(
"scalar_mod"
);
inline
const
PrimitivePtr
kPrimScalarPow
=
std
::
make_shared
<
Primitive
>
(
"scalar_pow"
);
inline
const
PrimitivePtr
kPrimScalarTrunc
=
std
::
make_shared
<
Primitive
>
(
"scalar_trunc"
);
inline
const
PrimitivePtr
kPrimScalarFloor
=
std
::
make_shared
<
Primitive
>
(
"scalar_floor"
);
inline
const
PrimitivePtr
kPrimScalarUadd
=
std
::
make_shared
<
Primitive
>
(
"scalar_uadd"
);
inline
const
PrimitivePtr
kPrimScalarUsub
=
std
::
make_shared
<
Primitive
>
(
"scalar_usub"
);
inline
const
PrimitivePtr
kPrimScalarExp
=
std
::
make_shared
<
Primitive
>
(
"scalar_exp"
);
inline
const
PrimitivePtr
kPrimScalarLog
=
std
::
make_shared
<
Primitive
>
(
"scalar_log"
);
inline
const
PrimitivePtr
kPrimScalarSin
=
std
::
make_shared
<
Primitive
>
(
"scalar_sin"
);
inline
const
PrimitivePtr
kPrimScalarCos
=
std
::
make_shared
<
Primitive
>
(
"scalar_cos"
);
inline
const
PrimitivePtr
kPrimScalarTan
=
std
::
make_shared
<
Primitive
>
(
"scalar_tan"
);
// Comparisons
inline
const
PrimitivePtr
kPrimScalarEq
=
std
::
make_shared
<
Primitive
>
(
"scalar_eq"
);
inline
const
PrimitivePtr
kPrimScalarLt
=
std
::
make_shared
<
Primitive
>
(
"scalar_lt"
);
inline
const
PrimitivePtr
kPrimScalarGt
=
std
::
make_shared
<
Primitive
>
(
"scalar_gt"
);
inline
const
PrimitivePtr
kPrimScalarNe
=
std
::
make_shared
<
Primitive
>
(
"scalar_ne"
);
inline
const
PrimitivePtr
kPrimScalarLe
=
std
::
make_shared
<
Primitive
>
(
"scalar_le"
);
inline
const
PrimitivePtr
kPrimScalarGe
=
std
::
make_shared
<
Primitive
>
(
"scalar_ge"
);
inline
const
PrimitivePtr
kPrimBoolNot
=
std
::
make_shared
<
Primitive
>
(
"bool_not"
);
inline
const
PrimitivePtr
kPrimBoolAnd
=
std
::
make_shared
<
Primitive
>
(
"bool_and"
);
inline
const
PrimitivePtr
kPrimBoolOr
=
std
::
make_shared
<
Primitive
>
(
"bool_or"
);
inline
const
PrimitivePtr
kPrimBoolEq
=
std
::
make_shared
<
Primitive
>
(
"bool_eq"
);
inline
const
PrimitivePtr
kPrimGreater
=
std
::
make_shared
<
Primitive
>
(
"Greater"
);
inline
const
PrimitivePtr
kPrimGreaterEqual
=
std
::
make_shared
<
Primitive
>
(
"GreaterEqual"
);
inline
const
PrimitivePtr
kPrimLess
=
std
::
make_shared
<
Primitive
>
(
"Less"
);
inline
const
PrimitivePtr
kPrimLessEqual
=
std
::
make_shared
<
Primitive
>
(
"LessEqual"
);
inline
const
PrimitivePtr
kPrimEqual
=
std
::
make_shared
<
Primitive
>
(
"Equal"
);
inline
const
PrimitivePtr
kPrimNotEqual
=
std
::
make_shared
<
Primitive
>
(
"NotEqual"
);
// Primitives only used by frontend;
// Type introspection
inline
const
PrimitivePtr
kPrimTypeOf
=
std
::
make_shared
<
Primitive
>
(
"typeof"
);
inline
const
PrimitivePtr
kPrimHasType
=
std
::
make_shared
<
Primitive
>
(
"hastype"
);
inline
const
PrimitivePtr
kPrimDistribute
=
std
::
make_shared
<
Primitive
>
(
"distribute"
);
inline
const
PrimitivePtr
kPrimDot
=
std
::
make_shared
<
Primitive
>
(
"dot"
);
inline
const
PrimitivePtr
kPrimIm2Col
=
std
::
make_shared
<
Primitive
>
(
"im2col"
);
inline
const
PrimitivePtr
kPrimCol2Im
=
std
::
make_shared
<
Primitive
>
(
"col2im"
);
inline
const
PrimitivePtr
kPrimIm2ColV1
=
std
::
make_shared
<
Primitive
>
(
"im2col_v1"
);
inline
const
PrimitivePtr
kPrimCol2ImV1
=
std
::
make_shared
<
Primitive
>
(
"col2im_v1"
);
inline
const
PrimitivePtr
kPrimResolve
=
std
::
make_shared
<
Primitive
>
(
"resolve"
);
inline
const
PrimitivePtr
kPrimEmbed
=
std
::
make_shared
<
Primitive
>
(
"embed"
);
inline
const
PrimitivePtr
kPrimRefToEmbed
=
std
::
make_shared
<
Primitive
>
(
"RefToEmbed"
);
inline
const
PrimitivePtr
kPrimCreateInstance
=
std
::
make_shared
<
Primitive
>
(
"create_instance"
);
inline
const
PrimitivePtr
kPrimLabelGoto
=
std
::
make_shared
<
Primitive
>
(
"LabelGoto"
);
inline
const
PrimitivePtr
kPrimLabelSwitch
=
std
::
make_shared
<
Primitive
>
(
"LabelSwitch"
);
inline
const
PrimitivePtr
kPrimLabelSet
=
std
::
make_shared
<
Primitive
>
(
"LabelSet"
);
// Other miscellaneous
inline
const
PrimitivePtr
kPrimEnvSetItem
=
std
::
make_shared
<
Primitive
>
(
"env_setitem"
);
inline
const
PrimitivePtr
kPrimEnvGetItem
=
std
::
make_shared
<
Primitive
>
(
"env_getitem"
);
inline
const
PrimitivePtr
kPrimEnvAdd
=
std
::
make_shared
<
Primitive
>
(
"env_add"
);
inline
const
PrimitivePtr
kPrimMakeRefKey
=
std
::
make_shared
<
Primitive
>
(
"MakeRefKey"
);
inline
const
PrimitivePtr
kPrimGetRefKey
=
std
::
make_shared
<
Primitive
>
(
"get_ref_key"
);
inline
const
PrimitivePtr
kPrimGetRefValue
=
std
::
make_shared
<
Primitive
>
(
"get_ref_value"
);
inline
const
PrimitivePtr
kPrimGetRefOrigin
=
std
::
make_shared
<
Primitive
>
(
"get_ref_origin"
);
inline
const
PrimitivePtr
kPrimInsertGradientOf
=
std
::
make_shared
<
Primitive
>
(
"InsertGradientOf"
);
inline
const
PrimitivePtr
kPrimCheckBprop
=
std
::
make_shared
<
Primitive
>
(
"CheckBprop"
);
inline
const
PrimitivePtr
kPrimMakeRef
=
std
::
make_shared
<
Primitive
>
(
"make_ref"
);
inline
const
PrimitivePtr
kPrimMixedPrecisionCast
=
std
::
make_shared
<
Primitive
>
(
"mixed_precision_cast"
);
inline
const
PrimitivePtr
kPrimMakeRecord
=
std
::
make_shared
<
Primitive
>
(
"make_record"
);
// Structures
inline
const
PrimitivePtr
kPrimMakeList
=
std
::
make_shared
<
Primitive
>
(
"make_list"
);
inline
const
PrimitivePtr
kPrimMakeKeywordArg
=
std
::
make_shared
<
Primitive
>
(
"make_keyword_arg"
);
inline
const
PrimitivePtr
kPrimListGetItem
=
std
::
make_shared
<
Primitive
>
(
"list_getitem"
);
inline
const
PrimitivePtr
kPrimListSetItem
=
std
::
make_shared
<
Primitive
>
(
"list_setitem"
);
inline
const
PrimitivePtr
kPrimDictGetItem
=
std
::
make_shared
<
Primitive
>
(
"dict_getitem"
);
inline
const
PrimitivePtr
kPrimDictSetItem
=
std
::
make_shared
<
Primitive
>
(
"dict_setitem"
);
inline
const
PrimitivePtr
kPrimListAppend
=
std
::
make_shared
<
Primitive
>
(
"list_append"
);
inline
const
PrimitivePtr
kPrimListLen
=
std
::
make_shared
<
Primitive
>
(
"list_len"
);
inline
const
PrimitivePtr
kPrimListMap
=
std
::
make_shared
<
Primitive
>
(
"list_map"
);
inline
const
PrimitivePtr
kPrimListReduce
=
std
::
make_shared
<
Primitive
>
(
"list_reduce"
);
inline
const
PrimitivePtr
kPrimTupleReversed
=
std
::
make_shared
<
Primitive
>
(
"tuple_reversed"
);
inline
const
PrimitivePtr
kPrimReducedShape
=
std
::
make_shared
<
Primitive
>
(
"reduced_shape"
);
inline
const
PrimitivePtr
kPrimTupleDiv
=
std
::
make_shared
<
Primitive
>
(
"tuple_div"
);
inline
const
PrimitivePtr
kPrimTupleToArray
=
std
::
make_shared
<
Primitive
>
(
"tuple_to_array"
);
inline
const
PrimitivePtr
kPrimShapeMul
=
std
::
make_shared
<
Primitive
>
(
"shape_mul"
);
inline
const
PrimitivePtr
kPrimTupleEqual
=
std
::
make_shared
<
Primitive
>
(
"tuple_equal"
);
inline
const
PrimitivePtr
kPrimListEqual
=
std
::
make_shared
<
Primitive
>
(
"list_equal"
);
inline
const
PrimitivePtr
kPrimMakeRange
=
std
::
make_shared
<
Primitive
>
(
"make_range"
);
inline
const
PrimitivePtr
kPrimStopGradient
=
std
::
make_shared
<
Primitive
>
(
"stop_gradient"
);
inline
const
PrimitivePtr
kPrimStringEqual
=
std
::
make_shared
<
Primitive
>
(
"string_equal"
);
inline
const
PrimitivePtr
kPrimStringConcat
=
std
::
make_shared
<
Primitive
>
(
"string_concat"
);
inline
const
PrimitivePtr
kPrimDictLen
=
std
::
make_shared
<
Primitive
>
(
"dict_len"
);
// Arrays
inline
const
PrimitivePtr
kPrimScalarToArray
=
std
::
make_shared
<
Primitive
>
(
"scalar_to_array"
);
inline
const
PrimitivePtr
kPrimArrayToScalar
=
std
::
make_shared
<
Primitive
>
(
"array_to_scalar"
);
inline
const
PrimitivePtr
kPrimBroadcastShape
=
std
::
make_shared
<
Primitive
>
(
"broadcast_shape"
);
inline
const
PrimitivePtr
kPrimArrayMap
=
std
::
make_shared
<
Primitive
>
(
"array_map"
);
inline
const
PrimitivePtr
kPrimArrayReduce
=
std
::
make_shared
<
Primitive
>
(
"array_reduce"
);
inline
const
PrimitivePtr
kPrimCast
=
std
::
make_shared
<
Primitive
>
(
"Cast"
);
inline
const
PrimitivePtr
kPrimConcat
=
std
::
make_shared
<
Primitive
>
(
"Concat"
);
inline
const
PrimitivePtr
kPrimSqueeze
=
std
::
make_shared
<
Primitive
>
(
"Squeeze"
);
inline
const
PrimitivePtr
kPrimTranspose
=
std
::
make_shared
<
Primitive
>
(
"Transpose"
);
inline
const
PrimitivePtr
kPrimGatherV2
=
std
::
make_shared
<
Primitive
>
(
"GatherV2"
);
inline
const
PrimitivePtr
kPrimEmbeddingLookup
=
std
::
make_shared
<
Primitive
>
(
"EmbeddingLookup"
);
inline
const
PrimitivePtr
kPrimEmbeddingLookupCommGrad
=
std
::
make_shared
<
Primitive
>
(
"EmbeddingLookupCommGrad"
);
inline
const
PrimitivePtr
kPrimSize
=
std
::
make_shared
<
Primitive
>
(
"Size"
);
inline
const
PrimitivePtr
kPrimArgMax
=
std
::
make_shared
<
Primitive
>
(
"Argmax"
);
inline
const
PrimitivePtr
kPrimPack
=
std
::
make_shared
<
Primitive
>
(
"Pack"
);
inline
const
PrimitivePtr
kPrimUnsortedSegmentSum
=
std
::
make_shared
<
Primitive
>
(
"UnsortedSegmentSum"
);
inline
const
PrimitivePtr
kPrimUnsortedSegmentMin
=
std
::
make_shared
<
Primitive
>
(
"UnsortedSegmentMin"
);
inline
const
PrimitivePtr
kPrimConcatOffset
=
std
::
make_shared
<
Primitive
>
(
"ConcatOffset"
);
inline
const
PrimitivePtr
kPrimReshape
=
std
::
make_shared
<
Primitive
>
(
"Reshape"
);
inline
const
PrimitivePtr
kPrimTile
=
std
::
make_shared
<
Primitive
>
(
"Tile"
);
inline
const
PrimitivePtr
kPrimAddN
=
std
::
make_shared
<
Primitive
>
(
"AddN"
);
inline
const
PrimitivePtr
KPrimTransData
=
std
::
make_shared
<
Primitive
>
(
"TransData"
);
inline
const
PrimitivePtr
kPrimNMSWithMask
=
std
::
make_shared
<
Primitive
>
(
"NMSWithMask"
);
inline
const
PrimitivePtr
kPrimPad
=
std
::
make_shared
<
Primitive
>
(
"Pad"
);
inline
const
PrimitivePtr
kPrimArgMaxWithValue
=
std
::
make_shared
<
Primitive
>
(
"ArgMaxWithValue"
);
inline
const
PrimitivePtr
kPrimUnique
=
std
::
make_shared
<
Primitive
>
(
"Unique"
);
inline
const
PrimitivePtr
kPrimUniqueGrad
=
std
::
make_shared
<
Primitive
>
(
"UniqueGrad"
);
// NN
inline
const
PrimitivePtr
kPrimFlatten
=
std
::
make_shared
<
Primitive
>
(
"Flatten"
);
inline
const
PrimitivePtr
kPrimSoftmax
=
std
::
make_shared
<
Primitive
>
(
"Softmax"
);
inline
const
PrimitivePtr
kPrimLogSoftmax
=
std
::
make_shared
<
Primitive
>
(
"LogSoftmax"
);
inline
const
PrimitivePtr
kPrimLogSoftmaxGrad
=
std
::
make_shared
<
Primitive
>
(
"LogSoftmaxGrad"
);
inline
const
PrimitivePtr
kPrimTanh
=
std
::
make_shared
<
Primitive
>
(
"Tanh"
);
inline
const
PrimitivePtr
kPrimTanhGrad
=
std
::
make_shared
<
Primitive
>
(
"TanhGrad"
);
inline
const
PrimitivePtr
kPrimPooling
=
std
::
make_shared
<
Primitive
>
(
"Pooling"
);
inline
const
PrimitivePtr
kPrimPoolingGrad
=
std
::
make_shared
<
Primitive
>
(
"PoolingGrad"
);
inline
const
PrimitivePtr
kPrimMaxPool
=
std
::
make_shared
<
Primitive
>
(
"MaxPool"
);
inline
const
PrimitivePtr
kPrimMaxPoolGrad
=
std
::
make_shared
<
Primitive
>
(
"MaxPoolGrad"
);
inline
const
PrimitivePtr
kPrimApplyCenteredRMSProp
=
std
::
make_shared
<
Primitive
>
(
"ApplyCenteredRMSProp"
);
inline
const
PrimitivePtr
kPrimAvgPoolGrad
=
std
::
make_shared
<
Primitive
>
(
"AvgPoolGrad"
);
inline
const
PrimitivePtr
kPrimAvgPoolGradVm
=
std
::
make_shared
<
Primitive
>
(
"AvgPoolGradVm"
);
inline
const
PrimitivePtr
kPrimFusedBatchNorm
=
std
::
make_shared
<
Primitive
>
(
"FusedBatchNorm"
);
inline
const
PrimitivePtr
kPrimConv2D
=
std
::
make_shared
<
Primitive
>
(
"Conv2D"
);
inline
const
PrimitivePtr
kPrimFusedBatchNormGrad
=
std
::
make_shared
<
Primitive
>
(
"FusedBatchNormGrad"
);
inline
const
PrimitivePtr
kPrimBatchNorm
=
std
::
make_shared
<
Primitive
>
(
"BatchNorm"
);
inline
const
PrimitivePtr
kPrimBatchNormGrad
=
std
::
make_shared
<
Primitive
>
(
"BatchNormGrad"
);
inline
const
PrimitivePtr
kPrimReluGrad
=
std
::
make_shared
<
Primitive
>
(
"ReluGrad"
);
inline
const
PrimitivePtr
kPrimConv2DBackpropInput
=
std
::
make_shared
<
Primitive
>
(
"Conv2DBackpropInput"
);
inline
const
PrimitivePtr
kPrimConv2DBackpropFilter
=
std
::
make_shared
<
Primitive
>
(
"Conv2DBackpropFilter"
);
inline
const
PrimitivePtr
kPrimDepthwiseConv2dNative
=
std
::
make_shared
<
Primitive
>
(
"DepthwiseConv2dNative"
);
inline
const
PrimitivePtr
kPrimDepthwiseConv2dNativeBackpropFilter
=
std
::
make_shared
<
Primitive
>
(
"DepthwiseConv2dNativeBackpropFilter"
);
inline
const
PrimitivePtr
kPrimDepthwiseConv2dNativeBackpropInput
=
std
::
make_shared
<
Primitive
>
(
"DepthwiseConv2dNativeBackpropInput"
);
inline
const
PrimitivePtr
kPrimBiasAddGrad
=
std
::
make_shared
<
Primitive
>
(
"BiasAddGrad"
);
inline
const
PrimitivePtr
kPrimSoftmaxCrossEntropyWithLogits
=
std
::
make_shared
<
Primitive
>
(
"SoftmaxCrossEntropyWithLogits"
);
inline
const
PrimitivePtr
kPrimSparseSoftmaxCrossEntropyWithLogits
=
std
::
make_shared
<
Primitive
>
(
"SparseSoftmaxCrossEntropyWithLogits"
);
inline
const
PrimitivePtr
kPrimMomentum
=
std
::
make_shared
<
Primitive
>
(
"Momentum"
);
inline
const
PrimitivePtr
kPrimApplyMomentum
=
std
::
make_shared
<
Primitive
>
(
"ApplyMomentum"
);
inline
const
PrimitivePtr
kPrimLayerNorm
=
std
::
make_shared
<
Primitive
>
(
"LayerNorm"
);
inline
const
PrimitivePtr
kPrimLayerNormGrad
=
std
::
make_shared
<
Primitive
>
(
"LayerNormGrad"
);
inline
const
PrimitivePtr
kPrimLayerNormXBackprop
=
std
::
make_shared
<
Primitive
>
(
"LayerNormXBackprop"
);
inline
const
PrimitivePtr
kPrimLayerNormBetaGammaBackprop
=
std
::
make_shared
<
Primitive
>
(
"LayerNormBetaGammaBackprop"
);
inline
const
PrimitivePtr
kPrimDropoutGenMask
=
std
::
make_shared
<
Primitive
>
(
"DropoutGenMask"
);
inline
const
PrimitivePtr
kPrimDropoutDoMask
=
std
::
make_shared
<
Primitive
>
(
"DropoutDoMask"
);
inline
const
PrimitivePtr
kPrimOneHot
=
std
::
make_shared
<
Primitive
>
(
"OneHot"
);
inline
const
PrimitivePtr
kPrimGelu
=
std
::
make_shared
<
Primitive
>
(
"Gelu"
);
inline
const
PrimitivePtr
kPrimGeluGrad
=
std
::
make_shared
<
Primitive
>
(
"GeluGrad"
);
inline
const
PrimitivePtr
kPrimRelu
=
std
::
make_shared
<
Primitive
>
(
"ReLU"
);
inline
const
PrimitivePtr
kPrimReluV2
=
std
::
make_shared
<
Primitive
>
(
"ReLUV2"
);
inline
const
PrimitivePtr
kPrimZerosLike
=
std
::
make_shared
<
Primitive
>
(
"ZerosLike"
);
inline
const
PrimitivePtr
kPrimFakeBprop
=
std
::
make_shared
<
Primitive
>
(
"fake_bprop"
);
inline
const
PrimitivePtr
kPrimBpropCut
=
std
::
make_shared
<
Primitive
>
(
"bprop_cut"
);
inline
const
PrimitivePtr
kPrimFakeQuantPerLayer
=
std
::
make_shared
<
Primitive
>
(
"FakeQuantPerLayer"
);
inline
const
PrimitivePtr
kPrimFakeQuantPerChannel
=
std
::
make_shared
<
Primitive
>
(
"FakeQuantPerChannel"
);
inline
const
PrimitivePtr
kPrimApplyRMSProp
=
std
::
make_shared
<
Primitive
>
(
"ApplyRMSProp"
);
// Comm ops
inline
const
PrimitivePtr
kPrimMirror
=
std
::
make_shared
<
Primitive
>
(
"_MirrorOperator"
);
inline
const
PrimitivePtr
kPrimVirtualDiv
=
std
::
make_shared
<
Primitive
>
(
"_VirtualDiv"
);
inline
const
PrimitivePtr
kPrimVirtualDataset
=
std
::
make_shared
<
Primitive
>
(
"_VirtualDataset"
);
inline
const
PrimitivePtr
kPrimAllReduce
=
std
::
make_shared
<
Primitive
>
(
"AllReduce"
);
// RowTensor
inline
const
PrimitivePtr
kPrimMakeRowTensor
=
std
::
make_shared
<
Primitive
>
(
"MakeRowTensor"
);
inline
const
PrimitivePtr
kPrimRowTensorGetValues
=
std
::
make_shared
<
Primitive
>
(
"RowTensorGetValues"
);
inline
const
PrimitivePtr
kPrimRowTensorGetIndices
=
std
::
make_shared
<
Primitive
>
(
"RowTensorGetIndices"
);
inline
const
PrimitivePtr
kPrimRowTensorGetDenseShape
=
std
::
make_shared
<
Primitive
>
(
"RowTensorGetDenseShape"
);
// SparseTensor
inline
const
PrimitivePtr
kPrimMakeSparseTensor
=
std
::
make_shared
<
Primitive
>
(
"MakeSparseTensor"
);
inline
const
PrimitivePtr
kPrimSparseTensorGetValues
=
std
::
make_shared
<
Primitive
>
(
"SparseTensorGetValues"
);
inline
const
PrimitivePtr
kPrimSparseTensorGetIndices
=
std
::
make_shared
<
Primitive
>
(
"SparseTensorGetIndices"
);
inline
const
PrimitivePtr
kPrimSparseTensorGetDenseShape
=
std
::
make_shared
<
Primitive
>
(
"SparseTensorGetDenseShape"
);
inline
const
PrimitivePtr
kPrimBroadcastGradientArgs
=
std
::
make_shared
<
Primitive
>
(
"BroadcastGradientArgs"
);
class
UnpackGraphPrimitive
:
public
Primitive
{
public:
...
...
mindspore/core/base/core_ops.h
浏览文件 @
fdaa08dc
...
...
@@ -25,6 +25,152 @@
namespace
mindspore
{
namespace
prim
{
// Here list all primitives used in backend or some special primitives used by core.
// Arithmetic
inline
const
PrimitivePtr
kPrimScalarAdd
=
std
::
make_shared
<
Primitive
>
(
"scalar_add"
);
inline
const
PrimitivePtr
kPrimScalarSub
=
std
::
make_shared
<
Primitive
>
(
"scalar_sub"
);
inline
const
PrimitivePtr
kPrimScalarMul
=
std
::
make_shared
<
Primitive
>
(
"scalar_mul"
);
inline
const
PrimitivePtr
kPrimScalarDiv
=
std
::
make_shared
<
Primitive
>
(
"scalar_div"
);
inline
const
PrimitivePtr
kPrimScalarFloordiv
=
std
::
make_shared
<
Primitive
>
(
"scalar_floordiv"
);
inline
const
PrimitivePtr
kPrimScalarMod
=
std
::
make_shared
<
Primitive
>
(
"scalar_mod"
);
inline
const
PrimitivePtr
kPrimScalarPow
=
std
::
make_shared
<
Primitive
>
(
"scalar_pow"
);
inline
const
PrimitivePtr
kPrimScalarTrunc
=
std
::
make_shared
<
Primitive
>
(
"scalar_trunc"
);
inline
const
PrimitivePtr
kPrimScalarFloor
=
std
::
make_shared
<
Primitive
>
(
"scalar_floor"
);
inline
const
PrimitivePtr
kPrimScalarUadd
=
std
::
make_shared
<
Primitive
>
(
"scalar_uadd"
);
inline
const
PrimitivePtr
kPrimScalarUsub
=
std
::
make_shared
<
Primitive
>
(
"scalar_usub"
);
inline
const
PrimitivePtr
kPrimScalarExp
=
std
::
make_shared
<
Primitive
>
(
"scalar_exp"
);
inline
const
PrimitivePtr
kPrimScalarLog
=
std
::
make_shared
<
Primitive
>
(
"scalar_log"
);
inline
const
PrimitivePtr
kPrimScalarSin
=
std
::
make_shared
<
Primitive
>
(
"scalar_sin"
);
inline
const
PrimitivePtr
kPrimScalarCos
=
std
::
make_shared
<
Primitive
>
(
"scalar_cos"
);
inline
const
PrimitivePtr
kPrimScalarTan
=
std
::
make_shared
<
Primitive
>
(
"scalar_tan"
);
// Comparisons
inline
const
PrimitivePtr
kPrimScalarEq
=
std
::
make_shared
<
Primitive
>
(
"scalar_eq"
);
inline
const
PrimitivePtr
kPrimScalarLt
=
std
::
make_shared
<
Primitive
>
(
"scalar_lt"
);
inline
const
PrimitivePtr
kPrimScalarGt
=
std
::
make_shared
<
Primitive
>
(
"scalar_gt"
);
inline
const
PrimitivePtr
kPrimScalarNe
=
std
::
make_shared
<
Primitive
>
(
"scalar_ne"
);
inline
const
PrimitivePtr
kPrimScalarLe
=
std
::
make_shared
<
Primitive
>
(
"scalar_le"
);
inline
const
PrimitivePtr
kPrimScalarGe
=
std
::
make_shared
<
Primitive
>
(
"scalar_ge"
);
inline
const
PrimitivePtr
kPrimBoolNot
=
std
::
make_shared
<
Primitive
>
(
"bool_not"
);
inline
const
PrimitivePtr
kPrimBoolAnd
=
std
::
make_shared
<
Primitive
>
(
"bool_and"
);
inline
const
PrimitivePtr
kPrimBoolOr
=
std
::
make_shared
<
Primitive
>
(
"bool_or"
);
inline
const
PrimitivePtr
kPrimBoolEq
=
std
::
make_shared
<
Primitive
>
(
"bool_eq"
);
inline
const
PrimitivePtr
kPrimGreater
=
std
::
make_shared
<
Primitive
>
(
"Greater"
);
inline
const
PrimitivePtr
kPrimGreaterEqual
=
std
::
make_shared
<
Primitive
>
(
"GreaterEqual"
);
inline
const
PrimitivePtr
kPrimLess
=
std
::
make_shared
<
Primitive
>
(
"Less"
);
inline
const
PrimitivePtr
kPrimLessEqual
=
std
::
make_shared
<
Primitive
>
(
"LessEqual"
);
inline
const
PrimitivePtr
kPrimEqual
=
std
::
make_shared
<
Primitive
>
(
"Equal"
);
inline
const
PrimitivePtr
kPrimNotEqual
=
std
::
make_shared
<
Primitive
>
(
"NotEqual"
);
inline
const
PrimitivePtr
kPrimDistribute
=
std
::
make_shared
<
Primitive
>
(
"distribute"
);
inline
const
PrimitivePtr
kPrimDot
=
std
::
make_shared
<
Primitive
>
(
"dot"
);
inline
const
PrimitivePtr
kPrimIm2Col
=
std
::
make_shared
<
Primitive
>
(
"im2col"
);
inline
const
PrimitivePtr
kPrimCol2Im
=
std
::
make_shared
<
Primitive
>
(
"col2im"
);
inline
const
PrimitivePtr
kPrimIm2ColV1
=
std
::
make_shared
<
Primitive
>
(
"im2col_v1"
);
inline
const
PrimitivePtr
kPrimCol2ImV1
=
std
::
make_shared
<
Primitive
>
(
"col2im_v1"
);
inline
const
PrimitivePtr
kPrimLabelGoto
=
std
::
make_shared
<
Primitive
>
(
"LabelGoto"
);
inline
const
PrimitivePtr
kPrimLabelSwitch
=
std
::
make_shared
<
Primitive
>
(
"LabelSwitch"
);
inline
const
PrimitivePtr
kPrimLabelSet
=
std
::
make_shared
<
Primitive
>
(
"LabelSet"
);
// Arrays
inline
const
PrimitivePtr
kPrimScalarToArray
=
std
::
make_shared
<
Primitive
>
(
"scalar_to_array"
);
inline
const
PrimitivePtr
kPrimArrayToScalar
=
std
::
make_shared
<
Primitive
>
(
"array_to_scalar"
);
inline
const
PrimitivePtr
kPrimBroadcastShape
=
std
::
make_shared
<
Primitive
>
(
"broadcast_shape"
);
inline
const
PrimitivePtr
kPrimArrayMap
=
std
::
make_shared
<
Primitive
>
(
"array_map"
);
inline
const
PrimitivePtr
kPrimArrayReduce
=
std
::
make_shared
<
Primitive
>
(
"array_reduce"
);
inline
const
PrimitivePtr
kPrimCast
=
std
::
make_shared
<
Primitive
>
(
"Cast"
);
inline
const
PrimitivePtr
kPrimConcat
=
std
::
make_shared
<
Primitive
>
(
"Concat"
);
inline
const
PrimitivePtr
kPrimSqueeze
=
std
::
make_shared
<
Primitive
>
(
"Squeeze"
);
inline
const
PrimitivePtr
kPrimTranspose
=
std
::
make_shared
<
Primitive
>
(
"Transpose"
);
inline
const
PrimitivePtr
kPrimGatherV2
=
std
::
make_shared
<
Primitive
>
(
"GatherV2"
);
inline
const
PrimitivePtr
kPrimEmbeddingLookup
=
std
::
make_shared
<
Primitive
>
(
"EmbeddingLookup"
);
inline
const
PrimitivePtr
kPrimEmbeddingLookupCommGrad
=
std
::
make_shared
<
Primitive
>
(
"EmbeddingLookupCommGrad"
);
inline
const
PrimitivePtr
kPrimSize
=
std
::
make_shared
<
Primitive
>
(
"Size"
);
inline
const
PrimitivePtr
kPrimArgMax
=
std
::
make_shared
<
Primitive
>
(
"Argmax"
);
inline
const
PrimitivePtr
kPrimPack
=
std
::
make_shared
<
Primitive
>
(
"Pack"
);
inline
const
PrimitivePtr
kPrimUnsortedSegmentSum
=
std
::
make_shared
<
Primitive
>
(
"UnsortedSegmentSum"
);
inline
const
PrimitivePtr
kPrimUnsortedSegmentMin
=
std
::
make_shared
<
Primitive
>
(
"UnsortedSegmentMin"
);
inline
const
PrimitivePtr
kPrimConcatOffset
=
std
::
make_shared
<
Primitive
>
(
"ConcatOffset"
);
inline
const
PrimitivePtr
kPrimReshape
=
std
::
make_shared
<
Primitive
>
(
"Reshape"
);
inline
const
PrimitivePtr
kPrimTile
=
std
::
make_shared
<
Primitive
>
(
"Tile"
);
inline
const
PrimitivePtr
kPrimAddN
=
std
::
make_shared
<
Primitive
>
(
"AddN"
);
inline
const
PrimitivePtr
KPrimTransData
=
std
::
make_shared
<
Primitive
>
(
"TransData"
);
inline
const
PrimitivePtr
kPrimNMSWithMask
=
std
::
make_shared
<
Primitive
>
(
"NMSWithMask"
);
inline
const
PrimitivePtr
kPrimPad
=
std
::
make_shared
<
Primitive
>
(
"Pad"
);
inline
const
PrimitivePtr
kPrimArgMaxWithValue
=
std
::
make_shared
<
Primitive
>
(
"ArgMaxWithValue"
);
inline
const
PrimitivePtr
kPrimUnique
=
std
::
make_shared
<
Primitive
>
(
"Unique"
);
inline
const
PrimitivePtr
kPrimUniqueGrad
=
std
::
make_shared
<
Primitive
>
(
"UniqueGrad"
);
// NN
inline
const
PrimitivePtr
kPrimFlatten
=
std
::
make_shared
<
Primitive
>
(
"Flatten"
);
inline
const
PrimitivePtr
kPrimSoftmax
=
std
::
make_shared
<
Primitive
>
(
"Softmax"
);
inline
const
PrimitivePtr
kPrimLogSoftmax
=
std
::
make_shared
<
Primitive
>
(
"LogSoftmax"
);
inline
const
PrimitivePtr
kPrimLogSoftmaxGrad
=
std
::
make_shared
<
Primitive
>
(
"LogSoftmaxGrad"
);
inline
const
PrimitivePtr
kPrimTanh
=
std
::
make_shared
<
Primitive
>
(
"Tanh"
);
inline
const
PrimitivePtr
kPrimTanhGrad
=
std
::
make_shared
<
Primitive
>
(
"TanhGrad"
);
inline
const
PrimitivePtr
kPrimPooling
=
std
::
make_shared
<
Primitive
>
(
"Pooling"
);
inline
const
PrimitivePtr
kPrimPoolingGrad
=
std
::
make_shared
<
Primitive
>
(
"PoolingGrad"
);
inline
const
PrimitivePtr
kPrimMaxPool
=
std
::
make_shared
<
Primitive
>
(
"MaxPool"
);
inline
const
PrimitivePtr
kPrimMaxPoolGrad
=
std
::
make_shared
<
Primitive
>
(
"MaxPoolGrad"
);
inline
const
PrimitivePtr
kPrimApplyCenteredRMSProp
=
std
::
make_shared
<
Primitive
>
(
"ApplyCenteredRMSProp"
);
inline
const
PrimitivePtr
kPrimAvgPoolGrad
=
std
::
make_shared
<
Primitive
>
(
"AvgPoolGrad"
);
inline
const
PrimitivePtr
kPrimAvgPoolGradVm
=
std
::
make_shared
<
Primitive
>
(
"AvgPoolGradVm"
);
inline
const
PrimitivePtr
kPrimFusedBatchNorm
=
std
::
make_shared
<
Primitive
>
(
"FusedBatchNorm"
);
inline
const
PrimitivePtr
kPrimConv2D
=
std
::
make_shared
<
Primitive
>
(
"Conv2D"
);
inline
const
PrimitivePtr
kPrimFusedBatchNormGrad
=
std
::
make_shared
<
Primitive
>
(
"FusedBatchNormGrad"
);
inline
const
PrimitivePtr
kPrimBatchNorm
=
std
::
make_shared
<
Primitive
>
(
"BatchNorm"
);
inline
const
PrimitivePtr
kPrimBatchNormGrad
=
std
::
make_shared
<
Primitive
>
(
"BatchNormGrad"
);
inline
const
PrimitivePtr
kPrimReluGrad
=
std
::
make_shared
<
Primitive
>
(
"ReluGrad"
);
inline
const
PrimitivePtr
kPrimConv2DBackpropInput
=
std
::
make_shared
<
Primitive
>
(
"Conv2DBackpropInput"
);
inline
const
PrimitivePtr
kPrimConv2DBackpropFilter
=
std
::
make_shared
<
Primitive
>
(
"Conv2DBackpropFilter"
);
inline
const
PrimitivePtr
kPrimDepthwiseConv2dNative
=
std
::
make_shared
<
Primitive
>
(
"DepthwiseConv2dNative"
);
inline
const
PrimitivePtr
kPrimDepthwiseConv2dNativeBackpropFilter
=
std
::
make_shared
<
Primitive
>
(
"DepthwiseConv2dNativeBackpropFilter"
);
inline
const
PrimitivePtr
kPrimDepthwiseConv2dNativeBackpropInput
=
std
::
make_shared
<
Primitive
>
(
"DepthwiseConv2dNativeBackpropInput"
);
inline
const
PrimitivePtr
kPrimBiasAddGrad
=
std
::
make_shared
<
Primitive
>
(
"BiasAddGrad"
);
inline
const
PrimitivePtr
kPrimSoftmaxCrossEntropyWithLogits
=
std
::
make_shared
<
Primitive
>
(
"SoftmaxCrossEntropyWithLogits"
);
inline
const
PrimitivePtr
kPrimSparseSoftmaxCrossEntropyWithLogits
=
std
::
make_shared
<
Primitive
>
(
"SparseSoftmaxCrossEntropyWithLogits"
);
inline
const
PrimitivePtr
kPrimMomentum
=
std
::
make_shared
<
Primitive
>
(
"Momentum"
);
inline
const
PrimitivePtr
kPrimApplyMomentum
=
std
::
make_shared
<
Primitive
>
(
"ApplyMomentum"
);
inline
const
PrimitivePtr
kPrimLayerNorm
=
std
::
make_shared
<
Primitive
>
(
"LayerNorm"
);
inline
const
PrimitivePtr
kPrimLayerNormGrad
=
std
::
make_shared
<
Primitive
>
(
"LayerNormGrad"
);
inline
const
PrimitivePtr
kPrimLayerNormXBackprop
=
std
::
make_shared
<
Primitive
>
(
"LayerNormXBackprop"
);
inline
const
PrimitivePtr
kPrimLayerNormBetaGammaBackprop
=
std
::
make_shared
<
Primitive
>
(
"LayerNormBetaGammaBackprop"
);
inline
const
PrimitivePtr
kPrimDropoutGenMask
=
std
::
make_shared
<
Primitive
>
(
"DropoutGenMask"
);
inline
const
PrimitivePtr
kPrimDropoutDoMask
=
std
::
make_shared
<
Primitive
>
(
"DropoutDoMask"
);
inline
const
PrimitivePtr
kPrimOneHot
=
std
::
make_shared
<
Primitive
>
(
"OneHot"
);
inline
const
PrimitivePtr
kPrimGelu
=
std
::
make_shared
<
Primitive
>
(
"Gelu"
);
inline
const
PrimitivePtr
kPrimGeluGrad
=
std
::
make_shared
<
Primitive
>
(
"GeluGrad"
);
inline
const
PrimitivePtr
kPrimRelu
=
std
::
make_shared
<
Primitive
>
(
"ReLU"
);
inline
const
PrimitivePtr
kPrimReluV2
=
std
::
make_shared
<
Primitive
>
(
"ReLUV2"
);
inline
const
PrimitivePtr
kPrimZerosLike
=
std
::
make_shared
<
Primitive
>
(
"ZerosLike"
);
inline
const
PrimitivePtr
kPrimBpropCut
=
std
::
make_shared
<
Primitive
>
(
"bprop_cut"
);
inline
const
PrimitivePtr
kPrimFakeQuantPerLayer
=
std
::
make_shared
<
Primitive
>
(
"FakeQuantPerLayer"
);
inline
const
PrimitivePtr
kPrimFakeQuantPerChannel
=
std
::
make_shared
<
Primitive
>
(
"FakeQuantPerChannel"
);
inline
const
PrimitivePtr
kPrimApplyRMSProp
=
std
::
make_shared
<
Primitive
>
(
"ApplyRMSProp"
);
// Comm ops
inline
const
PrimitivePtr
kPrimMirror
=
std
::
make_shared
<
Primitive
>
(
"_MirrorOperator"
);
inline
const
PrimitivePtr
kPrimVirtualDiv
=
std
::
make_shared
<
Primitive
>
(
"_VirtualDiv"
);
inline
const
PrimitivePtr
kPrimVirtualDataset
=
std
::
make_shared
<
Primitive
>
(
"_VirtualDataset"
);
inline
const
PrimitivePtr
kPrimAllReduce
=
std
::
make_shared
<
Primitive
>
(
"AllReduce"
);
// RowTensor
inline
const
PrimitivePtr
kPrimMakeRowTensor
=
std
::
make_shared
<
Primitive
>
(
"MakeRowTensor"
);
inline
const
PrimitivePtr
kPrimRowTensorGetValues
=
std
::
make_shared
<
Primitive
>
(
"RowTensorGetValues"
);
inline
const
PrimitivePtr
kPrimRowTensorGetIndices
=
std
::
make_shared
<
Primitive
>
(
"RowTensorGetIndices"
);
inline
const
PrimitivePtr
kPrimRowTensorGetDenseShape
=
std
::
make_shared
<
Primitive
>
(
"RowTensorGetDenseShape"
);
// SparseTensor
inline
const
PrimitivePtr
kPrimMakeSparseTensor
=
std
::
make_shared
<
Primitive
>
(
"MakeSparseTensor"
);
inline
const
PrimitivePtr
kPrimSparseTensorGetValues
=
std
::
make_shared
<
Primitive
>
(
"SparseTensorGetValues"
);
inline
const
PrimitivePtr
kPrimSparseTensorGetIndices
=
std
::
make_shared
<
Primitive
>
(
"SparseTensorGetIndices"
);
inline
const
PrimitivePtr
kPrimSparseTensorGetDenseShape
=
std
::
make_shared
<
Primitive
>
(
"SparseTensorGetDenseShape"
);
// Maths
inline
const
PrimitivePtr
kPrimTensorAdd
=
std
::
make_shared
<
Primitive
>
(
"TensorAdd"
);
inline
const
PrimitivePtr
kPrimMatMul
=
std
::
make_shared
<
Primitive
>
(
"MatMul"
);
...
...
@@ -64,44 +210,18 @@ inline const PrimitivePtr kPrimAssignSub = std::make_shared<Primitive>("AssignSu
inline
const
PrimitivePtr
kPrimSelect
=
std
::
make_shared
<
Primitive
>
(
"Select"
);
inline
const
PrimitivePtr
kPrimCall
=
std
::
make_shared
<
Primitive
>
(
"call"
);
// Structures
inline
const
PrimitivePtr
kPrimStringEqual
=
std
::
make_shared
<
Primitive
>
(
"string_equal"
);
inline
const
PrimitivePtr
kPrimStringConcat
=
std
::
make_shared
<
Primitive
>
(
"string_concat"
);
inline
const
PrimitivePtr
kPrimMakeTuple
=
std
::
make_shared
<
Primitive
>
(
"make_tuple"
);
inline
const
PrimitivePtr
kPrimMakeDict
=
std
::
make_shared
<
Primitive
>
(
"make_dict"
);
inline
const
PrimitivePtr
kPrimMakeList
=
std
::
make_shared
<
Primitive
>
(
"make_list"
);
inline
const
PrimitivePtr
kPrimMakeKeywordArg
=
std
::
make_shared
<
Primitive
>
(
"make_keyword_arg"
);
inline
const
PrimitivePtr
kPrimMakeSlice
=
std
::
make_shared
<
Primitive
>
(
"make_slice"
);
inline
const
PrimitivePtr
kPrimMakeRecord
=
std
::
make_shared
<
Primitive
>
(
"make_record"
);
inline
const
PrimitivePtr
kPrimTupleGetItem
=
std
::
make_shared
<
Primitive
>
(
"tuple_getitem"
);
inline
const
PrimitivePtr
kPrimListGetItem
=
std
::
make_shared
<
Primitive
>
(
"list_getitem"
);
inline
const
PrimitivePtr
kPrimArrayGetItem
=
std
::
make_shared
<
Primitive
>
(
"array_getitem"
);
inline
const
PrimitivePtr
kPrimTupleSetItem
=
std
::
make_shared
<
Primitive
>
(
"tuple_setitem"
);
inline
const
PrimitivePtr
kPrimListSetItem
=
std
::
make_shared
<
Primitive
>
(
"list_setitem"
);
inline
const
PrimitivePtr
kPrimArraySetItem
=
std
::
make_shared
<
Primitive
>
(
"array_setitem"
);
inline
const
PrimitivePtr
kPrimDictGetItem
=
std
::
make_shared
<
Primitive
>
(
"dict_getitem"
);
inline
const
PrimitivePtr
kPrimDictSetItem
=
std
::
make_shared
<
Primitive
>
(
"dict_setitem"
);
inline
const
PrimitivePtr
kPrimListAppend
=
std
::
make_shared
<
Primitive
>
(
"list_append"
);
inline
const
PrimitivePtr
kPrimGetAttr
=
std
::
make_shared
<
Primitive
>
(
"getattr"
);
inline
const
PrimitivePtr
kPrimTupleLen
=
std
::
make_shared
<
Primitive
>
(
"tuple_len"
);
inline
const
PrimitivePtr
kPrimDictLen
=
std
::
make_shared
<
Primitive
>
(
"dict_len"
);
inline
const
PrimitivePtr
kPrimListLen
=
std
::
make_shared
<
Primitive
>
(
"list_len"
);
inline
const
PrimitivePtr
kPrimArrayLen
=
std
::
make_shared
<
Primitive
>
(
"array_len"
);
inline
const
PrimitivePtr
kPrimListMap
=
std
::
make_shared
<
Primitive
>
(
"list_map"
);
inline
const
PrimitivePtr
kPrimListReduce
=
std
::
make_shared
<
Primitive
>
(
"list_reduce"
);
inline
const
PrimitivePtr
kPrimTupleReversed
=
std
::
make_shared
<
Primitive
>
(
"tuple_reversed"
);
inline
const
PrimitivePtr
kPrimTileShape
=
std
::
make_shared
<
Primitive
>
(
"tile_shape"
);
inline
const
PrimitivePtr
kPrimReducedShape
=
std
::
make_shared
<
Primitive
>
(
"reduced_shape"
);
inline
const
PrimitivePtr
kPrimTupleDiv
=
std
::
make_shared
<
Primitive
>
(
"tuple_div"
);
inline
const
PrimitivePtr
kPrimTupleToArray
=
std
::
make_shared
<
Primitive
>
(
"tuple_to_array"
);
inline
const
PrimitivePtr
kPrimShapeMul
=
std
::
make_shared
<
Primitive
>
(
"shape_mul"
);
inline
const
PrimitivePtr
kPrimGenerateShapeIndex
=
std
::
make_shared
<
Primitive
>
(
"generate_shape_index"
);
inline
const
PrimitivePtr
kPrimGenerateInverseIndex
=
std
::
make_shared
<
Primitive
>
(
"generate_inverse_index"
);
inline
const
PrimitivePtr
kPrimTupleEqual
=
std
::
make_shared
<
Primitive
>
(
"tuple_equal"
);
inline
const
PrimitivePtr
kPrimListEqual
=
std
::
make_shared
<
Primitive
>
(
"list_equal"
);
inline
const
PrimitivePtr
kPrimMakeRange
=
std
::
make_shared
<
Primitive
>
(
"make_range"
);
inline
const
PrimitivePtr
kPrimStopGradient
=
std
::
make_shared
<
Primitive
>
(
"stop_gradient"
);
inline
const
PrimitivePtr
kPrimExtractKeywordArg
=
std
::
make_shared
<
Primitive
>
(
"extract_keyword_arg"
);
// Debug ops
inline
const
PrimitivePtr
kPrimScalarSummary
=
std
::
make_shared
<
Primitive
>
(
"ScalarSummary"
);
...
...
@@ -111,34 +231,29 @@ inline const PrimitivePtr kPrimHistogramSummary = std::make_shared<Primitive>("H
inline
const
PrimitivePtr
kPrimDebug
=
std
::
make_shared
<
Primitive
>
(
"Debug"
);
// Other miscellaneous
inline
const
PrimitivePtr
kPrimJ
=
std
::
make_shared
<
Primitive
>
(
"J"
);
inline
const
PrimitivePtr
kPrimDepend
=
std
::
make_shared
<
Primitive
>
(
"Depend"
);
inline
const
PrimitivePtr
kPrimPartial
=
std
::
make_shared
<
Primitive
>
(
"Partial"
);
inline
const
PrimitivePtr
kPrimIdentity
=
std
::
make_shared
<
Primitive
>
(
"identity"
);
inline
const
PrimitivePtr
kPrimEnvSetItem
=
std
::
make_shared
<
Primitive
>
(
"env_setitem"
);
inline
const
PrimitivePtr
kPrimEnvGetItem
=
std
::
make_shared
<
Primitive
>
(
"env_getitem"
);
inline
const
PrimitivePtr
kPrimEnvAdd
=
std
::
make_shared
<
Primitive
>
(
"env_add"
);
inline
const
PrimitivePtr
kPrimMakeRefKey
=
std
::
make_shared
<
Primitive
>
(
"MakeRefKey"
);
inline
const
PrimitivePtr
kPrimGetRefKey
=
std
::
make_shared
<
Primitive
>
(
"get_ref_key"
);
inline
const
PrimitivePtr
kPrimGetRefValue
=
std
::
make_shared
<
Primitive
>
(
"get_ref_value"
);
inline
const
PrimitivePtr
kPrimInsertGradientOf
=
std
::
make_shared
<
Primitive
>
(
"InsertGradientOf"
);
inline
const
PrimitivePtr
kPrimHookBackward
=
std
::
make_shared
<
Primitive
>
(
"HookBackward"
);
inline
const
PrimitivePtr
kPrimPrintShapeType
=
std
::
make_shared
<
Primitive
>
(
"PrintShapeType"
);
inline
const
PrimitivePtr
kPrimSameTypeShape
=
std
::
make_shared
<
Primitive
>
(
"SameTypeShape"
);
inline
const
PrimitivePtr
kPrimCheckBprop
=
std
::
make_shared
<
Primitive
>
(
"CheckBprop"
);
inline
const
PrimitivePtr
kPrimPrint
=
std
::
make_shared
<
Primitive
>
(
"Print"
);
inline
const
PrimitivePtr
kPrimMakeRef
=
std
::
make_shared
<
Primitive
>
(
"make_ref"
);
inline
const
PrimitivePtr
kPrimStateSetItem
=
std
::
make_shared
<
Primitive
>
(
"state_setitem"
);
inline
const
PrimitivePtr
kPrimBroadcastGradientArgs
=
std
::
make_shared
<
Primitive
>
(
"BroadcastGradientArgs"
);
inline
const
PrimitivePtr
kPrimControlDepend
=
std
::
make_shared
<
Primitive
>
(
"ControlDepend"
);
inline
const
PrimitivePtr
kPrimIs_
=
std
::
make_shared
<
Primitive
>
(
"is_"
);
inline
const
PrimitivePtr
kPrimIsNot
=
std
::
make_shared
<
Primitive
>
(
"is_not"
);
inline
const
PrimitivePtr
kPrimInDict
=
std
::
make_shared
<
Primitive
>
(
"in_dict"
);
inline
const
PrimitivePtr
kPrimNotInDict
=
std
::
make_shared
<
Primitive
>
(
"not_in_dict"
);
inline
const
PrimitivePtr
kPrimMixedPrecisionCast
=
std
::
make_shared
<
Primitive
>
(
"mixed_precision_cast"
);
inline
const
PrimitivePtr
kPrimIsConsant
=
std
::
make_shared
<
Primitive
>
(
"is_constant"
);
inline
const
PrimitivePtr
kPrimEquivFormat
=
std
::
make_shared
<
Primitive
>
(
"EquivFormat"
);
// Other primitve not used by backend but used in core;
inline
const
PrimitivePtr
kPrimStateSetItem
=
std
::
make_shared
<
Primitive
>
(
"state_setitem"
);
inline
const
PrimitivePtr
kPrimJ
=
std
::
make_shared
<
Primitive
>
(
"J"
);
// Used to build graph which have keyword arguments
inline
const
PrimitivePtr
kPrimExtractKeywordArg
=
std
::
make_shared
<
Primitive
>
(
"extract_keyword_arg"
);
inline
const
PrimitivePtr
kPrimMakeDict
=
std
::
make_shared
<
Primitive
>
(
"make_dict"
);
class
DoSignaturePrimitive
:
public
Primitive
{
public:
explicit
DoSignaturePrimitive
(
const
std
::
string
&
name
,
const
ValuePtr
&
function
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录