diff options
author | Matthew Sloyan <matthew.sloyan@arm.com> | 2021-02-10 16:50:53 +0000 |
---|---|---|
committer | Matthew Sloyan <matthew.sloyan@arm.com> | 2021-02-12 17:56:58 +0000 |
commit | 0a7dc6bba5d0810fe2ed6f84b0376a8b0674c0b3 (patch) | |
tree | 6931067f0e0ff25be7d6a01d379f4b1497dff424 /include/armnn | |
parent | b454c5c65efb238c130b042ace390b2bc7f0bf75 (diff) | |
download | armnn-0a7dc6bba5d0810fe2ed6f84b0376a8b0674c0b3.tar.gz |
IVGCVSW-5685 Add CpuAcc specific configuration option numberOfThreads
* Added ability to set number of threads used in CpuAcc backend
* Enabled number-of-threads option in ExecuteNetwork
* Added TfLiteDelegate ModelOptions test
* Added unsigned int type to BackendOptions.hpp
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ia576d4f45cbe5df3654bc730bb5ebd5181d82b5a
Diffstat (limited to 'include/armnn')
-rw-r--r-- | include/armnn/BackendOptions.hpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/include/armnn/BackendOptions.hpp b/include/armnn/BackendOptions.hpp index 4aee070866..b705f41505 100644 --- a/include/armnn/BackendOptions.hpp +++ b/include/armnn/BackendOptions.hpp @@ -24,6 +24,7 @@ private: struct CheckAllowed { static const bool value = std::is_same<T, int>::value || + std::is_same<T, unsigned int>::value || std::is_same<T, float>::value || std::is_same<T, bool>::value || std::is_same<T, std::string>::value || @@ -38,6 +39,7 @@ public: public: /// Constructors explicit Var(int i) : m_Vals(i), m_Type(VarTypes::Integer) {}; + explicit Var(unsigned int u) : m_Vals(u), m_Type(VarTypes::UnsignedInteger) {}; explicit Var(float f) : m_Vals(f), m_Type(VarTypes::Float) {}; explicit Var(bool b) : m_Vals(b), m_Type(VarTypes::Boolean) {}; explicit Var(const char* s) : m_Vals(s), m_Type(VarTypes::String) {}; @@ -107,12 +109,14 @@ public: /// Type getters bool IsBool() const { return m_Type == VarTypes::Boolean; } bool IsInt() const { return m_Type == VarTypes::Integer; } + bool IsUnsignedInt() const { return m_Type == VarTypes::UnsignedInteger; } bool IsFloat() const { return m_Type == VarTypes::Float; } bool IsString() const { return m_Type == VarTypes::String; } /// Value getters bool AsBool() const { assert(IsBool()); return m_Vals.b; } int AsInt() const { assert(IsInt()); return m_Vals.i; } + unsigned int AsUnsignedInt() const { assert(IsUnsignedInt()); return m_Vals.u; } float AsFloat() const { assert(IsFloat()); return m_Vals.f; } std::string AsString() const { assert(IsString()); return m_Vals.s; } @@ -136,6 +140,10 @@ public: { func(m_Vals.i, other.m_Vals.i); } + else if (other.IsUnsignedInt()) + { + func(m_Vals.u, other.m_Vals.u); + } else if (other.IsFloat()) { func(m_Vals.f, other.m_Vals.f); @@ -163,12 +171,14 @@ public: Integer, Float, String, + UnsignedInteger }; /// Union of potential type values. union Vals { int i; + unsigned int u; float f; bool b; std::string s; @@ -177,6 +187,7 @@ public: ~Vals(){} explicit Vals(int i) : i(i) {}; + explicit Vals(unsigned int u) : u(u) {}; explicit Vals(float f) : f(f) {}; explicit Vals(bool b) : b(b) {}; explicit Vals(const char* s) : s(std::string(s)) {} @@ -196,6 +207,9 @@ public: BackendOption(std::string name, int value) : m_Name(name), m_Value(value) {} + BackendOption(std::string name, unsigned int value) + : m_Name(name), m_Value(value) + {} BackendOption(std::string name, float value) : m_Name(name), m_Value(value) {} |