, m_ImportEnabled(false)
{}
+ OptimizerOptions(bool reduceFp32ToFp16, bool debug, bool reduceFp32ToBf16, bool importEnabled)
+ : m_ReduceFp32ToFp16(reduceFp32ToFp16)
+ , m_Debug(debug)
+ , m_ReduceFp32ToBf16(reduceFp32ToBf16)
+ , m_shapeInferenceMethod(armnn::ShapeInferenceMethod::ValidateOnly)
+ , m_ImportEnabled(importEnabled)
+ {
+ if (m_ReduceFp32ToFp16 && m_ReduceFp32ToBf16)
+ {
+ throw InvalidArgumentException("BFloat16 and Float16 optimization cannot be enabled at the same time.");
+ }
+ }
+
OptimizerOptions(bool reduceFp32ToFp16, bool debug, bool reduceFp32ToBf16 = false,
ShapeInferenceMethod shapeInferenceMethod = armnn::ShapeInferenceMethod::ValidateOnly,
bool importEnabled = false)
that can not be reduced will be left in Fp32.
m_ReduceFp32ToFp16 (bool): Reduces Fp32 network to Fp16 for faster processing. Layers
that can not be reduced will be left in Fp32.
+ m_ImportEnabled (bool): Enable memory import.
") OptimizerOptions;
struct OptimizerOptions
OptimizerOptions(bool reduceFp32ToFp16,
bool debug,
- bool reduceFp32ToBf16 = false);
+ bool reduceFp32ToBf16 = false,
+ bool importEnabled = false);
bool m_ReduceFp32ToBf16;
bool m_ReduceFp32ToFp16;
bool m_Debug;
+ bool m_ImportEnabled;
};
%feature("docstring",
assert opt.m_ReduceFp32ToFp16 == False
assert opt.m_Debug == False
assert opt.m_ReduceFp32ToBf16 == False
+ assert opt.m_ImportEnabled == False
def test_optimizer_options_set_values1():
opt = ann.OptimizerOptions(True, True)
assert opt.m_ReduceFp32ToFp16 == True
assert opt.m_Debug == True
assert opt.m_ReduceFp32ToBf16 == False
+ assert opt.m_ImportEnabled == False
def test_optimizer_options_set_values2():
opt = ann.OptimizerOptions(False, False, True)
assert opt.m_ReduceFp32ToFp16 == False
assert opt.m_Debug == False
assert opt.m_ReduceFp32ToBf16 == True
+ assert opt.m_ImportEnabled == False
+
+def test_optimizer_options_set_values3():
+ opt = ann.OptimizerOptions(False, False, True, True)
+ assert opt.m_ReduceFp32ToFp16 == False
+ assert opt.m_Debug == False
+ assert opt.m_ReduceFp32ToBf16 == True
+ assert opt.m_ImportEnabled == True
@pytest.fixture(scope="function")
def get_runtime(shared_data_folder, network_file):