diff options
author | Jan Eilers <jan.eilers@arm.com> | 2021-09-24 15:45:46 +0100 |
---|---|---|
committer | Jan Eilers <jan.eilers@arm.com> | 2021-10-02 16:27:39 +0100 |
commit | 1b2654fb799c3d25ffcef4d31b5d026d359e2f8f (patch) | |
tree | 0397fdf24f286715e26a0e63bddaa0502f64caf7 /src/armnn/test/OptimizerTests.cpp | |
parent | b63a31170aee1d28267d83a4bc67b57708fb6b05 (diff) | |
download | armnn-1b2654fb799c3d25ffcef4d31b5d026d359e2f8f.tar.gz |
IVGCVSW-5985 Remove deprecated code
* Removes deprecated AddLayer, IsLayerSupported functions
* Marks the whole LayerVisitor class as deprecated not just the
constructor. This required to wrap all Accept functions in a
no deprecate macro because the LayerVisitor is used as a parameter in
there
* Removes usage of deprecated LayerVisitor and replaces it
with ExecuteStrategy. This required a few structural changes
in the unit tests
* Adds a default implementation for IStrategy called StrategyBase
* Changes pyarmnn to use non deprecated constructor for
INetworkProperties and adds related unit test
* Marks usage of deprecated code in pyarmnn as deprecated. This
required to extend INetworkProperties to allow backwards compatibility
* Removes deprecated functions from CpuAcc, GpuAcc and Ref backends
Note: This patch breaks compatibility with backends that are not
updated in this patch
!android-nn-driver:6325
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Id13b6f37a74d26eadeda2da1dc92915e725ed5a5
Diffstat (limited to 'src/armnn/test/OptimizerTests.cpp')
-rw-r--r-- | src/armnn/test/OptimizerTests.cpp | 67 |
1 files changed, 35 insertions, 32 deletions
diff --git a/src/armnn/test/OptimizerTests.cpp b/src/armnn/test/OptimizerTests.cpp index 66da3ad1ff..8416a8dd0d 100644 --- a/src/armnn/test/OptimizerTests.cpp +++ b/src/armnn/test/OptimizerTests.cpp @@ -13,13 +13,12 @@ #include <armnn/BackendHelper.hpp> #include <armnn/BackendRegistry.hpp> #include <armnn/INetwork.hpp> -#include <armnn/LayerVisitorBase.hpp> +#include <armnn/StrategyBase.hpp> #include <armnn/utility/Assert.hpp> #include <armnn/utility/PolymorphicDowncast.hpp> -#include <armnnUtils/FloatingPointConverter.hpp> +#include <armnn/backends/IBackendInternal.hpp> -#include <backendsCommon/IBackendInternal.hpp> #include <backendsCommon/LayerSupportBase.hpp> #include <backendsCommon/TensorHandle.hpp> @@ -201,10 +200,6 @@ public: return nullptr; } - IBackendInternal::Optimizations GetOptimizations() const override - { - return {}; - } IBackendInternal::ILayerSupportSharedPtr GetLayerSupport() const override { return std::make_shared<MockLayerSupport>(); @@ -265,10 +260,6 @@ public: return nullptr; } - IBackendInternal::Optimizations GetOptimizations() const override - { - return {}; - } IBackendInternal::ILayerSupportSharedPtr GetLayerSupport() const override { return std::make_shared<MockLayerSupport>(); @@ -707,30 +698,42 @@ TEST_CASE("BackendCapabilityTest") TEST_CASE("BackendHintTest") { - class TestBackendAssignment : public LayerVisitorBase<VisitorNoThrowPolicy> + class TestBackendAssignment : public StrategyBase<NoThrowStrategy> { public: - void VisitInputLayer(const IConnectableLayer* layer, LayerBindingId id, const char* name = nullptr) override - { - IgnoreUnused(id, name); - auto inputLayer = PolymorphicDowncast<const InputLayer*>(layer); - CHECK((inputLayer->GetBackendId() == "MockBackend")); - } - - void VisitOutputLayer(const IConnectableLayer* layer, LayerBindingId id, const char* name = nullptr) override - { - IgnoreUnused(id, name); - auto outputLayer = PolymorphicDowncast<const OutputLayer*>(layer); - CHECK((outputLayer->GetBackendId() == "MockBackend")); - } - void VisitActivationLayer(const IConnectableLayer* layer, - const ActivationDescriptor& activationDescriptor, - const char* name = nullptr) override + void ExecuteStrategy(const armnn::IConnectableLayer* layer, + const armnn::BaseDescriptor& descriptor, + const std::vector<armnn::ConstTensor>& constants, + const char* name, + const armnn::LayerBindingId id = 0) override { - IgnoreUnused(activationDescriptor, name); - auto activation = PolymorphicDowncast<const ActivationLayer*>(layer); - CHECK((activation->GetBackendId() == "CustomBackend")); + armnn::IgnoreUnused(descriptor, constants, id, name); + switch (layer->GetType()) + { + case armnn::LayerType::Input: + { + auto inputLayer = PolymorphicDowncast<const InputLayer*>(layer); + CHECK((inputLayer->GetBackendId() == "MockBackend")); + break; + } + case armnn::LayerType::Output: + { + auto outputLayer = PolymorphicDowncast<const OutputLayer*>(layer); + CHECK((outputLayer->GetBackendId() == "MockBackend")); + break; + } + case armnn::LayerType::Activation: + { + auto activation = PolymorphicDowncast<const ActivationLayer*>(layer); + CHECK((activation->GetBackendId() == "CustomBackend")); + break; + } + default: + { + m_DefaultStrategy.Apply(GetLayerTypeAsCString(layer->GetType())); + } + } } }; @@ -802,7 +805,7 @@ TEST_CASE("BackendHintTest") TestBackendAssignment visitor; for (auto it = firstLayer; it != lastLayer; ++it) { - (*it)->Accept(visitor); + (*it)->ExecuteStrategy(visitor); } // Clean up the registry for the next test. backendRegistry.Deregister("MockBackend"); |