19 const std::vector<TensorInfo>& infos,
30 *(PolymorphicDowncast<const ActivationDescriptor*>(&descriptor)),
38 return IsArgMinMaxSupported(infos[0],
40 *(PolymorphicDowncast<const ArgMinMaxDescriptor*>(&descriptor)),
49 *(PolymorphicDowncast<const BatchNormalizationDescriptor*>
55 *(PolymorphicDowncast<const BatchToSpaceNdDescriptor*>(&descriptor)),
59 return IsComparisonSupported(infos[0],
62 *(PolymorphicDowncast<const ComparisonDescriptor*>(&descriptor)),
67 std::vector<const TensorInfo*> inputInfos;
68 for (uint32_t i = 0; i < (infos.size() - 1); i++)
70 inputInfos.push_back(&infos[i]);
73 infos[infos.size() - 1],
74 *(PolymorphicDowncast<const OriginsDescriptor*>(&
descriptor)),
81 return IsConvertBf16ToFp32Supported(infos[0],
89 return IsConvertFp32ToBf16Supported(infos[0],
98 if (infos.size() != 4)
101 "TensorInfos. TensorInfos should be of format: " 102 "{input, output, weights, biases}.");
105 auto desc = *(PolymorphicDowncast<const Convolution2dDescriptor*>(&
descriptor));
113 reasonIfUnsupported);
122 reasonIfUnsupported);
128 reasonIfUnsupported);
130 return IsDepthToSpaceSupported(infos[0],
132 *(PolymorphicDowncast<const DepthToSpaceDescriptor*>(&descriptor)),
133 reasonIfUnsupported);
136 if (infos.size() != 4)
139 "TensorInfos. TensorInfos should be of format: " 140 "{input, output, weights, biases}.");
143 auto desc = *(PolymorphicDowncast<const DepthwiseConvolution2dDescriptor*>(&
descriptor));
151 reasonIfUnsupported);
160 reasonIfUnsupported);
166 reasonIfUnsupported);
168 return IsDetectionPostProcessSupported(infos[0],
175 *(PolymorphicDowncast<const DetectionPostProcessDescriptor*>
177 reasonIfUnsupported);
182 reasonIfUnsupported);
184 return IsElementwiseUnarySupported(infos[0],
186 *(PolymorphicDowncast<const ElementwiseUnaryDescriptor*>
188 reasonIfUnsupported);
191 *(PolymorphicDowncast<const FakeQuantizationDescriptor*>
193 reasonIfUnsupported);
195 return IsFillSupported(infos[0],
197 *(PolymorphicDowncast<const FillDescriptor*>(&descriptor)),
198 reasonIfUnsupported);
206 *(PolymorphicDowncast<const FullyConnectedDescriptor*>(&descriptor)),
207 reasonIfUnsupported);
209 return IsGatherSupported(infos[0],
212 *(PolymorphicDowncast<const GatherDescriptor*>(&descriptor)),
213 reasonIfUnsupported);
217 return IsInstanceNormalizationSupported(infos[0],
219 *(PolymorphicDowncast<const InstanceNormalizationDescriptor*>
221 reasonIfUnsupported);
225 *(PolymorphicDowncast<const L2NormalizationDescriptor*>
227 reasonIfUnsupported);
229 return IsLogicalBinarySupported(infos[0],
232 *(PolymorphicDowncast<const LogicalBinaryDescriptor*>(&descriptor)),
233 reasonIfUnsupported);
235 return IsLogSoftmaxSupported(infos[0],
237 *(PolymorphicDowncast<const LogSoftmaxDescriptor*>(&descriptor)),
238 reasonIfUnsupported);
247 *(PolymorphicDowncast<const LstmDescriptor*>(&descriptor)),
248 lstmParamsInfo.
value(),
251 return IsQLstmSupported(infos[0],
257 *(PolymorphicDowncast<const QLstmDescriptor*>(&descriptor)),
258 lstmParamsInfo.
value(),
266 reasonIfUnsupported);
270 *(PolymorphicDowncast<const MeanDescriptor*>(&descriptor)),
271 reasonIfUnsupported);
275 reasonIfUnsupported);
277 return IsMemImportSupported(infos[0],
279 reasonIfUnsupported);
284 reasonIfUnsupported);
289 reasonIfUnsupported);
294 reasonIfUnsupported);
298 *(PolymorphicDowncast<const NormalizationDescriptor*>(&descriptor)),
299 reasonIfUnsupported);
305 *(PolymorphicDowncast<const PadDescriptor*>(&descriptor)),
306 reasonIfUnsupported);
310 *(PolymorphicDowncast<const PermuteDescriptor*>(&descriptor)),
311 reasonIfUnsupported);
315 *(PolymorphicDowncast<const Pooling2dDescriptor*>(&descriptor)),
316 reasonIfUnsupported);
319 *(PolymorphicDowncast<const PreCompiledDescriptor*>(&descriptor)),
320 reasonIfUnsupported);
325 reasonIfUnsupported);
327 return IsQuantizeSupported(infos[0],
329 reasonIfUnsupported);
336 quantizedLstmParamsInfo.
value(),
341 *(PolymorphicDowncast<const ReshapeDescriptor*>(&descriptor)),
342 reasonIfUnsupported);
344 return IsRankSupported(infos[0], infos[1], reasonIfUnsupported);
348 *(PolymorphicDowncast<const ResizeDescriptor*>(&descriptor)),
349 reasonIfUnsupported);
353 *(PolymorphicDowncast<const ReduceDescriptor*>(&descriptor)),
354 reasonIfUnsupported);
356 return IsSliceSupported(infos[0],
358 *(PolymorphicDowncast<const SliceDescriptor*>(&descriptor)),
359 reasonIfUnsupported);
363 *(PolymorphicDowncast<const SoftmaxDescriptor*>(&descriptor)),
364 reasonIfUnsupported);
368 *(PolymorphicDowncast<const SpaceToBatchNdDescriptor*>(&descriptor)),
369 reasonIfUnsupported);
373 *(PolymorphicDowncast<const SpaceToDepthDescriptor*>(&descriptor)),
374 reasonIfUnsupported);
377 std::vector<TensorInfo> outputInfos;
378 for (uint32_t i = 1; i < infos.size(); i++)
380 outputInfos.push_back(infos[i]);
383 {outputInfos.begin(), outputInfos.end()},
384 *(PolymorphicDowncast<const ViewsDescriptor*>(&
descriptor)),
389 std::vector<const TensorInfo*> inputInfos;
390 for (uint32_t i = 0; i < infos.size() - 1; i++)
392 inputInfos.push_back(&infos[i]);
395 infos[infos.size() - 1],
396 *(PolymorphicDowncast<const StackDescriptor*>(&
descriptor)),
401 auto desc = *(PolymorphicDowncast<const StandInDescriptor*>(&
descriptor));
403 if (infos.size() != (desc.m_NumInputs + desc.m_NumOutputs))
406 "the combined number of input and output slots assigned " 407 "to the StandIn descriptor");
410 std::vector<const TensorInfo*> inputInfos;
411 for (uint32_t i = 0; i < desc.m_NumInputs; i++)
413 inputInfos.push_back(&infos[i]);
415 std::vector<const TensorInfo*> outputInfos;
416 for (uint32_t i = desc.m_NumInputs; i < infos.size(); i++)
418 outputInfos.push_back(&infos[i]);
421 return IsStandInSupported(inputInfos,
424 reasonIfUnsupported);
429 *(PolymorphicDowncast<const StridedSliceDescriptor*>(&descriptor)),
430 reasonIfUnsupported);
435 reasonIfUnsupported);
441 reasonIfUnsupported);
443 return IsTransposeSupported(infos[0],
445 *(PolymorphicDowncast<const TransposeDescriptor*>(&descriptor)),
446 reasonIfUnsupported);
449 if (infos.size() != 4)
452 "TensorInfos. TensorInfos should be of format: " 453 "{input, output, weights, biases}.");
456 auto desc = *(PolymorphicDowncast<const TransposeConvolution2dDescriptor*>(&
descriptor));
464 reasonIfUnsupported);
473 reasonIfUnsupported);
479 return IsCastSupported(infos[0], infos[1], reasonIfUnsupported);
481 return IsShapeSupported(infos[0], infos[1], reasonIfUnsupported);
484 if (infos.size() != 6)
487 "should be of format: {input, outputStateIn, cellStateIn, " 488 "hiddenStateOutputVal, cellStateOutputVal, output}");
490 auto desc = *(PolymorphicDowncast<const UnidirectionalSequenceLstmDescriptor*>(&
descriptor));
491 return IsUnidirectionalSequenceLstmSupported(infos[0],
498 lstmParamsInfo.
value(),
502 return IsChannelShuffleSupported(infos[0],
504 *(PolymorphicDowncast<const ChannelShuffleDescriptor*>(&descriptor)),
505 reasonIfUnsupported);
508 if (infos.size() != 4)
511 "TensorInfos. TensorInfos should be of format: " 512 "{input, output, weights, biases}.");
515 auto desc = *(PolymorphicDowncast<const Convolution3dDescriptor*>(&
descriptor));
518 return IsConvolution3dSupported(infos[0],
523 reasonIfUnsupported);
527 return IsConvolution3dSupported(infos[0],
532 reasonIfUnsupported);
536 return IsPooling3dSupported(infos[0],
538 *(PolymorphicDowncast<const Pooling3dDescriptor*>(&descriptor)),
539 reasonIfUnsupported);
550 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
559 IgnoreUnused(input0, input1, output, reasonIfUnsupported);
563 bool ILayerSupport::IsArgMinMaxSupported(
const TensorInfo& input,
568 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
581 IgnoreUnused(input, output, mean, var, beta, gamma, descriptor, reasonIfUnsupported);
590 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
594 bool ILayerSupport::IsCastSupported(
const TensorInfo& input,
602 bool ILayerSupport::IsChannelShuffleSupported(
const TensorInfo& input,
607 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
611 bool ILayerSupport::IsComparisonSupported(
const TensorInfo& input0,
617 IgnoreUnused(input0, input1, output, descriptor, reasonIfUnsupported);
626 IgnoreUnused(inputs, output, descriptor, reasonIfUnsupported);
637 bool ILayerSupport::IsConvertBf16ToFp32Supported(
const TensorInfo& input,
645 bool ILayerSupport::IsConvertFp32ToBf16Supported(
const TensorInfo& input,
676 IgnoreUnused(input, output, descriptor, weights, biases, reasonIfUnsupported);
680 bool ILayerSupport::IsConvolution3dSupported(
const TensorInfo& input,
687 IgnoreUnused(input, output, descriptor, weights, biases, reasonIfUnsupported);
699 bool ILayerSupport::IsDepthToSpaceSupported(
const TensorInfo& input,
704 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
721 reasonIfUnsupported);
733 bool ILayerSupport::IsDetectionPostProcessSupported(
const TensorInfo& boxEncodings,
751 reasonIfUnsupported);
755 bool ILayerSupport::IsDilatedDepthwiseConvolutionSupported(
763 IgnoreUnused(input, output, descriptor, weights, biases, reasonIfUnsupported);
772 IgnoreUnused(input0, input1, output, reasonIfUnsupported);
776 bool ILayerSupport::IsElementwiseUnarySupported(
const TensorInfo& input,
781 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
793 bool ILayerSupport::IsFillSupported(
const TensorInfo& input,
798 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
817 IgnoreUnused(input, output, weights, biases, descriptor, reasonIfUnsupported);
821 bool ILayerSupport::IsGatherSupported(
const TensorInfo& input0,
827 IgnoreUnused(input0, input1, output, descriptor, reasonIfUnsupported);
838 bool ILayerSupport::IsInstanceNormalizationSupported(
844 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
853 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
857 bool ILayerSupport::IsLogicalBinarySupported(
const TensorInfo& input0,
863 IgnoreUnused(input0, input1, output, descriptor, reasonIfUnsupported);
867 bool ILayerSupport::IsLogicalUnarySupported(
const TensorInfo& input,
872 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
876 bool ILayerSupport::IsLogSoftmaxSupported(
const TensorInfo& input,
881 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
905 reasonIfUnsupported);
914 IgnoreUnused(input0, input1, output, reasonIfUnsupported);
923 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
935 bool ILayerSupport::IsMemImportSupported(
const TensorInfo& input,
948 IgnoreUnused(input0, input1, output, reasonIfUnsupported);
957 IgnoreUnused(input0, input1, output, reasonIfUnsupported);
966 IgnoreUnused(input0, input1, output, reasonIfUnsupported);
975 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
991 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1000 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1009 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1013 bool ILayerSupport::IsPooling3dSupported(
const TensorInfo& input,
1018 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1035 IgnoreUnused(input, alpha, output, reasonIfUnsupported);
1039 bool ILayerSupport::IsQuantizeSupported(
const TensorInfo& input,
1047 bool ILayerSupport::IsQLstmSupported(
const TensorInfo& input,
1059 previousCellStateIn,
1065 reasonIfUnsupported);
1078 previousCellStateIn,
1083 reasonIfUnsupported);
1087 bool ILayerSupport::IsRankSupported(
const TensorInfo& input,
1100 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1109 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1118 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1122 bool ILayerSupport::IsShapeSupported(
const TensorInfo& input,
1130 bool ILayerSupport::IsSliceSupported(
const TensorInfo& input,
1135 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1144 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1153 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1162 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1167 const std::vector<std::reference_wrapper<TensorInfo>>&
outputs,
1180 IgnoreUnused(inputs, output, descriptor, reasonIfUnsupported);
1184 bool ILayerSupport::IsStandInSupported(
const std::vector<const TensorInfo*>& inputs,
1185 const std::vector<const TensorInfo*>&
outputs,
1189 IgnoreUnused(inputs, outputs, descriptor, reasonIfUnsupported);
1198 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1207 IgnoreUnused(input0, input1, output, reasonIfUnsupported);
1217 IgnoreUnused(input0, input1, output0, output1, reasonIfUnsupported);
1229 IgnoreUnused(input, output, descriptor, weights, biases, reasonIfUnsupported);
1233 bool ILayerSupport::IsTransposeSupported(
const TensorInfo& input,
1238 IgnoreUnused(input, output, descriptor, reasonIfUnsupported);
1242 bool ILayerSupport::IsUnidirectionalSequenceLstmSupported(
1261 reasonIfUnsupported);
bool IsMemCopySupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsSoftmaxSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const SoftmaxDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsConcatSupported(const BackendId &backend, const std::vector< const TensorInfo *> inputs, const TensorInfo &output, const OriginsDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsOutputSupported(const BackendId &backend, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A ViewsDescriptor for the SplitterLayer.
const TensorInfo const TensorInfo & anchors
bool IsQuantizedLstmSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &previousCellStateIn, const TensorInfo &previousOutputIn, const TensorInfo &cellStateOut, const TensorInfo &output, const QuantizedLstmInputParamsInfo ¶msInfo, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsSwitchSupported(const BackendId &backend, const TensorInfo &input0, const TensorInfo &input1, const TensorInfo &output0, const TensorInfo &output1, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A TransposeConvolution2dDescriptor for the TransposeConvolution2dLayer.
const TensorInfo const TensorInfo const TensorInfo const TensorInfo const TensorInfo const TensorInfo const LstmDescriptor const LstmInputParamsInfo & paramsInfo
const TensorInfo & output
A ReshapeDescriptor for the ReshapeLayer.
bool IsLstmSupported(const BackendId &backend, 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 ¶msInfo, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
#define ARMNN_NO_DEPRECATE_WARN_BEGIN
A ComparisonDescriptor for the ComparisonLayer.
bool IsBatchNormalizationSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const TensorInfo &mean, const TensorInfo &var, const TensorInfo &beta, const TensorInfo &gamma, const BatchNormalizationDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
const TensorInfo const TensorInfo const TensorInfo const TensorInfo const TensorInfo & gamma
const std::vector< std::reference_wrapper< TensorInfo > > & outputs
bool IsDebugSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsPreCompiledSupported(const BackendId &backend, const TensorInfo &input, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A Convolution2dDescriptor for the Convolution2dLayer.
bool IsDequantizeSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
virtual bool IsLayerSupported(const LayerType &type, const std::vector< TensorInfo > &infos, const BaseDescriptor &descriptor, const Optional< LstmInputParamsInfo > &lstmParamsInfo=EmptyOptional(), const Optional< QuantizedLstmInputParamsInfo > &quantizedLstmParamsInfo=EmptyOptional(), Optional< std::string &> reasonIfUnsupported=EmptyOptional()) const
bool IsMaximumSupported(const BackendId &backend, const TensorInfo &input0, const TensorInfo &input1, const TensorInfo &output, char *reasonIfUnSupported=nullptr, size_t reasonIfUnSupportedMaxLength=0)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsL2NormalizationSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const L2NormalizationDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsStridedSliceSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const StridedSliceDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
const TensorInfo const ActivationDescriptor Optional< std::string & > reasonIfUnsupported
bool IsTransposeConvolution2dSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const TransposeConvolution2dDescriptor &descriptor, const TensorInfo &weights, const Optional< TensorInfo > &biases, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsDepthwiseConvolutionSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const DepthwiseConvolution2dDescriptor &descriptor, const TensorInfo &weights, const Optional< TensorInfo > &biases, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A LogicalBinaryDescriptor for the LogicalBinaryLayer.
const TensorInfo & scores
const TensorInfo const TensorInfo & output0
const TensorInfo const TensorInfo const TensorInfo const TensorInfo & detectionClasses
bool IsMergeSupported(const BackendId &backend, const TensorInfo &input0, const TensorInfo &input1, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
Copyright (c) 2021 ARM Limited and Contributors.
void IgnoreUnused(Ts &&...)
const TensorInfo const ActivationDescriptor & descriptor
A SpaceToDepthDescriptor for the SpaceToDepthLayer.
bool IsResizeSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const ResizeDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A BatchToSpaceNdDescriptor for the BatchToSpaceNdLayer.
bool IsSpaceToBatchNdSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const SpaceToBatchNdDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
const TensorInfo & outputStateIn
const TensorInfo const TensorInfo & previousCellStateIn
const TensorInfo const TensorInfo const TensorInfo & output1
const TensorInfo const TensorInfo const TensorInfo const TensorInfo const TensorInfo const TensorInfo & numDetections
A ResizeBilinearDescriptor for the ResizeBilinearLayer.
bool IsFakeQuantizationSupported(const BackendId &backend, const TensorInfo &input, const FakeQuantizationDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
Base class for all descriptors.
A StackDescriptor for the StackLayer.
bool IsSubtractionSupported(const BackendId &backend, const TensorInfo &input0, const TensorInfo &input1, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsFullyConnectedSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const TensorInfo &weights, const TensorInfo &biases, const FullyConnectedDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A PadDescriptor for the PadLayer.
const TensorInfo const TensorInfo & cellStateIn
An LstmDescriptor for the LstmLayer.
#define ARMNN_NO_DEPRECATE_WARN_END
A L2NormalizationDescriptor for the L2NormalizationLayer.
const TensorInfo const TensorInfo const TensorInfo & var
An ArgMinMaxDescriptor for ArgMinMaxLayer.
An OriginsDescriptor for the ConcatLayer.
A ReduceDescriptor for the REDUCE operators.
bool IsDivisionSupported(const BackendId &backend, const TensorInfo &input0, const TensorInfo &input1, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A FullyConnectedDescriptor for the FullyConnectedLayer.
bool IsStackSupported(const BackendId &backend, const std::vector< const TensorInfo *> inputs, const TensorInfo &output, const StackDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
const TensorInfo const TensorInfo const TensorInfo const TensorInfo & outputStateOut
A FakeQuantizationDescriptor for the FakeQuantizationLayer.
bool IsSpaceToDepthSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const SpaceToDepthDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
const TensorInfo const TensorInfo const TensorInfo const TensorInfo const TensorInfo & cellStateOut
bool IsConvertFp32ToFp16Supported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A GatherDescriptor for the GatherLayer.
const TensorInfo const TensorInfo const TensorInfo const TensorInfo & beta
A StandInDescriptor for the StandIn layer.
A QLstmDescriptor for the QLstmLayer.
bool IsMinimumSupported(const BackendId &backend, const TensorInfo &input0, const TensorInfo &input1, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
An ActivationDescriptor for the ActivationLayer.
A SliceDescriptor for the SliceLayer.
bool IsNormalizationSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const NormalizationDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A Convolution3dDescriptor for the Convolution3dLayer.
bool IsMeanSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const MeanDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
const TensorInfo & previousOutputIn
A Pooling3dDescriptor for the Pooling3dLayer.
bool IsConvolution2dSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const Convolution2dDescriptor &descriptor, const TensorInfo &weights, const Optional< TensorInfo > &biases, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A SpaceToBatchNdDescriptor for the SpaceToBatchNdLayer.
bool IsInputSupported(const BackendId &backend, const TensorInfo &input, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsPermuteSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const PermuteDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
const TensorInfo const TensorInfo const TensorInfo const TensorInfo const TensorInfo & detectionScores
EmptyOptional is used to initialize the Optional class in case we want to have default value for an O...
A ElementwiseUnaryDescriptor for the ElementwiseUnaryLayer.
const TensorInfo const Convolution2dDescriptor const TensorInfo const Optional< TensorInfo > & biases
bool IsConvertFp16ToFp32Supported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsBatchToSpaceNdSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const BatchToSpaceNdDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A MeanDescriptor for the MeanLayer.
const TensorInfo const TensorInfo const TensorInfo & detectionBoxes
bool IsFloorSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A TransposeDescriptor for the TransposeLayer.
A StridedSliceDescriptor for the StridedSliceLayer.
bool IsPreluSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &alpha, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsSplitterSupported(const BackendId &backend, const TensorInfo &input, const std::vector< std::reference_wrapper< TensorInfo >> &outputs, const ViewsDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsReduceSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const ReduceDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
const TensorInfo & input1
bool IsConstantSupported(const BackendId &backend, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsAdditionSupported(const BackendId &backend, const TensorInfo &input0, const TensorInfo &input1, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A PreCompiledDescriptor for the PreCompiledLayer.
bool IsPooling2dSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const Pooling2dDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A Pooling2dDescriptor for the Pooling2dLayer.
A NormalizationDescriptor for the NormalizationLayer.
const TensorInfo const TensorInfo const TensorInfo & scratchBuffer
An InstanceNormalizationDescriptor for InstanceNormalizationLayer.
A ChannelShuffleDescriptor for the ChannelShuffle operator.
A SoftmaxDescriptor for the SoftmaxLayer.
const TensorInfo const Convolution2dDescriptor const TensorInfo & weights
bool IsActivationSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const ActivationDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
bool IsPadSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const PadDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
A DepthwiseConvolution2dDescriptor for the DepthwiseConvolution2dLayer.
A FillDescriptor for the FillLayer.
A BatchNormalizationDescriptor for the BatchNormalizationLayer.
bool IsMultiplicationSupported(const BackendId &backend, const TensorInfo &input0, const TensorInfo &input1, const TensorInfo &output, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
const TensorInfo const TensorInfo & mean
A PermuteDescriptor for the PermuteLayer.
LayerType
When adding a new layer, adapt also the LastLayer enum value in the enum class LayerType below...
bool IsReshapeSupported(const BackendId &backend, const TensorInfo &input, const ReshapeDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.