diff options
Diffstat (limited to 'src/backends/backendsCommon/LayerSupportBase.cpp')
-rw-r--r-- | src/backends/backendsCommon/LayerSupportBase.cpp | 524 |
1 files changed, 0 insertions, 524 deletions
diff --git a/src/backends/backendsCommon/LayerSupportBase.cpp b/src/backends/backendsCommon/LayerSupportBase.cpp index 26137f51b0..69b980d56f 100644 --- a/src/backends/backendsCommon/LayerSupportBase.cpp +++ b/src/backends/backendsCommon/LayerSupportBase.cpp @@ -82,154 +82,6 @@ bool LayerSupportBase::IsLayerSupported(const LayerType& type, } } -bool LayerSupportBase::IsActivationSupported(const TensorInfo&, // input - const TensorInfo&, //output - const ActivationDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsAdditionSupported(const TensorInfo&, // input0 - const TensorInfo&, // input1 - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsArgMinMaxSupported(const armnn::TensorInfo&, // input - const armnn::TensorInfo&, // output - const armnn::ArgMinMaxDescriptor&, // descriptor - armnn::Optional<std::string &> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsBatchNormalizationSupported(const TensorInfo&, //input - const TensorInfo&, // output - const TensorInfo&, //mean - const TensorInfo&, //var - const TensorInfo&, //beta - const TensorInfo&, //gamma - const BatchNormalizationDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsBatchToSpaceNdSupported(const TensorInfo&, // input - const TensorInfo&, // output - const BatchToSpaceNdDescriptor&, //descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsCastSupported(const TensorInfo&, //input - const TensorInfo&, //output - Optional<std::string &> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsChannelShuffleSupported(const TensorInfo&, //input - const TensorInfo&, //output - const ChannelShuffleDescriptor&, //descriptor - Optional<std::string &> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsComparisonSupported(const TensorInfo&, // input0 - const TensorInfo&, // input1 - const TensorInfo&, // output - const ComparisonDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsConcatSupported(const std::vector<const TensorInfo*>, // inputs - const TensorInfo&, // output - const OriginsDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsConstantSupported(const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsConvertFp16ToFp32Supported(const TensorInfo&, // input - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsConvertFp32ToFp16Supported(const TensorInfo&, // input - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsConvolution2dSupported(const TensorInfo&, // input - const TensorInfo&, // output - const Convolution2dDescriptor&, // descriptor - const TensorInfo&, // weights - const Optional<TensorInfo>&, // biases - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsConvolution3dSupported(const TensorInfo&, // input - const TensorInfo&, // output - const Convolution3dDescriptor&, // descriptor - const TensorInfo&, // weights - const Optional<TensorInfo>&, // biases - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsDebugSupported(const TensorInfo&, // input - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsDepthToSpaceSupported(const TensorInfo&, // input - const TensorInfo&, // output - const DepthToSpaceDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsDepthwiseConvolutionSupported(const TensorInfo&, //input - const TensorInfo&, //output - const DepthwiseConvolution2dDescriptor&, // descriptor - const TensorInfo&, // weights - const Optional<TensorInfo>&, // biases - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsDequantizeSupported(const TensorInfo&, // input - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - bool LayerSupportBase::IsDetectionPostProcessSupported(const TensorInfo&, // boxEncodings const TensorInfo&, // scores const TensorInfo&, // anchors @@ -243,150 +95,6 @@ bool LayerSupportBase::IsDetectionPostProcessSupported(const TensorInfo&, // box return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); } -bool LayerSupportBase::IsDilatedDepthwiseConvolutionSupported(const TensorInfo&, // input - const TensorInfo&, // output - const DepthwiseConvolution2dDescriptor&, // descriptor - const TensorInfo&,// weights - const Optional<TensorInfo>&, // biases - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsDivisionSupported(const TensorInfo&, // input0 - const TensorInfo&, // input1 - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsElementwiseUnarySupported(const TensorInfo&, // input - const TensorInfo&, // output - const ElementwiseUnaryDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsFakeQuantizationSupported(const TensorInfo&, // input - const FakeQuantizationDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsFillSupported(const TensorInfo&, // input - const TensorInfo&, // output - const FillDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsFloorSupported(const TensorInfo&, // input - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsFullyConnectedSupported(const TensorInfo&, // input - const TensorInfo&, // output - const TensorInfo&, // weights - const TensorInfo&, // biases - const FullyConnectedDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsGatherSupported(const armnn::TensorInfo&, // input0 - const armnn::TensorInfo&, // input1 - const armnn::TensorInfo&, // output - const GatherDescriptor&, // descriptor - armnn::Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsInputSupported(const TensorInfo&, // input - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsInstanceNormalizationSupported(const TensorInfo&, // input - const TensorInfo&, // output - const InstanceNormalizationDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsL2NormalizationSupported(const TensorInfo&, // input - const TensorInfo&, // output - const L2NormalizationDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsLogicalBinarySupported(const TensorInfo&, // input0 - const TensorInfo&, // input1 - const TensorInfo&, // output - const LogicalBinaryDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsLogicalUnarySupported(const TensorInfo&, // input - const TensorInfo&, // output - const ElementwiseUnaryDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsLogSoftmaxSupported(const TensorInfo&, // input - const TensorInfo&, // output - const LogSoftmaxDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsLstmSupported(const TensorInfo&, // input - const TensorInfo&, // outputStateIn - const TensorInfo&, // cellStateIn - const TensorInfo&, // scratchBuffer - const TensorInfo&, // outputStateOut - const TensorInfo&, // cellStateOut - const TensorInfo&, // output - const LstmDescriptor&, // descriptor - const LstmInputParamsInfo&, // paramsInfo - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsMaximumSupported(const TensorInfo&, // input0 - const TensorInfo&, // input1 - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsMeanSupported(const TensorInfo&, // input - const TensorInfo&, // output - const MeanDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - bool LayerSupportBase::IsMemCopySupported(const armnn::TensorInfo&, // input const armnn::TensorInfo&, // output armnn::Optional<std::string &> ) const // reasonIfUnsupported @@ -409,103 +117,6 @@ bool LayerSupportBase::IsMergeSupported(const TensorInfo&, // input0 return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); } -bool LayerSupportBase::IsMinimumSupported(const TensorInfo&, // input0 - const TensorInfo&, // input1 - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsMultiplicationSupported(const TensorInfo&, // input0 - const TensorInfo&, // input1 - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsNormalizationSupported(const TensorInfo&, // input - const TensorInfo&, // output - const NormalizationDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsOutputSupported(const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsPadSupported(const TensorInfo&, // input - const TensorInfo&, // output - const PadDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsPermuteSupported(const TensorInfo&, // input - const TensorInfo&, // output - const PermuteDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsPooling2dSupported(const TensorInfo&, // input - const TensorInfo&, // output - const Pooling2dDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsPooling3dSupported(const TensorInfo&, // input - const TensorInfo&, // output - const Pooling3dDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsPreCompiledSupported(const TensorInfo&, // input - const PreCompiledDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsPreluSupported(const TensorInfo&, // input - const TensorInfo&, // alpha - const TensorInfo&, // output - Optional<std::string &> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsQuantizeSupported(const armnn::TensorInfo&, // input - const armnn::TensorInfo&, // output - armnn::Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsQLstmSupported(const TensorInfo&, // input - const TensorInfo&, // previousOutputIn - const TensorInfo&, // previousCellStateIn - const TensorInfo&, // outputStateOut - const TensorInfo&, // cellStateOut - const TensorInfo&, // output - const QLstmDescriptor&, // descriptor - const LstmInputParamsInfo&, // paramsInfo - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - bool LayerSupportBase::IsQuantizedLstmSupported(const TensorInfo&, // input const TensorInfo&, // previousCellStateIn const TensorInfo&, // previousOutputIn @@ -517,37 +128,6 @@ bool LayerSupportBase::IsQuantizedLstmSupported(const TensorInfo&, // input return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); } -bool LayerSupportBase::IsRankSupported(const TensorInfo&, // input - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsReduceSupported(const TensorInfo& /*input*/, - const TensorInfo& /*output*/, - const ReduceDescriptor& /*descriptor*/, - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsReshapeSupported(const TensorInfo&, // input - const TensorInfo&, // output - const ReshapeDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsResizeSupported(const TensorInfo&, // input - const TensorInfo&, // output - const ResizeDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - bool LayerSupportBase::IsShapeSupported(const TensorInfo&, // input const TensorInfo&, // output Optional<std::string&> reasonIfUnsupported) const @@ -555,54 +135,6 @@ bool LayerSupportBase::IsShapeSupported(const TensorInfo&, // input return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); } -bool LayerSupportBase::IsSliceSupported(const TensorInfo&, // input - const TensorInfo&, // output - const SliceDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsSoftmaxSupported(const TensorInfo&, // input - const TensorInfo&, // output - const SoftmaxDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} -/**/ -bool LayerSupportBase::IsSpaceToBatchNdSupported(const TensorInfo&, // input - const TensorInfo&, // output - const SpaceToBatchNdDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsSpaceToDepthSupported(const TensorInfo&, // input - const TensorInfo&, // output - const SpaceToDepthDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsSplitterSupported(const TensorInfo&, // input - const std::vector<std::reference_wrapper<TensorInfo>>&, // outputs - const ViewsDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsStackSupported(const std::vector<const TensorInfo*>&, // inputs - const TensorInfo&, // output - const StackDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - bool LayerSupportBase::IsStandInSupported(const std::vector<const TensorInfo*>&, // inputs const std::vector<const TensorInfo*>&, // outputs const StandInDescriptor&, // descriptor @@ -619,60 +151,4 @@ bool LayerSupportBase::IsStandInSupported(const std::vector<const TensorInfo*>&, return false; } -bool LayerSupportBase::IsStridedSliceSupported(const TensorInfo&, // input - const TensorInfo&, // output - const StridedSliceDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsSubtractionSupported(const TensorInfo&, // input0 - const TensorInfo&, // input1 - const TensorInfo&, // output - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsSwitchSupported(const TensorInfo&, // input0 - const TensorInfo&, // input1 - const TensorInfo&, // output0 - const TensorInfo&, // output1 - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsTransposeConvolution2dSupported(const TensorInfo&, // input - const TensorInfo&, // output - const TransposeConvolution2dDescriptor&, // descriptor - const TensorInfo&, // weights - const Optional<TensorInfo>&, // biases - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsTransposeSupported(const TensorInfo&, // input - const TensorInfo&, // output - const TransposeDescriptor&, // descriptor - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - -bool LayerSupportBase::IsUnidirectionalSequenceLstmSupported(const TensorInfo&, // input - const TensorInfo&, // outputStateIn - const TensorInfo&, // cellStateIn - const TensorInfo&, // outputStateOut - const TensorInfo&, // cellStateOut - const TensorInfo&, // output - const LstmDescriptor&, // descriptor - const LstmInputParamsInfo&, // paramsInfo - Optional<std::string&> reasonIfUnsupported) const -{ - return DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported); -} - } // namespace armnn |