TIM-VX/src/tim/vx/ops/README.md

18 KiB

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

TIM-VX API Internal Op Status Reference
Add ADD Mapped tf.math.add
Multiply MULTIPLY Mapped tf.math.multiply
Conv2d CONV2D Mapped tf.nn.conv2d tf.nn.atros_conv2d tf.nn.depthwise_conv2d
Softmax SOFTMAX Mapped tf.nn.softmax
Pool2d POOL Mapped tf.nn.pool
LeakyRelu LEAKY_RELU Mapped tf.nn.leaky_relu
Concat CONCAT Mapped tf.concat
Split SPLIT Mapped tf.split
BatchNorm BATCH_NORM Mapped tf.nn.batch_normalization
DeConv2d DECONVOLUTION Mapped tf.nn.conv2d_transpose
Reshape RESHAPE Mapped tf.reshape
Transpose PERMUTE Mapped tf.transpose
Prelu PRELU Mapped tf.keras.layers.PReLU
MaxUnpool2d UPSAMPLE Mapped tfa.layers.MaxUnpooling2D
Relu RELU Mapped tf.nn.relu
Reorg REORG Mapped darknet.reorg
L2Normalization L2_NORMALIZE Mapped tf.math.l2_normalize
FullyConnected FCL2 Mapped tf.keras.layers.Dense
Dense FCL Mapped tf.keras.layers.Dense
MaxpoolWithArgmax POOLWITHARGMAX Mapped tf.nn.max_pool_with_argmax
ArgMax ARGMAX Mapped tf.math.argmax
Maximum MAXIMUM Mapped tf.math.maximum
Sub SUBTRACT Mapped tf.math.subtract
Relu6 RELU6 Mapped tf.nn.relu6
Sigmoid SIGMOID Mapped tf.math.sigmoid
Tanh TANH Mapped tf.math.tanh
Sqrt SQRT Mapped tf.math.sqrt
Rsqrt RSQRT Mapped tf.math.rsqrt
SoftRelu SOFTRELU Mapped tf.math.softplus
Div DIVIDE Mapped tf.math.divide
Dropout DROPOUT Mapped f(x) = x*ratio
Resize RESIZE Mapped tf.image.resize
Reverse REVERSE Mapped tf.reverse
DepthToSpace DEPTH2SPACE Mapped tf.nn.depth_to_space
SpaceToDepth SPACE2DEPTH Mapped tf.nn.space_to_depth
DataConvert DATACONVERT Mapped Data Format Conversion
Slice SLICE Mapped tf.slice
Elu ELU Mapped tf.nn.elu
Batch2Space BATCH2SPACE Mapped tf.batch_to_space
Space2Batch SPACE2BATCH Mapped tf.space_to_batch
Pad PAD Mapped tf.pad
Matmul MATRIXMUL Mapped tf.linalg.matmul
LayerNormalization LAYER_NORM Mapped tf.keras.layers.LayerNormalization
ReduceMin REDUCE_MIN Mapped tf.math.reduce_min
ReduceMax REDUCE_MAX Mapped tf.math.reduce_max
ReduceAny REDUCE_ANY Mapped tf.math.reduce_any
ReduceProd REDUCE_PROD Mapped tf.math.reduce_prod
ReduceMean REDUCE_MEAN Mapped tf.math.reduce_mean
InstanceNormalization INSTANCE_NORM Mapped tfa.layers.InstanceNormalization
StridedSlice STRIDED_SLICE Mapped tf.strided_slice
Abs ABS Mapped tf.math.abs
Conv1d CONV1D Mapped tf.nn.conv1d
NBG NBG Mapped Network Binary Graph
LocalResponseNormalization LRN2 Mapped tf.nn.local_response_normalization
Greater RELATIONAL_OPS_GREATER Mapped tf.math.greater
GreaterOrEqual RELATIONAL_OPS_GREATER_EQUAL Mapped tf.math.greater_equal
Less RELATIONAL_OPS_LESS Mapped tf.math.less
LessOrEqual RELATIONAL_OPS_LESS_EQUAL Mapped tf.math.less_equal
Equal RELATIONAL_OPS_EQUAL Mapped tf.math.equal
NotEqual RELATIONAL_OPS_NOT_EQUAL Mapped tf.math.not_equal
Pow POW Mapped tf.math.pow
FloorDiv FLOORDIV Mapped tf.math.floordiv
Minimum MINIMUM Mapped tf.math.minimum
And LOGICAL_OPS Mapped tf.math.logical_and
Or LOGICAL_OPS Mapped tf.math.logical_or
Select SELECT Mapped tf.where
Relu1 RELU1 Mapped tf.keras.layers.ReLU(max_value=1.0)
Stack STACK Mapped tf.stack
Floor FLOOR Mapped tf.math.floor
Square SQUARE Mapped tf.math.square
Neg NEG Mapped tf.math.negative
Exp EXP Mapped tf.math.exp
Clip CLIP Mapped tf.clip_by_value
AddN ADDN Mapped tf.math.add_n
Gather GATHER Mapped tf.gather
Gather_elements GATHER_ELEMENTS Mapped onnx/GatherElements
LogicalNot LOGICAL_NOT Mapped tf.math.logical_not
Sin SIN Mapped tf.math.sin
Log LOG Mapped tf.math.log
ArgMin ARGMIN Mapped tf.math.argmin
LogSoftmax LOG_SOFTMAX Mapped tf.nn.log_softmax
Swish SWISH Mapped tf.keras.activations.swish
HardSwish SWISH Mapped torch.nn.Hardswish
GatherNd GATHER_ND Mapped tf.gather_nd
Cast CAST Mapped tf.cast
Moments MOMENTS Mapped tf.moments
Squeeze SQUEEZE Mapped tf.squeeze
HardSigmoid HARD_SIGMOID Mapped tf.keras.activations.hard_sigmoid
Mish MISH Mapped tfa.activations.mish
DeConv1d DECONVOLUTION1D Mapped tf.nn.conv1d_transpose
Resize1d RESIZE_1D Mapped Onnx.resize 1D image
Linear LINEAR Mapped tf.keras.activations.linear
ScatterND SCATTER_ND Mapped tf.scatter_nd
Unstack UNSTACK Mapped tf.unstack
Tile TILE Mapped tf.tile
GroupedConv2d GROUPED_CONV2D Mapped ANEURALNETWORKS_GROUPED_CONV_2D
SpatialTransformer SPATIAL_TRANSFORMER Mapped SpatialTransformer
ShuffleChannel SHUFFLECHANNEL Mapped ANEURALNETWORKS_CHANNEL_SHUFFLE
Gelu GELU Mapped tf.nn.gelu
Svdf SVDF Mapped ANEURALNETWORKS_SVDF
Erf ERF Mapped tf.math.erf
GroupedConv1d GROUPED_CONV1D Mapped tf.keras.layers.Conv1D
SignalFrame SIGNAL_FRAME Mapped tf.signal.frame
RNNCell RNNCELL_OVXLIB Mapped ANEURALNETWORKS_RNN
BroadCast EXPAND_BROADCAST Mapped numpy.broadcast_to
PROPOSAL TBD Faster-RCNN Proposal Layer
ROI_POOL Planned 22Q4 ANEURALNETWORKS_ROI_POOLING
ROI_Align ROI_ALIGN Mapped ANEURALNETWORKS_ROI_ALIGN
TopK TOPK Mapped (limited support) tf.math.top_k
GRUCell GRUCELL_OVXLIB Mapped tf.keras.layers.GRUCell
UnidirectionalSequenceGRU GRU_OVXLIB Mapped tf.keras.layers.GRU
Mod MOD Mapped Onnx.Mod
Selu SELU Mapped tf.keras.activations.selu
Celu CELU Mapped Onnx.celu
Rcp RCP Mapped tf.math.reciprocal
MaxPool3d MAX_POOL3D Mapped Onnx.MaxPool
UnidirectionalSequenceRNN UNIDIRECTIONAL_SEQUENCE_RNN Planned 22Q3 ANEURALNETWORKS_UNIDIRECTIONAL_SEQUENCE_RNN
CumSum CUMSUM Mapped tf.math.cumsum
BidirectionalSequenceRNN BIDIRECTIONAL_SEQUENCE_RNN Planned 22Q3 ANEURALNETWORKS_BIDIRECTIONAL_SEQUENCE_RNN
BidirectionalSequenceLSTM BIDIRECTIONAL_SEQUENCE_LSTM Mapped ANEURALNETWORKS_BIDIRECTIONAL_SEQUENCE_LSTM
UnidirectionalSequenceLSTM LSTM_OVXLIB Mapped ANEURALNETWORKS_UNIDIRECTIONAL_SEQUENCE_LSTM
LSTMCell LSTMUNIT_OVXLIB replace with UnidirectionalSequenceLSTM by set n_step = 1 ANEURALNETWORKS_LSTM
PRE_PROCESS TBD Image Preprocessing (YUV2RGB, Input Normalization, Resizing, etc)
HASHTABLE_LOOKUP Planned 22Q4 ANEURALNETWORKS_HASHTABLE_LOOKUP
EMBEDDING_LOOKUP Planned 22Q4 ANEURALNETWORKS_EMBEDDING_LOOKUP
LSH_PROJECTION Planned 22Q4 ANEURALNETWORKS_LSH_PROJECTION
HEATMAP_MAX_KEYPOINT TBD ANEURALNETWORKS_HEATMAP_MAX_KEYPOINT
AXIS_ALIGNED_BBOX_TRANSFORM TBD ANEURALNETWORKS_AXIS_ALIGNED_BBOX_TRANSFORM
BOX_WITH_NMS_LIMIT TBD ANEURALNETWORKS_BOX_WITH_NMX_LIMIT
GENERATE_PROPOSALS TBD ANEURALNETWORKS_GENERATE_PROPOSALS
DETECTION_POSTPROCESS TBD ANEURALNETWORKS_DETECTION_POSTPROCESSING
RANDOM_MULTINOMIAL TBD ANEURALNETWORKS_RANDOM_MULTINOMIAL](https://developer.android.com/ndk/reference/group/neural-networks#group___neural_networks_1ggaabbe492c60331b13038e39d4207940e0a6cb5032c09d3c4b542d18495c247b5b4)
UPSAMPLESCALE TBD Unoffical Caffe layer
GROUP_NORM Planned 22Q4 tf.layers.GroupNormalization](https://tensorflow.google.cn/addons/api_docs/python/tfa/layers/GroupNormalization)
ROUND Planned 22Q4 tf.math.round
CEIL Planned 22Q4 tf.math.ceil
SEQUENCE_MASK Planned 22Q4 tf.math.ceil
REPEAT Planned 22Q4 tf.repeat
OneHot ONE_HOT Mapped tf.one_hot
NMS TBD tf.image.non_max_suppression
SCATTER_ND_UPDATE Planned 21Q4 tf.compat.v1.scatter_nd_update
CONV_RELU Deprecated
CONV_RELU_POOL Deprecated
FCL Deprecated
FCL_RELU Deprecated
LRN Deprecated
SCALE Deprecated
DEPTHWISE_CONV1D Deprecated
L2NORMALIZESCALE Deprecated
INTERP Deprecated
NOOP Deprecated
TENSORSTACKCONCAT Deprecated
VARIABLE InternalOnly
RELUN Deprecated
CROP Deprecated
TENSOR_ADD_MEAN_STDDEV_NORM InternalOnly
RNN Deprecated
LSTMUNIT_ACTIVATION InternalOnly
LSTM Deprecated
LSTMUNIT Deprecated
QUANTIZED_16BIT_LSTM InternalOnly
RELU_KERAS Deprecated
PRE_PROCESS_GRAY InternalOnly
PRE_PROCESS_YUV444 InternalOnly
PRE_PROCESS_NV12 InternalOnly
PRE_PROCESS_YUV420 InternalOnly
PRE_PROCESS_BGRA InternalOnly
PRE_PROCESS_TENSOR InternalOnly
IMAGEPROCESS Deprecated
POST_PROCESS InternalOnly
EXTRA_ENDING InternalOnly
SYNC_HOST InternalOnly
BATCHNORM_SINGLE InternalOnly
CONCATSHIFT InternalOnly
A_TIMES_B_PLUS_C Deprecated tf.add(tf.mul(A, B), C)