IVGCVSW-3236 Extend Ref LSTM with layer normalization support
* Add descriptor values
* Update lstm queue descriptor validate function
* Update lstm workload
* Update isLstmSupported (Cl and Ref), LayerSupportBase, ILayerSupport
* Update lstm layer
* Add unit tests
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I932175d550facfb342325051eaa7bd2084ebdc18
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
diff --git a/src/backends/backendsCommon/WorkloadData.hpp b/src/backends/backendsCommon/WorkloadData.hpp
index fa9e1cd..d241f7b 100644
--- a/src/backends/backendsCommon/WorkloadData.hpp
+++ b/src/backends/backendsCommon/WorkloadData.hpp
@@ -344,6 +344,10 @@
, m_OutputGateBias(nullptr)
, m_ProjectionWeights(nullptr)
, m_ProjectionBias(nullptr)
+ , m_InputLayerNormWeights(nullptr)
+ , m_ForgetLayerNormWeights(nullptr)
+ , m_CellLayerNormWeights(nullptr)
+ , m_OutputLayerNormWeights(nullptr)
{
}
@@ -364,6 +368,10 @@
const ConstCpuTensorHandle* m_OutputGateBias;
const ConstCpuTensorHandle* m_ProjectionWeights;
const ConstCpuTensorHandle* m_ProjectionBias;
+ const ConstCpuTensorHandle* m_InputLayerNormWeights;
+ const ConstCpuTensorHandle* m_ForgetLayerNormWeights;
+ const ConstCpuTensorHandle* m_CellLayerNormWeights;
+ const ConstCpuTensorHandle* m_OutputLayerNormWeights;
void Validate(const WorkloadInfo& workloadInfo) const;
};