diff options
author | Narumol Prangnawarat <narumol.prangnawarat@arm.com> | 2020-06-02 12:07:43 +0100 |
---|---|---|
committer | Narumol Prangnawarat <narumol.prangnawarat@arm.com> | 2020-06-02 12:07:43 +0100 |
commit | cad4e91027a29a62c210d422ce1c9130e46f2199 (patch) | |
tree | 5a7726242f7ee25ba6d5a549245ad52c63e4e902 /ArmnnPreparedModel_1_3.cpp | |
parent | 24a9c5847a994eb4909aecd3c551f16a69050c39 (diff) | |
download | android-nn-driver-cad4e91027a29a62c210d422ce1c9130e46f2199.tar.gz |
IVGCVSW-4780 Add QoS to AndroidNNDriver
* Add model priority to ArmnnPreparedModel_1_3
* Add RequestThread_1_3 to allow execution based on priority
* Add RETIRE_RATE to Android.mk to be able to configure the retire rate
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: Ic5f4309249b744c2a8f625c986eede381a26028b
Diffstat (limited to 'ArmnnPreparedModel_1_3.cpp')
-rw-r--r-- | ArmnnPreparedModel_1_3.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/ArmnnPreparedModel_1_3.cpp b/ArmnnPreparedModel_1_3.cpp index 1fb03f44..c7adc6c4 100644 --- a/ArmnnPreparedModel_1_3.cpp +++ b/ArmnnPreparedModel_1_3.cpp @@ -138,7 +138,7 @@ namespace armnn_driver { template<typename HalVersion> -RequestThread<ArmnnPreparedModel_1_3, HalVersion, CallbackContext_1_3> +RequestThread_1_3<ArmnnPreparedModel_1_3, HalVersion, CallbackContext_1_3> ArmnnPreparedModel_1_3<HalVersion>::m_RequestThread; template<typename HalVersion> @@ -164,13 +164,15 @@ ArmnnPreparedModel_1_3<HalVersion>::ArmnnPreparedModel_1_3(armnn::NetworkId netw armnn::IRuntime* runtime, const V1_3::Model& model, const std::string& requestInputsAndOutputsDumpDir, - const bool gpuProfilingEnabled) + const bool gpuProfilingEnabled, + V1_3::Priority priority) : m_NetworkId(networkId) , m_Runtime(runtime) , m_Model(model) , m_RequestCount(0) , m_RequestInputsAndOutputsDumpDir(requestInputsAndOutputsDumpDir) , m_GpuProfilingEnabled(gpuProfilingEnabled) + , m_ModelPriority(priority) { // Enable profiling if required. m_Runtime->GetProfiler(m_NetworkId)->EnableProfiling(m_GpuProfilingEnabled); @@ -830,6 +832,12 @@ Return <V1_3::ErrorStatus> ArmnnPreparedModel_1_3<HalVersion>::Execute(const V1_ return V1_3::ErrorStatus::NONE; } +template<typename HalVersion> +V1_3::Priority ArmnnPreparedModel_1_3<HalVersion>::GetModelPriority() +{ + return m_ModelPriority; +} + #ifdef ARMNN_ANDROID_NN_V1_3 template class ArmnnPreparedModel_1_3<hal_1_3::HalPolicy>; template Return <V1_3::ErrorStatus> ArmnnPreparedModel_1_3<hal_1_3::HalPolicy>::ExecuteGraph<CallbackContext_1_3>( |