README.md

April 20, 2023 ยท View on GitHub

INFO: Actual implementations may differ from reference link in terms of dimensions and parameters supported

TIM-VX APIInternal OpStatusReference
AddADDMappedtf.math.add
MultiplyMULTIPLYMappedtf.math.multiply
Conv2dCONV2DMappedtf.nn.conv2d tf.nn.atros_conv2d tf.nn.depthwise_conv2d
Conv3dCONV3DMappedtf.nn.conv3d
SoftmaxSOFTMAXMappedtf.nn.softmax
Pool2dPOOLMappedtf.nn.pool
Pool1dPOOLMappedtf.nn.pool
LeakyReluLEAKY_RELUMappedtf.nn.leaky_relu
ConcatCONCATMappedtf.concat
SplitSPLITMappedtf.split
BatchNormBATCH_NORMMappedtf.nn.batch_normalization
DeConv2dDECONVOLUTIONMappedtf.nn.conv2d_transpose
ReshapeRESHAPEMappedtf.reshape
TransposePERMUTEMappedtf.transpose
PreluPRELUMappedtf.keras.layers.PReLU
MaxUnpool2dUPSAMPLEMappedtfa.layers.MaxUnpooling2D
ReluRELUMappedtf.nn.relu
ReorgREORGMappeddarknet.reorg
L2NormalizationL2_NORMALIZEMappedtf.math.l2_normalize
FullyConnectedFCL2Mappedtf.keras.layers.Dense
DenseFCLMappedtf.keras.layers.Dense
MaxpoolWithArgmaxPOOLWITHARGMAXMappedtf.nn.max_pool_with_argmax
MaxpoolWithArgmax2MAXPOOLWITHARGMAXMappedtf.nn.max_pool_with_argmax
ArgMaxARGMAXMappedtf.math.argmax
MaximumMAXIMUMMappedtf.math.maximum
SubSUBTRACTMappedtf.math.subtract
Relu6RELU6Mappedtf.nn.relu6
SigmoidSIGMOIDMappedtf.math.sigmoid
TanhTANHMappedtf.math.tanh
SqrtSQRTMappedtf.math.sqrt
RsqrtRSQRTMappedtf.math.rsqrt
SoftReluSOFTRELUMappedtf.math.softplus
DivDIVIDEMappedtf.math.divide
DropoutDROPOUTMappedf(x) = x*ratio
ResizeRESIZEMappedtf.image.resize
ReverseREVERSEMappedtf.reverse
DepthToSpaceDEPTH2SPACEMappedtf.nn.depth_to_space
SpaceToDepthSPACE2DEPTHMappedtf.nn.space_to_depth
DataConvertDATACONVERTMappedData Format Conversion
SliceSLICEMappedtf.slice
EluELUMappedtf.nn.elu
Batch2SpaceBATCH2SPACEMappedtf.batch_to_space
Space2BatchSPACE2BATCHMappedtf.space_to_batch
PadPADMappedtf.pad
MatmulMATRIXMULMappedtf.linalg.matmul
PadV2PAD2Mappedtf.raw_ops.PadV2
MatmulMATRIXMULMappedtf.linalg.matmul
LayerNormalizationLAYER_NORMMappedtf.keras.layers.LayerNormalization
ReduceMinREDUCE_MINMappedtf.math.reduce_min
ReduceMaxREDUCE_MAXMappedtf.math.reduce_max
ReduceAnyREDUCE_ANYMappedtf.math.reduce_any
ReduceProdREDUCE_PRODMappedtf.math.reduce_prod
ReduceMeanREDUCE_MEANMappedtf.math.reduce_mean
ReduceAllREDUCE_ALLMappedtf.math.reduce_all
ReduceSumREDUCE_SUMMappedtf.math.reduce_sum
InstanceNormalizationINSTANCE_NORMMappedtfa.layers.InstanceNormalization
StridedSliceSTRIDED_SLICEMappedtf.strided_slice
AbsABSMappedtf.math.abs
Conv1dCONV1DMappedtf.nn.conv1d
NBGNBGMappedNetwork Binary Graph
LocalResponseNormalizationLRN2Mappedtf.nn.local_response_normalization
GreaterRELATIONAL_OPS_GREATERMappedtf.math.greater
GreaterOrEqualRELATIONAL_OPS_GREATER_EQUALMappedtf.math.greater_equal
LessRELATIONAL_OPS_LESSMappedtf.math.less
LessOrEqualRELATIONAL_OPS_LESS_EQUALMappedtf.math.less_equal
EqualRELATIONAL_OPS_EQUALMappedtf.math.equal
NotEqualRELATIONAL_OPS_NOT_EQUALMappedtf.math.not_equal
PowPOWMappedtf.math.pow
FloorDivFLOORDIVMappedtf.math.floordiv
MinimumMINIMUMMappedtf.math.minimum
AndLOGICAL_OPSMappedtf.math.logical_and
OrLOGICAL_OPSMappedtf.math.logical_or
SelectSELECTMappedtf.where
Relu1RELU1Mappedtf.keras.layers.ReLU(max_value=1.0)
StackSTACKMappedtf.stack
FloorFLOORMappedtf.math.floor
SquareSQUAREMappedtf.math.square
NegNEGMappedtf.math.negative
ExpEXPMappedtf.math.exp
ClipCLIPMappedtf.clip_by_value
AddNADDNMappedtf.math.add_n
GatherGATHERMappedtf.gather
Gather_elementsGATHER_ELEMENTSMappedonnx/GatherElements
LogicalNotLOGICAL_NOTMappedtf.math.logical_not
SinSINMappedtf.math.sin
LogLOGMappedtf.math.log
ArgMinARGMINMappedtf.math.argmin
LogSoftmaxLOG_SOFTMAXMappedtf.nn.log_softmax
SwishSWISHMappedtf.keras.activations.swish
HardSwishSWISHMappedtorch.nn.Hardswish
GatherNdGATHER_NDMappedtf.gather_nd
CastCASTMappedtf.cast
MomentsMOMENTSMappedtf.moments
SqueezeSQUEEZEMappedtf.squeeze
HardSigmoidHARD_SIGMOIDMappedtf.keras.activations.hard_sigmoid
MishMISHMappedtfa.activations.mish
DeConv1dDECONVOLUTION1DMappedtf.nn.conv1d_transpose
Resize1dRESIZE_1DMappedOnnx.resize 1D image
LinearLINEARMappedtf.keras.activations.linear
ScatterNDSCATTER_NDMappedtf.scatter_nd
UnstackUNSTACKMappedtf.unstack
TileTILEMappedtf.tile
GroupedConv2dGROUPED_CONV2DMappedANEURALNETWORKS_GROUPED_CONV_2D
SpatialTransformerSPATIAL_TRANSFORMERMappedSpatialTransformer
ShuffleChannelSHUFFLECHANNELMappedANEURALNETWORKS_CHANNEL_SHUFFLE
GeluGELUMappedtf.nn.gelu
SvdfSVDFMappedANEURALNETWORKS_SVDF
ErfERFMappedtf.math.erf
GroupedConv1dGROUPED_CONV1DMappedtf.keras.layers.Conv1D
SignalFrameSIGNAL_FRAMEMappedtf.signal.frame
RNNCellRNNCELL_OVXLIBMappedANEURALNETWORKS_RNN
BroadCastEXPAND_BROADCASTMappednumpy.broadcast_to
RoiPoolROI_POOLMappedANEURALNETWORKS_ROI_POOLING
ROI_AlignROI_ALIGNMappedANEURALNETWORKS_ROI_ALIGN
TopkTOPKMapped (limited support)tf.math.top_k
GRUCellGRUCELL_OVXLIBMappedtf.keras.layers.GRUCell
UnidirectionalSequenceGRUGRU_OVXLIBMappedtf.keras.layers.GRU
ModMODMappedOnnx.Mod
SeluSELUMappedtf.keras.activations.selu
CeluCELUMappedOnnx.celu
SignSIGNMappedtf.math.sign
SoftSignSOFTSIGNMappedtf.keras.activations.softsign
CumSumCUMSUMMappedtf.math.cumsum
RcpRCPMappedtf.math.reciprocal
MaxPool3dMAX_POOL3DMappedOnnx.MaxPool
UnidirectionalSequenceRNNUNIDIRECTIONAL_SEQUENCE_RNNMappedANEURALNETWORKS_UNIDIRECTIONAL_SEQUENCE_RNN
BidirectionalSequenceRNNBIDIRECTIONAL_SEQUENCE_RNNMappedANEURALNETWORKS_BIDIRECTIONAL_SEQUENCE_RNN
BidirectionalSequenceLSTMLSTM_OVXLIBComposed in tim-vxANEURALNETWORKS_BIDIRECTIONAL_SEQUENCE_LSTM
UnidirectionalSequenceLSTMLSTM_OVXLIBMappedANEURALNETWORKS_UNIDIRECTIONAL_SEQUENCE_LSTM
LSTMCellLSTMUNIT_OVXLIBreplace with UnidirectionalSequenceLSTM by set n_step = 1ANEURALNETWORKS_LSTM
HashtableLookupHASHTABLE_LOOKUPMappedANEURALNETWORKS_HASHTABLE_LOOKUP
EmbeddingLookupEMBEDDING_LOOKUPMappedANEURALNETWORKS_EMBEDDING_LOOKUP
RoundROUNDMappedtf.math.round
CeilCEILMappedtf.math.ceil
OneHotONE_HOTMappedtf.one_hot
PRE_PROCESSTBDImage Preprocessing (YUV2RGB, Input Normalization, Resizing, etc)
PROPOSALTBDFaster-RCNN Proposal Layer
HEATMAP_MAX_KEYPOINTTBDANEURALNETWORKS_HEATMAP_MAX_KEYPOINT
AXIS_ALIGNED_BBOX_TRANSFORMTBDANEURALNETWORKS_AXIS_ALIGNED_BBOX_TRANSFORM
BOX_WITH_NMS_LIMITTBDANEURALNETWORKS_BOX_WITH_NMX_LIMIT
GENERATE_PROPOSALSTBDANEURALNETWORKS_GENERATE_PROPOSALS
DETECTION_POSTPROCESSTBDANEURALNETWORKS_DETECTION_POSTPROCESSING
RANDOM_MULTINOMIALTBDANEURALNETWORKS_RANDOM_MULTINOMIAL](https://developer.android.com/ndk/reference/group/neural-networks#group___neural_networks_1ggaabbe492c60331b13038e39d4207940e0a6cb5032c09d3c4b542d18495c247b5b4)
UPSAMPLESCALETBDUnoffical Caffe layer
GROUP_NORMTBDtf.layers.GroupNormalization](https://tensorflow.google.cn/addons/api_docs/python/tfa/layers/GroupNormalization)
SEQUENCE_MASKTBDtf.math.ceil
REPEATTBDtf.repeat
NMSTBDtf.image.non_max_suppression
SCATTER_ND_UPDATETBDtf.compat.v1.scatter_nd_update
LSH_PROJECTIONDeprecated
CONV_RELUDeprecated
CONV_RELU_POOLDeprecated
FCLDeprecated
FCL_RELUDeprecated
LRNDeprecated
SCALEDeprecated
DEPTHWISE_CONV1DDeprecated
L2NORMALIZESCALEDeprecated
INTERPDeprecated
NOOPDeprecated
TENSORSTACKCONCATDeprecated
VARIABLEInternalOnly
RELUNDeprecated
CROPDeprecated
TENSOR_ADD_MEAN_STDDEV_NORMInternalOnly
RNNDeprecated
LSTMUNIT_ACTIVATIONInternalOnly
LSTMDeprecated
LSTMUNITDeprecated
QUANTIZED_16BIT_LSTMInternalOnly
RELU_KERASDeprecated
PRE_PROCESS_GRAYInternalOnly
PRE_PROCESS_YUV444InternalOnly
PRE_PROCESS_NV12InternalOnly
PRE_PROCESS_YUV420InternalOnly
PRE_PROCESS_BGRAInternalOnly
PRE_PROCESS_TENSORInternalOnly
IMAGEPROCESSDeprecated
POST_PROCESSInternalOnly
EXTRA_ENDINGInternalOnly
SYNC_HOSTInternalOnly
BATCHNORM_SINGLEInternalOnly
CONCATSHIFTInternalOnly
A_TIMES_B_PLUS_CDeprecatedtf.add(tf.mul(A, B), C)