From 406463269f55a5baefb941b51e10f423f6d3250a Mon Sep 17 00:00:00 2001 From: Finn Williams Date: Thu, 11 Feb 2021 16:16:42 +0000 Subject: IVGCVSW-5686 Add GpuAcc MLGO tuning file configuration argument Signed-off-by: Finn Williams Change-Id: I3f320499c379162f9d1b00cc8816bd144cd7eee4 --- tests/ExecuteNetwork/ExecuteNetwork.cpp | 1 + tests/ExecuteNetwork/ExecuteNetworkParams.hpp | 1 + tests/ExecuteNetwork/ExecuteNetworkProgramOptions.cpp | 9 +++++++-- tests/InferenceModel.hpp | 7 ++++++- 4 files changed, 15 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/ExecuteNetwork/ExecuteNetwork.cpp b/tests/ExecuteNetwork/ExecuteNetwork.cpp index c19f519c73..e3ca22e0ff 100644 --- a/tests/ExecuteNetwork/ExecuteNetwork.cpp +++ b/tests/ExecuteNetwork/ExecuteNetwork.cpp @@ -309,6 +309,7 @@ int MainImpl(const ExecuteNetworkParams& params, inferenceModelParams.m_SaveCachedNetwork = params.m_SaveCachedNetwork; inferenceModelParams.m_CachedNetworkFilePath = params.m_CachedNetworkFilePath; inferenceModelParams.m_NumberOfThreads = params.m_NumberOfThreads; + inferenceModelParams.m_MLGOTuningFilePath = params.m_MLGOTuningFilePath; for(const std::string& inputName: params.m_InputNames) { diff --git a/tests/ExecuteNetwork/ExecuteNetworkParams.hpp b/tests/ExecuteNetwork/ExecuteNetworkParams.hpp index 830270adbc..a30ce57147 100644 --- a/tests/ExecuteNetwork/ExecuteNetworkParams.hpp +++ b/tests/ExecuteNetwork/ExecuteNetworkParams.hpp @@ -46,6 +46,7 @@ struct ExecuteNetworkParams double m_ThresholdTime; int m_TuningLevel; std::string m_TuningPath; + std::string m_MLGOTuningFilePath; // Ensures that the parameters for ExecuteNetwork fit together void ValidateParams(); diff --git a/tests/ExecuteNetwork/ExecuteNetworkProgramOptions.cpp b/tests/ExecuteNetwork/ExecuteNetworkProgramOptions.cpp index 73da1f1d1d..0eaf8da890 100644 --- a/tests/ExecuteNetwork/ExecuteNetworkProgramOptions.cpp +++ b/tests/ExecuteNetwork/ExecuteNetworkProgramOptions.cpp @@ -310,7 +310,11 @@ ProgramOptions::ProgramOptions() : m_CxxOptions{"ExecuteNetwork", ("tuning-path", "Path to tuning file. Enables use of CL tuning", - cxxopts::value(m_ExNetParams.m_TuningPath)); + cxxopts::value(m_ExNetParams.m_TuningPath)) + + ("MLGOTuningFilePath", + "Path to tuning file. Enables use of CL MLGO tuning", + cxxopts::value(m_ExNetParams.m_MLGOTuningFilePath)); m_CxxOptions.add_options("d) Profiling") ("a,enable-external-profiling", @@ -427,7 +431,8 @@ void ProgramOptions::ParseOptions(int ac, const char* av[]) { {"TuningLevel", m_ExNetParams.m_TuningLevel}, {"TuningFile", m_ExNetParams.m_TuningPath.c_str()}, - {"KernelProfilingEnabled", m_ExNetParams.m_EnableProfiling} + {"KernelProfilingEnabled", m_ExNetParams.m_EnableProfiling}, + {"MLGOTuningFilePath", m_ExNetParams.m_MLGOTuningFilePath} } } ); diff --git a/tests/InferenceModel.hpp b/tests/InferenceModel.hpp index d20bb2271f..79962623cb 100644 --- a/tests/InferenceModel.hpp +++ b/tests/InferenceModel.hpp @@ -100,6 +100,8 @@ struct Params bool m_SaveCachedNetwork; std::string m_CachedNetworkFilePath; unsigned int m_NumberOfThreads; + std::string m_MLGOTuningFilePath; + Params() : m_ComputeDevices{} @@ -115,6 +117,7 @@ struct Params , m_SaveCachedNetwork(false) , m_CachedNetworkFilePath("") , m_NumberOfThreads(0) + , m_MLGOTuningFilePath("") {} }; @@ -434,8 +437,10 @@ public: { { "FastMathEnabled", params.m_EnableFastMath }, { "SaveCachedNetwork", params.m_SaveCachedNetwork }, - { "CachedNetworkFilePath", params.m_CachedNetworkFilePath } + { "CachedNetworkFilePath", params.m_CachedNetworkFilePath }, + { "MLGOTuningFilePath", params.m_MLGOTuningFilePath } }); + armnn::BackendOptions cpuAcc("CpuAcc", { { "FastMathEnabled", params.m_EnableFastMath }, -- cgit v1.2.1