From c347b1727e6afb415241c77f997e311954021651 Mon Sep 17 00:00:00 2001 From: Francis Murtagh Date: Tue, 2 Aug 2022 19:42:29 +0100 Subject: IVGCVSW-6889 Seg fault running ExeNet with --bf16-turbo-mode on fpga * Added case for Bf16 to switch and changed Assertion to Exception so it shows up in Release build. Signed-off-by: Francis Murtagh Change-Id: I817260dc7b7667386c4aa734bea649383866a785 --- src/backends/cl/workloads/ClWorkloadUtils.hpp | 9 +++++++-- src/backends/neon/workloads/NeonWorkloadUtils.hpp | 8 ++++++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/backends/cl/workloads/ClWorkloadUtils.hpp b/src/backends/cl/workloads/ClWorkloadUtils.hpp index ebdd504a97..8f2fb48238 100644 --- a/src/backends/cl/workloads/ClWorkloadUtils.hpp +++ b/src/backends/cl/workloads/ClWorkloadUtils.hpp @@ -1,9 +1,10 @@ // -// Copyright © 2017 Arm Ltd and Contributors. All rights reserved. +// Copyright © 2022 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #pragma once +#include #include #include @@ -139,8 +140,12 @@ inline void InitializeArmComputeClTensorData(arm_compute::CLTensor& clTensor, case DataType::Signed32: CopyArmComputeClTensorData(clTensor, handle->GetConstTensor()); break; + case DataType::BFloat16: + CopyArmComputeClTensorData(clTensor, handle->GetConstTensor()); + break; default: - ARMNN_ASSERT_MSG(false, "Unexpected tensor type."); + // Throw exception; assertion not called in release build. + throw Exception("Unexpected tensor type during InitializeArmComputeClTensorData()."); } }; diff --git a/src/backends/neon/workloads/NeonWorkloadUtils.hpp b/src/backends/neon/workloads/NeonWorkloadUtils.hpp index af32104399..f9c3718e14 100644 --- a/src/backends/neon/workloads/NeonWorkloadUtils.hpp +++ b/src/backends/neon/workloads/NeonWorkloadUtils.hpp @@ -1,5 +1,5 @@ // -// Copyright © 2017 Arm Ltd and Contributors. All rights reserved. +// Copyright © 2022 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #pragma once @@ -83,8 +83,12 @@ inline void InitializeArmComputeTensorData(arm_compute::Tensor& tensor, case DataType::QSymmS16: CopyArmComputeTensorData(tensor, handle->GetConstTensor()); break; + case DataType::BFloat16: + CopyArmComputeTensorData(tensor, handle->GetConstTensor()); + break; default: - ARMNN_ASSERT_MSG(false, "Unexpected tensor type."); + // Throw exception; assertion not called in release build. + throw Exception("Unexpected tensor type during InitializeArmComputeTensorData()."); } }; -- cgit v1.2.1