diff options
author | Ryan OShea <ryan.oshea3@arm.com> | 2022-11-07 16:20:48 +0000 |
---|---|---|
committer | ryan.oshea3 <ryan.oshea3@arm.com> | 2022-11-16 15:22:50 +0000 |
commit | 31441595009182c985dacbedc70c41ee6664d070 (patch) | |
tree | 248a85295aeff4022c9b395fc97748b0a0aa6b35 /src/backends/reference/test/RefLayerSupportTests.cpp | |
parent | bd18eab07a8f30492de1e462b1815189014cb8d5 (diff) | |
download | armnn-31441595009182c985dacbedc70c41ee6664d070.tar.gz |
IVGCVSW-7214 Disable BF16-Turbo-Mode and remove conversion layers
- Remove Bf16ToFp32 Conversion Layer
- Remove Fp32ToBf16 Conversion Layer
- Remove B16 Conversion tests
* Throw exception if m_ReduceFp32ToBf16 optimzer option is set to true
* Provide comments to enable fast math in order to use bf16
* Update docs to inform users to enable fast math for bf16
Execute Network Changes
* Require bf16_turbo_mode to also have fast_math_enabled set to true
- Remove setting m_ReduceFp32ToBf16 optimizer option
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: Ibaa6da9d29c96a1ce32ff5196b0847fde9f04a1c
Diffstat (limited to 'src/backends/reference/test/RefLayerSupportTests.cpp')
-rw-r--r-- | src/backends/reference/test/RefLayerSupportTests.cpp | 74 |
1 files changed, 3 insertions, 71 deletions
diff --git a/src/backends/reference/test/RefLayerSupportTests.cpp b/src/backends/reference/test/RefLayerSupportTests.cpp index 9a27c7c0b3..e671496ce2 100644 --- a/src/backends/reference/test/RefLayerSupportTests.cpp +++ b/src/backends/reference/test/RefLayerSupportTests.cpp @@ -49,12 +49,6 @@ TEST_CASE("IsLayerSupportedReferenceAddition") CHECK(supportChecker.IsAdditionSupported(in0, in1, out, reasonNotSupported)); } -TEST_CASE("IsLayerSupportedBFloat16Reference") -{ - armnn::RefWorkloadFactory factory; - IsLayerSupportedTests<armnn::RefWorkloadFactory, armnn::DataType::BFloat16>(&factory); -} - TEST_CASE("IsLayerSupportedFloat16Reference") { armnn::RefWorkloadFactory factory; @@ -117,70 +111,6 @@ TEST_CASE("IsConvertFp16ToFp32SupportedFp16OutputReference") CHECK_EQ(reasonIfUnsupported, "Layer is not supported with float16 data type output"); } -TEST_CASE("IsConvertBf16ToFp32SupportedReference") -{ - std::string reasonIfUnsupported; - - bool result = IsConvertLayerSupportedTests<armnn::RefWorkloadFactory, armnn::ConvertBf16ToFp32Layer, - armnn::DataType::BFloat16, armnn::DataType::Float32>(reasonIfUnsupported); - - CHECK(result); -} - -TEST_CASE("IsConvertBf16ToFp32SupportedFp32InputReference") -{ - std::string reasonIfUnsupported; - - bool result = IsConvertLayerSupportedTests<armnn::RefWorkloadFactory, armnn::ConvertBf16ToFp32Layer, - armnn::DataType::Float32, armnn::DataType::Float32>(reasonIfUnsupported); - - CHECK(!result); - CHECK_EQ(reasonIfUnsupported, "Reference for ConvertBf16ToFp32 layer: input type not supported\n"); -} - -TEST_CASE("IsConvertBf16ToFp32SupportedBf16OutputReference") -{ - std::string reasonIfUnsupported; - - bool result = IsConvertLayerSupportedTests<armnn::RefWorkloadFactory, armnn::ConvertBf16ToFp32Layer, - armnn::DataType::BFloat16, armnn::DataType::BFloat16>(reasonIfUnsupported); - - CHECK(!result); - CHECK_EQ(reasonIfUnsupported, "Reference for ConvertBf16ToFp32 layer: output type not supported\n"); -} - -TEST_CASE("IsConvertFp32ToBf16SupportedReference") -{ - std::string reasonIfUnsupported; - - bool result = IsConvertLayerSupportedTests<armnn::RefWorkloadFactory, armnn::ConvertFp32ToBf16Layer, - armnn::DataType::Float32, armnn::DataType::BFloat16>(reasonIfUnsupported); - - CHECK(result); -} - -TEST_CASE("IsConvertFp32ToBf16SupportedBf16InputReference") -{ - std::string reasonIfUnsupported; - - bool result = IsConvertLayerSupportedTests<armnn::RefWorkloadFactory, armnn::ConvertFp32ToBf16Layer, - armnn::DataType::BFloat16, armnn::DataType::BFloat16>(reasonIfUnsupported); - - CHECK(!result); - CHECK_EQ(reasonIfUnsupported, "Reference for ConvertFp32ToBf16 layer: input type not supported\n"); -} - -TEST_CASE("IsConvertFp32ToBf16SupportedFp32OutputReference") -{ - std::string reasonIfUnsupported; - - bool result = IsConvertLayerSupportedTests<armnn::RefWorkloadFactory, armnn::ConvertFp32ToBf16Layer, - armnn::DataType::Float32, armnn::DataType::Float32>(reasonIfUnsupported); - - CHECK(!result); - CHECK_EQ(reasonIfUnsupported, "Reference for ConvertFp32ToBf16 layer: output type not supported\n"); -} - TEST_CASE("IsConvertFp32ToFp16SupportedReference") { std::string reasonIfUnsupported; @@ -271,7 +201,9 @@ TEST_CASE("IsConstantSupportedRef") result = IsConstantLayerSupportedTests<armnn::RefWorkloadFactory, armnn::DataType::BFloat16>(reasonIfUnsupported); - CHECK(result); + CHECK(!result); + CHECK(reasonIfUnsupported.find("Reference constant: output is not a supported type.") != std::string::npos); + } } |