{
bool supported = true;
- std::array<DataType,3> supportedTypes =
+ std::array<DataType, 4> supportedTypes =
{
+ DataType::Float16,
DataType::Float32,
DataType::QuantisedAsymm8,
DataType::QuantisedSymm16
std::unique_ptr<IWorkload> RefWorkloadFactory::CreateDebug(const DebugQueueDescriptor& descriptor,
const WorkloadInfo& info) const
{
+ if (IsFloat16(info))
+ {
+ return std::make_unique<RefDebugFloat16Workload>(descriptor, info);
+ }
if (IsQSymm16(info))
{
return std::make_unique<RefDebugQSymm16Workload>(descriptor, info);
}
+
return MakeWorkload<RefDebugFloat32Workload, RefDebugQAsymm8Workload>(descriptor, info);
}
// Copyright © 2017 Arm Ltd. All rights reserved.
// SPDX-License-Identifier: MIT
//
+
#include "Debug.hpp"
+#include <Half.hpp>
+
#include <boost/numeric/conversion/cast.hpp>
#include <algorithm>
std::cout << " }" << std::endl;
}
+template void Debug<Half>(const TensorInfo& inputInfo,
+ const Half* inputData,
+ LayerGuid guid,
+ const std::string& layerName,
+ unsigned int slotIndex);
+
template void Debug<float>(const TensorInfo& inputInfo,
const float* inputData,
LayerGuid guid,
LayerGuid guid,
const std::string& layerName,
unsigned int slotIndex);
+
} // namespace armnn
m_Callback = func;
}
+template class RefDebugWorkload<DataType::Float16>;
template class RefDebugWorkload<DataType::Float32>;
template class RefDebugWorkload<DataType::QuantisedAsymm8>;
template class RefDebugWorkload<DataType::QuantisedSymm16>;
DebugCallbackFunction m_Callback;
};
+using RefDebugFloat16Workload = RefDebugWorkload<DataType::Float16>;
using RefDebugFloat32Workload = RefDebugWorkload<DataType::Float32>;
using RefDebugQAsymm8Workload = RefDebugWorkload<DataType::QuantisedAsymm8>;
using RefDebugQSymm16Workload = RefDebugWorkload<DataType::QuantisedSymm16>;