aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/GlobalConfig.cmake1
-rw-r--r--docs/FAQ.md5
-rw-r--r--src/backends/backendsCommon/test/DynamicBackendTests.hpp14
3 files changed, 18 insertions, 2 deletions
diff --git a/cmake/GlobalConfig.cmake b/cmake/GlobalConfig.cmake
index 6aa6321e4b..650d4091f4 100644
--- a/cmake/GlobalConfig.cmake
+++ b/cmake/GlobalConfig.cmake
@@ -26,6 +26,7 @@ option(FLATC_DIR "Path to Flatbuffers compiler" OFF)
option(TF_LITE_GENERATED_PATH "Tensorflow lite generated C++ schema location" OFF)
option(FLATBUFFERS_ROOT "Location where the flatbuffers 'include' and 'lib' folders to be found" Off)
option(DYNAMIC_BACKEND_PATHS "Colon seperated list of paths where to load the dynamic backends from" "")
+option(SAMPLE_DYNAMIC_BACKEND "Include the sample dynamic backend and its tests in the build" OFF)
option(BUILD_GATORD_MOCK "Build the Gatord simulator for external profiling testing." ON)
option(BUILD_TIMELINE_DECODER "Build the Timeline Decoder for external profiling." ON)
option(SHARED_BOOST "Use dynamic linking for boost libraries" OFF)
diff --git a/docs/FAQ.md b/docs/FAQ.md
index 1df82e8a63..918f4e161a 100644
--- a/docs/FAQ.md
+++ b/docs/FAQ.md
@@ -20,3 +20,8 @@ Segmentation fault following a failed call to armnn::Optimize using CpuRef backe
In some error scenarios of calls to armnn::Optimize a null pointer may be returned. This contravenes the function documentation however, it can happen. Users are advised to check the value returned from the function as a precaution.
If you encounter this problem and are able to isolate it consider contributing a solution.
+
+Adding or removing -Dxxx options when building ArmNN does not always work.
+---------------------------------------------------------
+
+ArmNN uses CMake for build configuration. CMake uses a cumulative cache of user options. That is, setting a value once on a cmake command line will be persisted until either you explicitly change the value or delete the cache. To delete the cache in ArmNN you must delete the build directory.
diff --git a/src/backends/backendsCommon/test/DynamicBackendTests.hpp b/src/backends/backendsCommon/test/DynamicBackendTests.hpp
index 6371e53250..16c2f0db7a 100644
--- a/src/backends/backendsCommon/test/DynamicBackendTests.hpp
+++ b/src/backends/backendsCommon/test/DynamicBackendTests.hpp
@@ -1439,11 +1439,15 @@ void CreateReferenceDynamicBackendTestImpl()
void CreateSampleDynamicBackendTestImpl()
{
using namespace armnn;
-
// Using the path override in CreationOptions to load the reference dynamic backend
IRuntime::CreationOptions creationOptions;
- IRuntimePtr runtime = IRuntime::Create(creationOptions);
+ // If m_DynamicBackendsPath is an empty string then we know this test will fail.
+ if(creationOptions.m_DynamicBackendsPath.empty())
+ {
+ BOOST_FAIL("No dynamic backends paths have been set. Ensure DYNAMIC_BACKEND_PATHS is set at compile time.");
+ }
+ IRuntimePtr runtime = IRuntime::Create(creationOptions);
const BackendRegistry& backendRegistry = BackendRegistryInstance();
BOOST_TEST(backendRegistry.Size() >= 1);
@@ -1506,6 +1510,12 @@ void SampleDynamicBackendEndToEndTestImpl()
using namespace boost::filesystem;
// Create runtime in which test will run
IRuntime::CreationOptions options;
+ // If m_DynamicBackendsPath is an empty string then we know this test will fail.
+ if(options.m_DynamicBackendsPath.empty())
+ {
+ BOOST_FAIL("No dynamic backends paths have been set. Ensure DYNAMIC_BACKEND_PATHS is set at compile time.");
+ }
+
IRuntimePtr runtime(IRuntime::Create(options));
// Builds up the structure of the network.