aboutsummaryrefslogtreecommitdiff
path: root/tests/ExecuteNetwork/ExecuteNetworkParams.cpp
diff options
context:
space:
mode:
authorFrancis Murtagh <francis.murtagh@arm.com>2020-10-27 15:20:40 +0000
committerFrancis Murtagh <francis.murtagh@arm.com>2020-10-27 15:21:15 +0000
commitbf18a266bf5d0fe74db7cca0f54fb1ae25869da8 (patch)
tree643adcca049114a83e67e4fbf7029bfe8ec9028e /tests/ExecuteNetwork/ExecuteNetworkParams.cpp
parent62483bee640e7d8accf6ac77b24c6e9828841851 (diff)
downloadarmnn-bf18a266bf5d0fe74db7cca0f54fb1ae25869da8.tar.gz
Bugfix: Allow use of dynamic backendId in execute network
* Stops execute network rejecting backendId based on BackendRegistry * Dynamically loaded backends arent visible yet as runtime isn't initialized Change-Id: I87adfd137b2225ab07f8c3e996db9565caf276eb Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Diffstat (limited to 'tests/ExecuteNetwork/ExecuteNetworkParams.cpp')
-rw-r--r--tests/ExecuteNetwork/ExecuteNetworkParams.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/tests/ExecuteNetwork/ExecuteNetworkParams.cpp b/tests/ExecuteNetwork/ExecuteNetworkParams.cpp
index c298bd614a..ccf80648fe 100644
--- a/tests/ExecuteNetwork/ExecuteNetworkParams.cpp
+++ b/tests/ExecuteNetwork/ExecuteNetworkParams.cpp
@@ -125,14 +125,18 @@ void CheckClTuningParameter(const int& tuningLevel,
void ExecuteNetworkParams::ValidateParams()
{
- // Check compute devices
- std::string invalidBackends;
- if (!CheckRequestedBackendsAreValid(m_ComputeDevices, armnn::Optional<std::string&>(invalidBackends)))
- {
- throw armnn::InvalidArgumentException(fmt::format("Some of the requested compute devices are invalid. "
- "\nInvalid devices: {} \nAvailable devices are: {}",
- invalidBackends,
- armnn::BackendRegistryInstance().GetBackendIdsAsString()));
+ if (m_DynamicBackendsPath=="")
+ {
+ // Check compute devices are valid unless they are dynamically loaded at runtime
+ std::string invalidBackends;
+ if (!CheckRequestedBackendsAreValid(m_ComputeDevices, armnn::Optional<std::string&>(invalidBackends)))
+ {
+ throw armnn::InvalidArgumentException(
+ fmt::format("Some of the requested compute devices are invalid. "
+ "\nInvalid devices: {} \nAvailable devices are: {}",
+ invalidBackends,
+ armnn::BackendRegistryInstance().GetBackendIdsAsString()));
+ }
}
CheckClTuningParameter(m_TuningLevel, m_TuningPath, m_ComputeDevices);