diff options
author | janeil01 <jan.eilers@arm.com> | 2019-11-15 15:00:16 +0000 |
---|---|---|
committer | Matteo Martincigh <matteo.martincigh@arm.com> | 2019-11-15 17:14:05 +0000 |
commit | 17d8d85ece077c1272839edea32c55af553ced59 (patch) | |
tree | 89a8ae955f6a2562c32a7c21f6c3b4bbe62d6c2d /src/backends/backendsCommon/WorkloadData.cpp | |
parent | 0270524f96c4e21a755d1c71e46c4e8665918237 (diff) | |
download | armnn-17d8d85ece077c1272839edea32c55af553ced59.tar.gz |
IVGCVSW-3486 Add clipping parameter validation in LstmQueueDescriptor
* Add clipping parameter validation in LstmQueueDescriptor
* Related UnitTest
Signed-off-by: janeil01 <jan.eilers@arm.com>
Change-Id: I86ff81cacc0e1fff5b78a8d6c2dcbf9ff57e2272
Diffstat (limited to 'src/backends/backendsCommon/WorkloadData.cpp')
-rw-r--r-- | src/backends/backendsCommon/WorkloadData.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/backends/backendsCommon/WorkloadData.cpp b/src/backends/backendsCommon/WorkloadData.cpp index 443dc8eae3..c145c4b39f 100644 --- a/src/backends/backendsCommon/WorkloadData.cpp +++ b/src/backends/backendsCommon/WorkloadData.cpp @@ -1731,10 +1731,20 @@ void LstmQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const "output_" + std::to_string(i)); } - // TODO: check clipping parameter is valid + // Making sure clipping parameters have valid values. + // == 0 means no clipping + // > 0 means clipping + if (m_Parameters.m_ClippingThresCell < 0.0f) + { + throw InvalidArgumentException(descriptorName + ": negative cell clipping threshold is invalid"); + } + if (m_Parameters.m_ClippingThresProj < 0.0f) + { + throw InvalidArgumentException(descriptorName + ": negative projection clipping threshold is invalid"); + } + // Inferring batch size, number of outputs and number of cells from the inputs. - // TODO: figure out if there is a way to make sure the specific inputs are at that index of workloadInfo const uint32_t n_input = workloadInfo.m_InputTensorInfos[0].GetShape()[1]; const uint32_t n_batch = workloadInfo.m_InputTensorInfos[0].GetShape()[0]; ValidatePointer(m_InputToOutputWeights, "Null pointer check", "InputToOutputWeights"); |