MLCE-233 Added ability to enable fast_math through the NNAPI driver
* Added -a command line option to enable fast_math on Neon/CL when launching the NNAPI driver
* The invocation will look something like:
/vendor/bin/hw/android.hardware.neuralnetworks@1.3-service-armnn -v -c GpuAcc -n arm-armnn -a
* Enabling fast_math may cause an increase in VTS or CTS test failures due to a change in precision
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ifd8931f95efd65d3ae3aca9d9d61bd381e4e24a5
diff --git a/DriverOptions.cpp b/DriverOptions.cpp
index 1f534b6..d179d65 100644
--- a/DriverOptions.cpp
+++ b/DriverOptions.cpp
@@ -35,6 +35,7 @@
, m_ClTuningLevel(armnn::IGpuAccTunedParameters::TuningLevel::Rapid)
, m_EnableGpuProfiling(false)
, m_fp16Enabled(fp16Enabled)
+ , m_FastMathEnabled(false)
{
}
@@ -45,6 +46,7 @@
, m_ClTuningLevel(armnn::IGpuAccTunedParameters::TuningLevel::Rapid)
, m_EnableGpuProfiling(false)
, m_fp16Enabled(fp16Enabled)
+ , m_FastMathEnabled(false)
{
}
@@ -54,6 +56,7 @@
, m_ClTuningLevel(armnn::IGpuAccTunedParameters::TuningLevel::Rapid)
, m_EnableGpuProfiling(false)
, m_fp16Enabled(false)
+ , m_FastMathEnabled(false)
{
namespace po = boost::program_options;
@@ -104,6 +107,10 @@
"exhaustive approach "
"rapid: only 3 lws values should be tested for each kernel ")
+ ("fast-math,a",
+ po::bool_switch(&m_FastMathEnabled),
+ "Turns FastMath on")
+
("gpu-profiling,p",
po::bool_switch(&m_EnableGpuProfiling),
"Turns GPU profiling on")