blob: 886e77a31b0f4c323e18571503de84d22e4d87d4 [file] [log] [blame]
telsoa01c577f2c2018-08-31 09:22:23 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
David Beckecb56cd2018-09-05 12:52:57 +01003// SPDX-License-Identifier: MIT
telsoa01c577f2c2018-08-31 09:22:23 +01004//
5
6#include "RefConvertFp16ToFp32Workload.hpp"
arovir01616e7752018-10-01 17:08:59 +01007
telsoa01c577f2c2018-08-31 09:22:23 +01008#include "RefWorkloadUtils.hpp"
9#include "FloatingPointConverter.hpp"
10
Aron Virginas-Tarc9cc8042018-11-01 16:15:57 +000011#include <Half.hpp>
arovir01616e7752018-10-01 17:08:59 +010012
telsoa01c577f2c2018-08-31 09:22:23 +010013namespace armnn
14{
15
16void RefConvertFp16ToFp32Workload::Execute() const
17{
18 ARMNN_SCOPED_PROFILING_EVENT(Compute::CpuRef, "RefConvertFp16ToFp32Workload_Execute");
19
20 const Half* const input = GetInputTensorDataHalf(0, m_Data);
21 float* const output = GetOutputTensorDataFloat(0, m_Data);
22
23 unsigned int numElements = GetTensorInfo(m_Data.m_Inputs[0]).GetNumElements();
24 armnnUtils::FloatingPointConverter::ConvertFloat16To32(input, numElements, output);
25}
26
27} //namespace armnn