33 const std::vector<float>& inputValues,
34 const std::vector<float>& expectedOutputValues,
41 result.outputExpected =
42 MakeTensor<T, NumDims>(outputInfo, armnnUtils::QuantizedVector<T>(expectedOutputValues, qScale, qOffset));
45 std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputInfo);
46 std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputInfo);
51 AddInputToWorkload(descriptor, info, inputInfo, inputHandle.get());
52 AddOutputToWorkload(descriptor, info, outputInfo, outputHandle.get());
54 std::unique_ptr<armnn::IWorkload> workload = workloadFactory.CreateLogSoftmax(descriptor, info);
56 inputHandle->Allocate();
57 outputHandle->Allocate();
59 auto inputTensor = MakeTensor<T, NumDims>(inputInfo, armnnUtils::QuantizedVector<T>(inputValues, qScale, qOffset));
62 ExecuteWorkload(*workload, memoryManager);
71 template<armnn::DataType ArmnnType,
typename T>
81 std::vector<float> inputValues
87 std::vector<float> expectedOutputValues
89 -4.14297f, -10.14297f, -2.14297f, -0.14297f,
90 -7.00104f, -12.00104f, -0.00105f, -9.00104f
97 return LogSoftmaxTestImpl<ArmnnType, 4>(
103 expectedOutputValues,
107 template<armnn::DataType ArmnnType,
typename T>
117 std::vector<float> inputValues
123 std::vector<float> expectedOutputValues
125 -4.14297f, -10.14297f, -2.14297f, -0.14297f,
126 -7.00104f, -12.00104f, -0.00105f, -9.00104f
133 return LogSoftmaxTestImpl<ArmnnType, 4>(
139 expectedOutputValues,
143 template<armnn::DataType ArmnnType,
typename T>
153 std::vector<float> inputValues
155 0.0f, -0.6f, 0.2f, 0.4f,
156 0.3f, -0.2f, 1.0f, 0.1f
159 std::vector<float> expectedOutputValues
161 -4.14297f, -10.14297f, -2.14297f, -0.14297f,
162 -7.00104f, -12.00104f, -0.00105f, -9.00104f
169 return LogSoftmaxTestImpl<ArmnnType, 4>(
175 expectedOutputValues,
179 template<armnn::DataType ArmnnType,
typename T>
189 std::vector<float> inputValues
195 std::vector<float> expectedOutputValues
197 -3.048587f, -4.018149f, -8.000336f, -0.048587f,
198 -0.048587f, -0.018149f, -0.000335f, -3.048587f
205 return LogSoftmaxTestImpl<ArmnnType, 4>(
211 expectedOutputValues,
216 LogSoftmaxTest1<armnn::DataType::Float32>(
220 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
221 LogSoftmaxTest2<armnn::DataType::Float32>(
225 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
226 LogSoftmaxTest3<armnn::DataType::Float32>(
230 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
231 LogSoftmaxTest4<armnn::DataType::Float32>(
236 LogSoftmaxTest1<armnn::DataType::Float16>(
240 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
241 LogSoftmaxTest2<armnn::DataType::Float16>(
245 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
246 LogSoftmaxTest3<armnn::DataType::Float16>(
250 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
251 LogSoftmaxTest4<armnn::DataType::Float16>(
int m_Axis
Scalar, defaulted to the last index (-1), specifying the dimension the activation will be performed o...
#define ARMNN_NO_DEPRECATE_WARN_BEGIN
float m_Beta
Exponentiation value.
typename ResolveTypeImpl< DT >::Type ResolveType
LayerTestResult< T, 4 > LogSoftmaxTest4(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
void IgnoreUnused(Ts &&...)
LayerDescriptor m_Parameters
LayerTestResult< T, 4 > LogSoftmaxTest2(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
#define ARMNN_NO_DEPRECATE_WARN_END
std::shared_ptr< IMemoryManager > IMemoryManagerSharedPtr
void CopyDataFromITensorHandle(void *memory, const armnn::ITensorHandle *tensorHandle)
Contains information about inputs and outputs to a layer.
LayerTestResult< T, 4 > LogSoftmaxTest3(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< T, 4 > LogSoftmaxTest1(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
void CopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)