Android NNAPI Supporting Operations Category Operations API level 27(Android 8.1) API level 28(Android 9) API level 29(Android 10) API level 30(Android 11) Element-wise mathematical operations ANEURALNETWORKS_ABS ✓ ✓ ANEURALNETWORKS_ADD ✓ ✓ ✓ ANEURALNETWORKS_DIV ✓ ✓ ✓ ANEURALNETWORKS_EQUAL ✓ ✓ ANEURALNETWORKS_EXP ✓ ANEURALNETWORKS_FLOOR ✓ ✓ ANEURALNETWORKS_GREATER ✓ ✓ ANEURALNETWORKS_GREATER_OR_EQUAL ✓ ✓ ANEURALNETWORKS_LESS ✓ ✓ ANEURALNETWORKS_LESS_OR_EQUAL ✓ ✓ ANEURALNETWORKS_LOG ✓ ANEURALNETWORKS_LOGICAL_AND ✓ ANEURALNETWORKS_LOGICAL_NOT ✓ ANEURALNETWORKS_LOGICAL_OR ✓ ANEURALNETWORKS_MAXIMUM ✓ ✓ ANEURALNETWORKS_MINIMUM ✓ ✓ ANEURALNETWORKS_MUL ✓ ✓ ✓ ANEURALNETWORKS_NEG ✓ ANEURALNETWORKS_NOT_EQUAL ✓ ✓ ANEURALNETWORKS_POW ✓ ANEURALNETWORKS_RSQRT ✓ ANEURALNETWORKS_SIN ✓ ANEURALNETWORKS_SQRT ✓ ANEURALNETWORKS_SUB ✓ ✓ ✓ Tensor manipulation ANEURALNETWORKS_ARGMAX ✓ ✓ ANEURALNETWORKS_ARGMIN ✓ ✓ ANEURALNETWORKS_BATCH_TO_SPACE_ND ✓ ✓ ✓ ANEURALNETWORKS_CAST ✓ ANEURALNETWORKS_CHANNEL_SHUFFLE ✓ ✓ ANEURALNETWORKS_CONCATENATION ✓ ✓ ✓ ANEURALNETWORKS_DEPTH_TO_SPACE ✓ ✓ ✓ ANEURALNETWORKS_DEQUANTIZE ✓ ✓ ✓ ANEURALNETWORKS_EXPAND_DIMS ✓ ✓ ANEURALNETWORKS_GATHER ✓ ✓ ANEURALNETWORKS_MEAN ✓ ✓ ✓ ANEURALNETWORKS_PAD ✓ ✓ ✓ ANEURALNETWORKS_PAD_V2 ✓ ✓ ANEURALNETWORKS_QUANTIZE ✓ ✓ ANEURALNETWORKS_REDUCE_ALL ✓ ANEURALNETWORKS_REDUCE_ANY ✓ ANEURALNETWORKS_REDUCE_MAX ✓ ✓ ANEURALNETWORKS_REDUCE_MIN ✓ ✓ ANEURALNETWORKS_REDUCE_PROD ✓ ANEURALNETWORKS_REDUCE_SUM ✓ ANEURALNETWORKS_RESHAPE ✓ ✓ ✓ ANEURALNETWORKS_SLICE ✓ ✓ ANEURALNETWORKS_SPACE_TO_BATCH_ND ✓ ✓ ✓ ANEURALNETWORKS_SPACE_TO_DEPTH ✓ ✓ ✓ ANEURALNETWORKS_SPLIT ✓ ✓ ANEURALNETWORKS_SQUEEZE ✓ ✓ ✓ ANEURALNETWORKS_STRIDED_SLICE ✓ ✓ ✓ ANEURALNETWORKS_TILE ✓ ✓ ANEURALNETWORKS_TOPK_V2 ✓ ✓ ANEURALNETWORKS_TRANSPOSE ✓ ✓ ✓ Image operations ANEURALNETWORKS_RESIZE_BILINEAR ✓ ✓ ✓ ANEURALNETWORKS_RESIZE_NEAREST_NEIGHBOR ✓ ✓ Lookup operations ANEURALNETWORKS_EMBEDDING_LOOKUP ✓ ✓ ✓ ANEURALNETWORKS_HASHTABLE_LOOKUP ✓ Normalization operations ANEURALNETWORKS_INSTANCE_NORMALIZATION ✓ ANEURALNETWORKS_L2_NORMALIZATION ✓ ✓ ✓ ANEURALNETWORKS_LOCAL_RESPONSE_NORMALIZATION ✓ ✓ Convolution operations ANEURALNETWORKS_CONV_2D ✓ ✓ ✓ ANEURALNETWORKS_DEPTHWISE_CONV_2D ✓ ✓ ✓ ANEURALNETWORKS_GROUPED_CONV_2D ✓ ✓ ANEURALNETWORKS_TRANSPOSE_CONV_2D ✓ ✓ Pooling operations ANEURALNETWORKS_AVERAGE_POOL_2D ✓ ✓ ✓ ANEURALNETWORKS_L2_POOL_2D ✓ ✓ ANEURALNETWORKS_MAX_POOL_2D ✓ ✓ ✓ Activation operations ANEURALNETWORKS_LOG_SOFTMAX ✓ ANEURALNETWORKS_LOGISTIC ✓ ✓ ✓ ANEURALNETWORKS_PRELU ✓ ✓ ANEURALNETWORKS_RELU ✓ ✓ ✓ ANEURALNETWORKS_RELU1 ✓ ✓ ✓ ANEURALNETWORKS_RELU6 ✓ ✓ ✓ ANEURALNETWORKS_SOFTMAX ✓ ✓ ✓ ANEURALNETWORKS_TANH ✓ ✓ ✓ Other operations ANEURALNETWORKS_AXIS_ALIGNED_BBOX_TRANSFORM ✓ ANEURALNETWORKS_BIDIRECTIONAL_SEQUENCE_LSTM ✓ ✓ ANEURALNETWORKS_BIDIRECTIONAL_SEQUENCE_RNN ✓ ✓ ANEURALNETWORKS_BOX_WITH_NMS_LIMIT ✓ ✓ ANEURALNETWORKS_DETECTION_POSTPROCESSING ✓ ANEURALNETWORKS_FULLY_CONNECTED ✓ ✓ ✓ ANEURALNETWORKS_GENERATE_PROPOSALS ✓ ✓ ANEURALNETWORKS_HEATMAP_MAX_KEYPOINT ✓ ✓ ANEURALNETWORKS_LSH_PROJECTION ✓ ✓ ANEURALNETWORKS_LSTM ✓ ✓ ANEURALNETWORKS_RANDOM_MULTINOMIAL ✓ ANEURALNETWORKS_QUANTIZED_16BIT_LSTM ✓ ANEURALNETWORKS_RNN ✓ ✓ ANEURALNETWORKS_ROI_ALIGN ✓ ✓ ANEURALNETWORKS_ROI_POOLING ✓ ✓ ANEURALNETWORKS_SELECT ✓ ✓ ANEURALNETWORKS_SVDF ✓ ✓ ANEURALNETWORKS_UNIDIRECTIONAL_SEQUENCE_LSTM ✓ ✓ ANEURALNETWORKS_UNIDIRECTIONAL_SEQUENCE_RNN ✓ ✓