Ryan OShea | de36e4a | 2020-03-13 16:26:19 +0000 | [diff] [blame^] | 1 | <!-- Copyright (c) 2020 ARM Limited. --> |
| 2 | <!-- --> |
| 3 | <!-- SPDX-License-Identifier: MIT --> |
| 4 | <!-- --> |
| 5 | <!-- HTML header for doxygen 1.8.13--> |
| 6 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| 7 | <html xmlns="http://www.w3.org/1999/xhtml"> |
| 8 | <head> |
| 9 | <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> |
| 10 | <meta http-equiv="X-UA-Compatible" content="IE=9"/> |
| 11 | <meta name="generator" content="Doxygen 1.8.13"/> |
| 12 | <meta name="robots" content="NOINDEX, NOFOLLOW" /> |
| 13 | <meta name="viewport" content="width=device-width, initial-scale=1"/> |
| 14 | <title>ArmNN: LstmQueueDescriptor Struct Reference</title> |
| 15 | <link href="tabs.css" rel="stylesheet" type="text/css"/> |
| 16 | <script type="text/javascript" src="jquery.js"></script> |
| 17 | <script type="text/javascript" src="dynsections.js"></script> |
| 18 | <link href="navtree.css" rel="stylesheet" type="text/css"/> |
| 19 | <script type="text/javascript" src="resize.js"></script> |
| 20 | <script type="text/javascript" src="navtreedata.js"></script> |
| 21 | <script type="text/javascript" src="navtree.js"></script> |
| 22 | <script type="text/javascript"> |
| 23 | $(document).ready(initResizable); |
| 24 | </script> |
| 25 | <link href="search/search.css" rel="stylesheet" type="text/css"/> |
| 26 | <script type="text/javascript" src="search/searchdata.js"></script> |
| 27 | <script type="text/javascript" src="search/search.js"></script> |
| 28 | <script type="text/x-mathjax-config"> |
| 29 | MathJax.Hub.Config({ |
| 30 | extensions: ["tex2jax.js"], |
| 31 | jax: ["input/TeX","output/HTML-CSS"], |
| 32 | }); |
| 33 | </script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script> |
| 34 | <link href="doxygen.css" rel="stylesheet" type="text/css" /> |
| 35 | <link href="stylesheet.css" rel="stylesheet" type="text/css"/> |
| 36 | </head> |
| 37 | <body> |
| 38 | <div id="top"><!-- do not remove this div, it is closed by doxygen! --> |
| 39 | <div id="titlearea"> |
| 40 | <table cellspacing="0" cellpadding="0"> |
| 41 | <tbody> |
| 42 | <tr style="height: 56px;"> |
| 43 | <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/> |
| 44 | <td style="padding-left: 0.5em;"> |
| 45 | <div id="projectname"> |
| 46 |  <span id="projectnumber">20.02</span> |
| 47 | </div> |
| 48 | </td> |
| 49 | </tr> |
| 50 | </tbody> |
| 51 | </table> |
| 52 | </div> |
| 53 | <!-- end header part --> |
| 54 | <!-- Generated by Doxygen 1.8.13 --> |
| 55 | <script type="text/javascript"> |
| 56 | var searchBox = new SearchBox("searchBox", "search",false,'Search'); |
| 57 | </script> |
| 58 | <script type="text/javascript" src="menudata.js"></script> |
| 59 | <script type="text/javascript" src="menu.js"></script> |
| 60 | <script type="text/javascript"> |
| 61 | $(function() { |
| 62 | initMenu('',true,false,'search.php','Search'); |
| 63 | $(document).ready(function() { init_search(); }); |
| 64 | }); |
| 65 | </script> |
| 66 | <div id="main-nav"></div> |
| 67 | </div><!-- top --> |
| 68 | <div id="side-nav" class="ui-resizable side-nav-resizable"> |
| 69 | <div id="nav-tree"> |
| 70 | <div id="nav-tree-contents"> |
| 71 | <div id="nav-sync" class="sync"></div> |
| 72 | </div> |
| 73 | </div> |
| 74 | <div id="splitbar" style="-moz-user-select:none;" |
| 75 | class="ui-resizable-handle"> |
| 76 | </div> |
| 77 | </div> |
| 78 | <script type="text/javascript"> |
| 79 | $(document).ready(function(){initNavTree('structarmnn_1_1_lstm_queue_descriptor.xhtml','');}); |
| 80 | </script> |
| 81 | <div id="doc-content"> |
| 82 | <!-- window showing the filter options --> |
| 83 | <div id="MSearchSelectWindow" |
| 84 | onmouseover="return searchBox.OnSearchSelectShow()" |
| 85 | onmouseout="return searchBox.OnSearchSelectHide()" |
| 86 | onkeydown="return searchBox.OnSearchSelectKey(event)"> |
| 87 | </div> |
| 88 | |
| 89 | <!-- iframe showing the search results (closed by default) --> |
| 90 | <div id="MSearchResultsWindow"> |
| 91 | <iframe src="javascript:void(0)" frameborder="0" |
| 92 | name="MSearchResults" id="MSearchResults"> |
| 93 | </iframe> |
| 94 | </div> |
| 95 | |
| 96 | <div class="header"> |
| 97 | <div class="summary"> |
| 98 | <a href="#pub-methods">Public Member Functions</a> | |
| 99 | <a href="#pub-attribs">Public Attributes</a> | |
| 100 | <a href="structarmnn_1_1_lstm_queue_descriptor-members.xhtml">List of all members</a> </div> |
| 101 | <div class="headertitle"> |
| 102 | <div class="title">LstmQueueDescriptor Struct Reference</div> </div> |
| 103 | </div><!--header--> |
| 104 | <div class="contents"> |
| 105 | |
| 106 | <p><code>#include <<a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>></code></p> |
| 107 | <div class="dynheader"> |
| 108 | Inheritance diagram for LstmQueueDescriptor:</div> |
| 109 | <div class="dyncontent"> |
| 110 | <div class="center"> |
| 111 | <img src="structarmnn_1_1_lstm_queue_descriptor.png" usemap="#LstmQueueDescriptor_map" alt=""/> |
| 112 | <map id="LstmQueueDescriptor_map" name="LstmQueueDescriptor_map"> |
| 113 | <area href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml" alt="QueueDescriptorWithParameters< LstmDescriptor >" shape="rect" coords="0,56,305,80"/> |
| 114 | <area href="structarmnn_1_1_queue_descriptor.xhtml" alt="QueueDescriptor" shape="rect" coords="0,0,305,24"/> |
| 115 | </map> |
| 116 | </div></div> |
| 117 | <table class="memberdecls"> |
| 118 | <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> |
| 119 | Public Member Functions</h2></td></tr> |
| 120 | <tr class="memitem:a1f701da89f9eeded946647212e5eebc9"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a1f701da89f9eeded946647212e5eebc9">LstmQueueDescriptor</a> ()</td></tr> |
| 121 | <tr class="separator:a1f701da89f9eeded946647212e5eebc9"><td class="memSeparator" colspan="2"> </td></tr> |
| 122 | <tr class="memitem:a041e495449e22774a34d92b0904c10bf"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a041e495449e22774a34d92b0904c10bf">Validate</a> (const <a class="el" href="structarmnn_1_1_workload_info.xhtml">WorkloadInfo</a> &workloadInfo) const</td></tr> |
| 123 | <tr class="separator:a041e495449e22774a34d92b0904c10bf"><td class="memSeparator" colspan="2"> </td></tr> |
| 124 | <tr class="inherit_header pub_methods_structarmnn_1_1_queue_descriptor"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structarmnn_1_1_queue_descriptor')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="structarmnn_1_1_queue_descriptor.xhtml">QueueDescriptor</a></td></tr> |
| 125 | <tr class="memitem:a765d2cee4ccce5b9467e0c2b6d25b84a inherit pub_methods_structarmnn_1_1_queue_descriptor"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor.xhtml#a765d2cee4ccce5b9467e0c2b6d25b84a">ValidateInputsOutputs</a> (const std::string &descName, unsigned int numExpectedIn, unsigned int numExpectedOut) const</td></tr> |
| 126 | <tr class="separator:a765d2cee4ccce5b9467e0c2b6d25b84a inherit pub_methods_structarmnn_1_1_queue_descriptor"><td class="memSeparator" colspan="2"> </td></tr> |
| 127 | </table><table class="memberdecls"> |
| 128 | <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a> |
| 129 | Public Attributes</h2></td></tr> |
| 130 | <tr class="memitem:a08a1932be591c315a512a877d38b22df"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a08a1932be591c315a512a877d38b22df">m_InputToInputWeights</a></td></tr> |
| 131 | <tr class="separator:a08a1932be591c315a512a877d38b22df"><td class="memSeparator" colspan="2"> </td></tr> |
| 132 | <tr class="memitem:a3ea82566d98c5a657c76c3d851c47848"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a3ea82566d98c5a657c76c3d851c47848">m_InputToForgetWeights</a></td></tr> |
| 133 | <tr class="separator:a3ea82566d98c5a657c76c3d851c47848"><td class="memSeparator" colspan="2"> </td></tr> |
| 134 | <tr class="memitem:a28ad98d17603fd8b12e046f8ece58970"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a28ad98d17603fd8b12e046f8ece58970">m_InputToCellWeights</a></td></tr> |
| 135 | <tr class="separator:a28ad98d17603fd8b12e046f8ece58970"><td class="memSeparator" colspan="2"> </td></tr> |
| 136 | <tr class="memitem:a83dc9086b2e4a4e4cadb66bd874df798"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a83dc9086b2e4a4e4cadb66bd874df798">m_InputToOutputWeights</a></td></tr> |
| 137 | <tr class="separator:a83dc9086b2e4a4e4cadb66bd874df798"><td class="memSeparator" colspan="2"> </td></tr> |
| 138 | <tr class="memitem:a98d377149071d8842d610cc0734d1cfe"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a98d377149071d8842d610cc0734d1cfe">m_RecurrentToInputWeights</a></td></tr> |
| 139 | <tr class="separator:a98d377149071d8842d610cc0734d1cfe"><td class="memSeparator" colspan="2"> </td></tr> |
| 140 | <tr class="memitem:a45d73e66cbb2b65049e4016c20657ccf"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a45d73e66cbb2b65049e4016c20657ccf">m_RecurrentToForgetWeights</a></td></tr> |
| 141 | <tr class="separator:a45d73e66cbb2b65049e4016c20657ccf"><td class="memSeparator" colspan="2"> </td></tr> |
| 142 | <tr class="memitem:aea142bd50ffb93631c2e08324ec92a1e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aea142bd50ffb93631c2e08324ec92a1e">m_RecurrentToCellWeights</a></td></tr> |
| 143 | <tr class="separator:aea142bd50ffb93631c2e08324ec92a1e"><td class="memSeparator" colspan="2"> </td></tr> |
| 144 | <tr class="memitem:adebc1771e5a1f4b113a7aa594ea74d2c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#adebc1771e5a1f4b113a7aa594ea74d2c">m_RecurrentToOutputWeights</a></td></tr> |
| 145 | <tr class="separator:adebc1771e5a1f4b113a7aa594ea74d2c"><td class="memSeparator" colspan="2"> </td></tr> |
| 146 | <tr class="memitem:a5c1c0a7ead7273788976c9e97cffaab7"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a5c1c0a7ead7273788976c9e97cffaab7">m_CellToInputWeights</a></td></tr> |
| 147 | <tr class="separator:a5c1c0a7ead7273788976c9e97cffaab7"><td class="memSeparator" colspan="2"> </td></tr> |
| 148 | <tr class="memitem:acefa49d7faf26933e27e473e7bdb4175"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acefa49d7faf26933e27e473e7bdb4175">m_CellToForgetWeights</a></td></tr> |
| 149 | <tr class="separator:acefa49d7faf26933e27e473e7bdb4175"><td class="memSeparator" colspan="2"> </td></tr> |
| 150 | <tr class="memitem:a6f74071b0e07bbe2cb20a8f78826e084"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a6f74071b0e07bbe2cb20a8f78826e084">m_CellToOutputWeights</a></td></tr> |
| 151 | <tr class="separator:a6f74071b0e07bbe2cb20a8f78826e084"><td class="memSeparator" colspan="2"> </td></tr> |
| 152 | <tr class="memitem:acb3aade8fae984f7293e222dcbe66030"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acb3aade8fae984f7293e222dcbe66030">m_InputGateBias</a></td></tr> |
| 153 | <tr class="separator:acb3aade8fae984f7293e222dcbe66030"><td class="memSeparator" colspan="2"> </td></tr> |
| 154 | <tr class="memitem:aba3ffe91d818266b8785ce971548eb59"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aba3ffe91d818266b8785ce971548eb59">m_ForgetGateBias</a></td></tr> |
| 155 | <tr class="separator:aba3ffe91d818266b8785ce971548eb59"><td class="memSeparator" colspan="2"> </td></tr> |
| 156 | <tr class="memitem:a75980b5795efd899a0c678a06a900c6d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a75980b5795efd899a0c678a06a900c6d">m_CellBias</a></td></tr> |
| 157 | <tr class="separator:a75980b5795efd899a0c678a06a900c6d"><td class="memSeparator" colspan="2"> </td></tr> |
| 158 | <tr class="memitem:a332551528a4b3534c2d6c89ce816fcd9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a332551528a4b3534c2d6c89ce816fcd9">m_OutputGateBias</a></td></tr> |
| 159 | <tr class="separator:a332551528a4b3534c2d6c89ce816fcd9"><td class="memSeparator" colspan="2"> </td></tr> |
| 160 | <tr class="memitem:af3c52626a6f05597d82ed095d0765962"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#af3c52626a6f05597d82ed095d0765962">m_ProjectionWeights</a></td></tr> |
| 161 | <tr class="separator:af3c52626a6f05597d82ed095d0765962"><td class="memSeparator" colspan="2"> </td></tr> |
| 162 | <tr class="memitem:a2ba352eb1fdf6dc5ecf7f2e6b6b48f94"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">m_ProjectionBias</a></td></tr> |
| 163 | <tr class="separator:a2ba352eb1fdf6dc5ecf7f2e6b6b48f94"><td class="memSeparator" colspan="2"> </td></tr> |
| 164 | <tr class="memitem:a9cc28aa4fff6ba9a8abdb340c1abdd57"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">m_InputLayerNormWeights</a></td></tr> |
| 165 | <tr class="separator:a9cc28aa4fff6ba9a8abdb340c1abdd57"><td class="memSeparator" colspan="2"> </td></tr> |
| 166 | <tr class="memitem:a453a4af385d0c060c9aac990fceaa1ef"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a453a4af385d0c060c9aac990fceaa1ef">m_ForgetLayerNormWeights</a></td></tr> |
| 167 | <tr class="separator:a453a4af385d0c060c9aac990fceaa1ef"><td class="memSeparator" colspan="2"> </td></tr> |
| 168 | <tr class="memitem:a518f0195d0278a892b49649b8860d17f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a518f0195d0278a892b49649b8860d17f">m_CellLayerNormWeights</a></td></tr> |
| 169 | <tr class="separator:a518f0195d0278a892b49649b8860d17f"><td class="memSeparator" colspan="2"> </td></tr> |
| 170 | <tr class="memitem:aa3f07e27230d6d99adc2c82ba681df2b"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aa3f07e27230d6d99adc2c82ba681df2b">m_OutputLayerNormWeights</a></td></tr> |
| 171 | <tr class="separator:aa3f07e27230d6d99adc2c82ba681df2b"><td class="memSeparator" colspan="2"> </td></tr> |
| 172 | <tr class="inherit_header pub_attribs_structarmnn_1_1_queue_descriptor_with_parameters"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structarmnn_1_1_queue_descriptor_with_parameters')"><img src="closed.png" alt="-"/> Public Attributes inherited from <a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml">QueueDescriptorWithParameters< LstmDescriptor ></a></td></tr> |
| 173 | <tr class="memitem:aad91b9bbf7aa365d304febe79a3d1333 inherit pub_attribs_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarmnn_1_1_lstm_descriptor.xhtml">LstmDescriptor</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a></td></tr> |
| 174 | <tr class="separator:aad91b9bbf7aa365d304febe79a3d1333 inherit pub_attribs_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memSeparator" colspan="2"> </td></tr> |
| 175 | <tr class="inherit_header pub_attribs_structarmnn_1_1_queue_descriptor"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structarmnn_1_1_queue_descriptor')"><img src="closed.png" alt="-"/> Public Attributes inherited from <a class="el" href="structarmnn_1_1_queue_descriptor.xhtml">QueueDescriptor</a></td></tr> |
| 176 | <tr class="memitem:a4b50e46a6810018f3edecfb68b2a76b3 inherit pub_attribs_structarmnn_1_1_queue_descriptor"><td class="memItemLeft" align="right" valign="top">std::vector< <a class="el" href="classarmnn_1_1_i_tensor_handle.xhtml">ITensorHandle</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor.xhtml#a4b50e46a6810018f3edecfb68b2a76b3">m_Inputs</a></td></tr> |
| 177 | <tr class="separator:a4b50e46a6810018f3edecfb68b2a76b3 inherit pub_attribs_structarmnn_1_1_queue_descriptor"><td class="memSeparator" colspan="2"> </td></tr> |
| 178 | <tr class="memitem:a6abd491bb99ffe88bd472c1ae5a1ed1a inherit pub_attribs_structarmnn_1_1_queue_descriptor"><td class="memItemLeft" align="right" valign="top">std::vector< <a class="el" href="classarmnn_1_1_i_tensor_handle.xhtml">ITensorHandle</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor.xhtml#a6abd491bb99ffe88bd472c1ae5a1ed1a">m_Outputs</a></td></tr> |
| 179 | <tr class="separator:a6abd491bb99ffe88bd472c1ae5a1ed1a inherit pub_attribs_structarmnn_1_1_queue_descriptor"><td class="memSeparator" colspan="2"> </td></tr> |
| 180 | </table><table class="memberdecls"> |
| 181 | <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a> |
| 182 | Additional Inherited Members</h2></td></tr> |
| 183 | <tr class="inherit_header pro_methods_structarmnn_1_1_queue_descriptor_with_parameters"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_structarmnn_1_1_queue_descriptor_with_parameters')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml">QueueDescriptorWithParameters< LstmDescriptor ></a></td></tr> |
| 184 | <tr class="memitem:a52679b441422256016dc6f5b5e9193d5 inherit pro_methods_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#a52679b441422256016dc6f5b5e9193d5">~QueueDescriptorWithParameters</a> ()=default</td></tr> |
| 185 | <tr class="separator:a52679b441422256016dc6f5b5e9193d5 inherit pro_methods_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memSeparator" colspan="2"> </td></tr> |
| 186 | <tr class="memitem:a6f269eb32757efa5b203091c52e985fd inherit pro_methods_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#a6f269eb32757efa5b203091c52e985fd">QueueDescriptorWithParameters</a> ()=default</td></tr> |
| 187 | <tr class="separator:a6f269eb32757efa5b203091c52e985fd inherit pro_methods_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memSeparator" colspan="2"> </td></tr> |
| 188 | <tr class="memitem:a6cbdcaa9cab857077a3810788e2cf489 inherit pro_methods_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#a6cbdcaa9cab857077a3810788e2cf489">QueueDescriptorWithParameters</a> (<a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml">QueueDescriptorWithParameters</a> const &)=default</td></tr> |
| 189 | <tr class="separator:a6cbdcaa9cab857077a3810788e2cf489 inherit pro_methods_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memSeparator" colspan="2"> </td></tr> |
| 190 | <tr class="memitem:aa86bd03df9faf133a34e263f16486707 inherit pro_methods_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml">QueueDescriptorWithParameters</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aa86bd03df9faf133a34e263f16486707">operator=</a> (<a class="el" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml">QueueDescriptorWithParameters</a> const &)=default</td></tr> |
| 191 | <tr class="separator:aa86bd03df9faf133a34e263f16486707 inherit pro_methods_structarmnn_1_1_queue_descriptor_with_parameters"><td class="memSeparator" colspan="2"> </td></tr> |
| 192 | <tr class="inherit_header pro_methods_structarmnn_1_1_queue_descriptor"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_structarmnn_1_1_queue_descriptor')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="structarmnn_1_1_queue_descriptor.xhtml">QueueDescriptor</a></td></tr> |
| 193 | <tr class="memitem:af67c3785421c91d37fb22132d441f704 inherit pro_methods_structarmnn_1_1_queue_descriptor"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor.xhtml#af67c3785421c91d37fb22132d441f704">~QueueDescriptor</a> ()=default</td></tr> |
| 194 | <tr class="separator:af67c3785421c91d37fb22132d441f704 inherit pro_methods_structarmnn_1_1_queue_descriptor"><td class="memSeparator" colspan="2"> </td></tr> |
| 195 | <tr class="memitem:a40f14131fbead7c8eaf32b67eedd9e01 inherit pro_methods_structarmnn_1_1_queue_descriptor"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor.xhtml#a40f14131fbead7c8eaf32b67eedd9e01">QueueDescriptor</a> ()=default</td></tr> |
| 196 | <tr class="separator:a40f14131fbead7c8eaf32b67eedd9e01 inherit pro_methods_structarmnn_1_1_queue_descriptor"><td class="memSeparator" colspan="2"> </td></tr> |
| 197 | <tr class="memitem:a75d3b85e1e50b1dff74ee84a593d089e inherit pro_methods_structarmnn_1_1_queue_descriptor"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor.xhtml#a75d3b85e1e50b1dff74ee84a593d089e">QueueDescriptor</a> (<a class="el" href="structarmnn_1_1_queue_descriptor.xhtml">QueueDescriptor</a> const &)=default</td></tr> |
| 198 | <tr class="separator:a75d3b85e1e50b1dff74ee84a593d089e inherit pro_methods_structarmnn_1_1_queue_descriptor"><td class="memSeparator" colspan="2"> </td></tr> |
| 199 | <tr class="memitem:a1c928b975a0de05cf2536c721ba6b521 inherit pro_methods_structarmnn_1_1_queue_descriptor"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarmnn_1_1_queue_descriptor.xhtml">QueueDescriptor</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_queue_descriptor.xhtml#a1c928b975a0de05cf2536c721ba6b521">operator=</a> (<a class="el" href="structarmnn_1_1_queue_descriptor.xhtml">QueueDescriptor</a> const &)=default</td></tr> |
| 200 | <tr class="separator:a1c928b975a0de05cf2536c721ba6b521 inherit pro_methods_structarmnn_1_1_queue_descriptor"><td class="memSeparator" colspan="2"> </td></tr> |
| 201 | </table> |
| 202 | <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> |
| 203 | <div class="textblock"> |
| 204 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00358">358</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 205 | </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> |
| 206 | <a id="a1f701da89f9eeded946647212e5eebc9"></a> |
| 207 | <h2 class="memtitle"><span class="permalink"><a href="#a1f701da89f9eeded946647212e5eebc9">◆ </a></span>LstmQueueDescriptor()</h2> |
| 208 | |
| 209 | <div class="memitem"> |
| 210 | <div class="memproto"> |
| 211 | <table class="mlabels"> |
| 212 | <tr> |
| 213 | <td class="mlabels-left"> |
| 214 | <table class="memname"> |
| 215 | <tr> |
| 216 | <td class="memname"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml">LstmQueueDescriptor</a> </td> |
| 217 | <td>(</td> |
| 218 | <td class="paramname"></td><td>)</td> |
| 219 | <td></td> |
| 220 | </tr> |
| 221 | </table> |
| 222 | </td> |
| 223 | <td class="mlabels-right"> |
| 224 | <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| 225 | </tr> |
| 226 | </table> |
| 227 | </div><div class="memdoc"> |
| 228 | |
| 229 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00360">360</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 230 | <div class="fragment"><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  : <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a08a1932be591c315a512a877d38b22df">m_InputToInputWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a3ea82566d98c5a657c76c3d851c47848">m_InputToForgetWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a28ad98d17603fd8b12e046f8ece58970">m_InputToCellWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a83dc9086b2e4a4e4cadb66bd874df798">m_InputToOutputWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a98d377149071d8842d610cc0734d1cfe">m_RecurrentToInputWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a45d73e66cbb2b65049e4016c20657ccf">m_RecurrentToForgetWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aea142bd50ffb93631c2e08324ec92a1e">m_RecurrentToCellWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#adebc1771e5a1f4b113a7aa594ea74d2c">m_RecurrentToOutputWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a5c1c0a7ead7273788976c9e97cffaab7">m_CellToInputWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acefa49d7faf26933e27e473e7bdb4175">m_CellToForgetWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a6f74071b0e07bbe2cb20a8f78826e084">m_CellToOutputWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acb3aade8fae984f7293e222dcbe66030">m_InputGateBias</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aba3ffe91d818266b8785ce971548eb59">m_ForgetGateBias</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a75980b5795efd899a0c678a06a900c6d">m_CellBias</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a332551528a4b3534c2d6c89ce816fcd9">m_OutputGateBias</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#af3c52626a6f05597d82ed095d0765962">m_ProjectionWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">m_ProjectionBias</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">m_InputLayerNormWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a453a4af385d0c060c9aac990fceaa1ef">m_ForgetLayerNormWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a518f0195d0278a892b49649b8860d17f">m_CellLayerNormWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  , <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aa3f07e27230d6d99adc2c82ba681df2b">m_OutputLayerNormWeights</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  {</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  }</div><div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a45d73e66cbb2b65049e4016c20657ccf"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a45d73e66cbb2b65049e4016c20657ccf">armnn::LstmQueueDescriptor::m_RecurrentToForgetWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_RecurrentToForgetWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00390">WorkloadData.hpp:390</a></div></div> |
| 231 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a6f74071b0e07bbe2cb20a8f78826e084"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a6f74071b0e07bbe2cb20a8f78826e084">armnn::LstmQueueDescriptor::m_CellToOutputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellToOutputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00395">WorkloadData.hpp:395</a></div></div> |
| 232 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a28ad98d17603fd8b12e046f8ece58970"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a28ad98d17603fd8b12e046f8ece58970">armnn::LstmQueueDescriptor::m_InputToCellWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputToCellWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00387">WorkloadData.hpp:387</a></div></div> |
| 233 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a83dc9086b2e4a4e4cadb66bd874df798"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a83dc9086b2e4a4e4cadb66bd874df798">armnn::LstmQueueDescriptor::m_InputToOutputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputToOutputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00388">WorkloadData.hpp:388</a></div></div> |
| 234 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a2ba352eb1fdf6dc5ecf7f2e6b6b48f94"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">armnn::LstmQueueDescriptor::m_ProjectionBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_ProjectionBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00401">WorkloadData.hpp:401</a></div></div> |
| 235 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a332551528a4b3534c2d6c89ce816fcd9"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a332551528a4b3534c2d6c89ce816fcd9">armnn::LstmQueueDescriptor::m_OutputGateBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_OutputGateBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00399">WorkloadData.hpp:399</a></div></div> |
| 236 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a5c1c0a7ead7273788976c9e97cffaab7"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a5c1c0a7ead7273788976c9e97cffaab7">armnn::LstmQueueDescriptor::m_CellToInputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellToInputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00393">WorkloadData.hpp:393</a></div></div> |
| 237 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a518f0195d0278a892b49649b8860d17f"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a518f0195d0278a892b49649b8860d17f">armnn::LstmQueueDescriptor::m_CellLayerNormWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellLayerNormWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00404">WorkloadData.hpp:404</a></div></div> |
| 238 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_acefa49d7faf26933e27e473e7bdb4175"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acefa49d7faf26933e27e473e7bdb4175">armnn::LstmQueueDescriptor::m_CellToForgetWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellToForgetWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00394">WorkloadData.hpp:394</a></div></div> |
| 239 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a75980b5795efd899a0c678a06a900c6d"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a75980b5795efd899a0c678a06a900c6d">armnn::LstmQueueDescriptor::m_CellBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00398">WorkloadData.hpp:398</a></div></div> |
| 240 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a98d377149071d8842d610cc0734d1cfe"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a98d377149071d8842d610cc0734d1cfe">armnn::LstmQueueDescriptor::m_RecurrentToInputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_RecurrentToInputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00389">WorkloadData.hpp:389</a></div></div> |
| 241 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a9cc28aa4fff6ba9a8abdb340c1abdd57"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">armnn::LstmQueueDescriptor::m_InputLayerNormWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputLayerNormWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00402">WorkloadData.hpp:402</a></div></div> |
| 242 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_aa3f07e27230d6d99adc2c82ba681df2b"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aa3f07e27230d6d99adc2c82ba681df2b">armnn::LstmQueueDescriptor::m_OutputLayerNormWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_OutputLayerNormWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00405">WorkloadData.hpp:405</a></div></div> |
| 243 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_aba3ffe91d818266b8785ce971548eb59"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aba3ffe91d818266b8785ce971548eb59">armnn::LstmQueueDescriptor::m_ForgetGateBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_ForgetGateBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00397">WorkloadData.hpp:397</a></div></div> |
| 244 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a08a1932be591c315a512a877d38b22df"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a08a1932be591c315a512a877d38b22df">armnn::LstmQueueDescriptor::m_InputToInputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputToInputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00385">WorkloadData.hpp:385</a></div></div> |
| 245 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_adebc1771e5a1f4b113a7aa594ea74d2c"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#adebc1771e5a1f4b113a7aa594ea74d2c">armnn::LstmQueueDescriptor::m_RecurrentToOutputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_RecurrentToOutputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00392">WorkloadData.hpp:392</a></div></div> |
| 246 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a453a4af385d0c060c9aac990fceaa1ef"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a453a4af385d0c060c9aac990fceaa1ef">armnn::LstmQueueDescriptor::m_ForgetLayerNormWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_ForgetLayerNormWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00403">WorkloadData.hpp:403</a></div></div> |
| 247 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_acb3aade8fae984f7293e222dcbe66030"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acb3aade8fae984f7293e222dcbe66030">armnn::LstmQueueDescriptor::m_InputGateBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputGateBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00396">WorkloadData.hpp:396</a></div></div> |
| 248 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_aea142bd50ffb93631c2e08324ec92a1e"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aea142bd50ffb93631c2e08324ec92a1e">armnn::LstmQueueDescriptor::m_RecurrentToCellWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_RecurrentToCellWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00391">WorkloadData.hpp:391</a></div></div> |
| 249 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_af3c52626a6f05597d82ed095d0765962"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#af3c52626a6f05597d82ed095d0765962">armnn::LstmQueueDescriptor::m_ProjectionWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_ProjectionWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00400">WorkloadData.hpp:400</a></div></div> |
| 250 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a3ea82566d98c5a657c76c3d851c47848"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a3ea82566d98c5a657c76c3d851c47848">armnn::LstmQueueDescriptor::m_InputToForgetWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputToForgetWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00386">WorkloadData.hpp:386</a></div></div> |
| 251 | </div><!-- fragment --> |
| 252 | </div> |
| 253 | </div> |
| 254 | <h2 class="groupheader">Member Function Documentation</h2> |
| 255 | <a id="a041e495449e22774a34d92b0904c10bf"></a> |
| 256 | <h2 class="memtitle"><span class="permalink"><a href="#a041e495449e22774a34d92b0904c10bf">◆ </a></span>Validate()</h2> |
| 257 | |
| 258 | <div class="memitem"> |
| 259 | <div class="memproto"> |
| 260 | <table class="memname"> |
| 261 | <tr> |
| 262 | <td class="memname">void Validate </td> |
| 263 | <td>(</td> |
| 264 | <td class="paramtype">const <a class="el" href="structarmnn_1_1_workload_info.xhtml">WorkloadInfo</a> & </td> |
| 265 | <td class="paramname"><em>workloadInfo</em></td><td>)</td> |
| 266 | <td> const</td> |
| 267 | </tr> |
| 268 | </table> |
| 269 | </div><div class="memdoc"> |
| 270 | |
| 271 | <p class="definition">Definition at line <a class="el" href="_workload_data_8cpp_source.xhtml#l01747">1747</a> of file <a class="el" href="_workload_data_8cpp_source.xhtml">WorkloadData.cpp</a>.</p> |
| 272 | |
| 273 | <p class="reference">References <a class="el" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6acdb56b2d2f73c26480207524f2dbe0af">armnn::BFloat16</a>, <a class="el" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a26e6ed77470c6f2f830ecf874e6c0d55">armnn::Float16</a>, <a class="el" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::Float32</a>, <a class="el" href="include_2armnn_2backends_2_workload_info_8hpp_source.xhtml#l00018">WorkloadInfo::m_InputTensorInfos</a>, <a class="el" href="include_2armnn_2backends_2_workload_info_8hpp_source.xhtml#l00019">WorkloadInfo::m_OutputTensorInfos</a>, and <a class="el" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a053c769dcf82d66ef326c86980c02ba7">armnn::QSymmS16</a>.</p> |
| 274 | <div class="fragment"><div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> {</div><div class="line"><a name="l01749"></a><span class="lineno"> 1749</span>  <span class="comment">// ported from android/ml/nn/common/operations/LSTM.cpp CheckInputTensorDimensions()</span></div><div class="line"><a name="l01750"></a><span class="lineno"> 1750</span> </div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>  <span class="keyword">const</span> std::string descriptorName{<span class="stringliteral">"LstmQueueDescriptor"</span>};</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span> </div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>  <span class="comment">// check dimensions of all inputs and outputs</span></div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>  <span class="keywordflow">if</span> (workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>.size() != 3)</div><div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>  {</div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": Invalid number of inputs."</span>);</div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>  }</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>  <span class="keywordflow">if</span> (workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#a67b178f8a836bc1e52b8de109760adfd">m_OutputTensorInfos</a>.size() != 4)</div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>  {</div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": Invalid number of outputs."</span>);</div><div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>  }</div><div class="line"><a name="l01762"></a><span class="lineno"> 1762</span> </div><div class="line"><a name="l01763"></a><span class="lineno"> 1763</span>  std::vector<DataType> supportedTypes =</div><div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>  {</div><div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>  <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6acdb56b2d2f73c26480207524f2dbe0af">DataType::BFloat16</a>,</div><div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>  <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a26e6ed77470c6f2f830ecf874e6c0d55">DataType::Float16</a>,</div><div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>  <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">DataType::Float32</a>,</div><div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>  <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a053c769dcf82d66ef326c86980c02ba7">DataType::QSymmS16</a></div><div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>  };</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</span> </div><div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>  <span class="comment">// check for supported type of one input and match them with all the other input and output</span></div><div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>  ValidateDataTypes(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>[0], supportedTypes, descriptorName);</div><div class="line"><a name="l01773"></a><span class="lineno"> 1773</span> </div><div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>  <span class="comment">// type matches all other inputs</span></div><div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>  <span class="keywordflow">for</span> (uint32_t i = 1u; i < workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>.size(); ++i)</div><div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>  {</div><div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>  ValidateTensorDataTypesMatch(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>[0],</div><div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>  workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>[i],</div><div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>  descriptorName,</div><div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>  <span class="stringliteral">"input_0"</span>,</div><div class="line"><a name="l01781"></a><span class="lineno"> 1781</span>  <span class="stringliteral">"input_"</span> + std::to_string(i));</div><div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>  }</div><div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>  <span class="comment">// type matches all other outputs</span></div><div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>  <span class="keywordflow">for</span> (uint32_t i = 0u; i < workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#a67b178f8a836bc1e52b8de109760adfd">m_OutputTensorInfos</a>.size(); ++i)</div><div class="line"><a name="l01785"></a><span class="lineno"> 1785</span>  {</div><div class="line"><a name="l01786"></a><span class="lineno"> 1786</span>  ValidateTensorDataTypesMatch(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>[0],</div><div class="line"><a name="l01787"></a><span class="lineno"> 1787</span>  workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#a67b178f8a836bc1e52b8de109760adfd">m_OutputTensorInfos</a>[i],</div><div class="line"><a name="l01788"></a><span class="lineno"> 1788</span>  <span class="stringliteral">"LstmQueueDescriptor"</span>,</div><div class="line"><a name="l01789"></a><span class="lineno"> 1789</span>  <span class="stringliteral">"input_0"</span>,</div><div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>  <span class="stringliteral">"output_"</span> + std::to_string(i));</div><div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>  }</div><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span> </div><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>  <span class="comment">// Making sure clipping parameters have valid values.</span></div><div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>  <span class="comment">// == 0 means no clipping</span></div><div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>  <span class="comment">// > 0 means clipping</span></div><div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a531a3907ec13d3772370da88030191a5">m_ClippingThresCell</a> < 0.0f)</div><div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>  {</div><div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": negative cell clipping threshold is invalid"</span>);</div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>  }</div><div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a86e88bef0df4df96df752b4b8955a3af">m_ClippingThresProj</a> < 0.0f)</div><div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>  {</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": negative projection clipping threshold is invalid"</span>);</div><div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>  }</div><div class="line"><a name="l01804"></a><span class="lineno"> 1804</span> </div><div class="line"><a name="l01805"></a><span class="lineno"> 1805</span> </div><div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>  <span class="comment">// Inferring batch size, number of outputs and number of cells from the inputs.</span></div><div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>  <span class="keyword">const</span> uint32_t n_input = workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>[0].GetShape()[1];</div><div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>  <span class="keyword">const</span> uint32_t n_batch = workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>[0].GetShape()[0];</div><div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a83dc9086b2e4a4e4cadb66bd874df798">m_InputToOutputWeights</a>, <span class="stringliteral">"Null pointer check"</span>, <span class="stringliteral">"InputToOutputWeights"</span>);</div><div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>  <span class="keyword">const</span> uint32_t n_cell = <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a83dc9086b2e4a4e4cadb66bd874df798">m_InputToOutputWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a8e8d2fbabcac19f9e12779080ddff54e">GetShape</a>()[0];</div><div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#adebc1771e5a1f4b113a7aa594ea74d2c">m_RecurrentToOutputWeights</a>, <span class="stringliteral">"Null pointer check"</span>, <span class="stringliteral">"RecurrentToOutputWeights"</span>);</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>  <span class="keyword">const</span> uint32_t n_output = <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#adebc1771e5a1f4b113a7aa594ea74d2c">m_RecurrentToOutputWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a8e8d2fbabcac19f9e12779080ddff54e">GetShape</a>()[1];</div><div class="line"><a name="l01813"></a><span class="lineno"> 1813</span> </div><div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>  <span class="comment">// input tensor</span></div><div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>  ValidateTensorNumDimNumElem(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>[0], 2, (n_batch * n_input),</div><div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>  descriptorName + <span class="stringliteral">" input_0"</span>);</div><div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>  <span class="comment">// outputStateInTensor</span></div><div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>  ValidateTensorNumDimNumElem(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>[1], 2, (n_batch * n_output),</div><div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>  descriptorName + <span class="stringliteral">" input_1"</span>);</div><div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>  <span class="comment">// outputStateInTensor</span></div><div class="line"><a name="l01821"></a><span class="lineno"> 1821</span>  ValidateTensorNumDimNumElem(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">m_InputTensorInfos</a>[2], 2, (n_batch * n_cell),</div><div class="line"><a name="l01822"></a><span class="lineno"> 1822</span>  descriptorName + <span class="stringliteral">" input_2"</span>);</div><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>  <span class="comment">// scratchBufferTensor</span></div><div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> scratchBufferSize = <a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">m_CifgEnabled</a> ? n_cell * 3 : n_cell * 4;</div><div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>  ValidateTensorNumDimNumElem(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#a67b178f8a836bc1e52b8de109760adfd">m_OutputTensorInfos</a>[0], 2, (n_batch * scratchBufferSize),</div><div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>  descriptorName + <span class="stringliteral">" output_0"</span>);</div><div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>  <span class="comment">// outputStateOutTensor</span></div><div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>  ValidateTensorNumDimNumElem(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#a67b178f8a836bc1e52b8de109760adfd">m_OutputTensorInfos</a>[1], 2, (n_batch * n_output),</div><div class="line"><a name="l01829"></a><span class="lineno"> 1829</span>  descriptorName + <span class="stringliteral">" output_1"</span>);</div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>  <span class="comment">// cellStateOutTensor</span></div><div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>  ValidateTensorNumDimNumElem(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#a67b178f8a836bc1e52b8de109760adfd">m_OutputTensorInfos</a>[2], 2, (n_batch * n_cell),</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>  descriptorName + <span class="stringliteral">" output_2"</span>);</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>  <span class="comment">// outputTensor</span></div><div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>  ValidateTensorNumDimNumElem(workloadInfo.<a class="code" href="structarmnn_1_1_workload_info.xhtml#a67b178f8a836bc1e52b8de109760adfd">m_OutputTensorInfos</a>[3], 2, (n_batch * n_output),</div><div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>  descriptorName + <span class="stringliteral">" output_3"</span>);</div><div class="line"><a name="l01836"></a><span class="lineno"> 1836</span> </div><div class="line"><a name="l01837"></a><span class="lineno"> 1837</span> </div><div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>  <span class="comment">// check that dimensions of inputs/outputs and QueueDescriptor data match with each other</span></div><div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>  <span class="keywordflow">if</span> ( <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a08a1932be591c315a512a877d38b22df">m_InputToInputWeights</a> )</div><div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>  {</div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a08a1932be591c315a512a877d38b22df">m_InputToInputWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 2,</div><div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>  (n_cell * n_input), <span class="stringliteral">"InputLayerNormWeights"</span>);</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>  }</div><div class="line"><a name="l01844"></a><span class="lineno"> 1844</span> </div><div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a3ea82566d98c5a657c76c3d851c47848">m_InputToForgetWeights</a>, <span class="stringliteral">"Null pointer check"</span>, <span class="stringliteral">"InputToForgetWeights"</span>);</div><div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a3ea82566d98c5a657c76c3d851c47848">m_InputToForgetWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 2,</div><div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>  (n_cell * n_input), <span class="stringliteral">"InputToForgetWeights"</span>);</div><div class="line"><a name="l01848"></a><span class="lineno"> 1848</span> </div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a28ad98d17603fd8b12e046f8ece58970">m_InputToCellWeights</a>, <span class="stringliteral">"Null pointer check"</span>, <span class="stringliteral">"InputToCellWeights"</span>);</div><div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a28ad98d17603fd8b12e046f8ece58970">m_InputToCellWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 2,</div><div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>  (n_cell * n_input), <span class="stringliteral">"InputToCellWeights"</span>);</div><div class="line"><a name="l01852"></a><span class="lineno"> 1852</span> </div><div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>  <span class="keywordflow">if</span> ( <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a98d377149071d8842d610cc0734d1cfe">m_RecurrentToInputWeights</a> )</div><div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>  {</div><div class="line"><a name="l01855"></a><span class="lineno"> 1855</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a98d377149071d8842d610cc0734d1cfe">m_RecurrentToInputWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 2,</div><div class="line"><a name="l01856"></a><span class="lineno"> 1856</span>  (n_cell * n_output), <span class="stringliteral">"RecurrentToInputWeights"</span>);</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>  }</div><div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> </div><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a45d73e66cbb2b65049e4016c20657ccf">m_RecurrentToForgetWeights</a>, <span class="stringliteral">"Null pointer check"</span>, <span class="stringliteral">"RecurrentToForgetWeights"</span>);</div><div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a45d73e66cbb2b65049e4016c20657ccf">m_RecurrentToForgetWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 2,</div><div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>  (n_cell * n_output), <span class="stringliteral">"RecurrentToForgetWeights"</span>);</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> </div><div class="line"><a name="l01863"></a><span class="lineno"> 1863</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aea142bd50ffb93631c2e08324ec92a1e">m_RecurrentToCellWeights</a>, <span class="stringliteral">"Null pointer check"</span>, <span class="stringliteral">"RecurrentToCellWeights"</span>);</div><div class="line"><a name="l01864"></a><span class="lineno"> 1864</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aea142bd50ffb93631c2e08324ec92a1e">m_RecurrentToCellWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 2,</div><div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>  (n_cell * n_output), <span class="stringliteral">"RecurrentToCellWeights"</span>);</div><div class="line"><a name="l01866"></a><span class="lineno"> 1866</span> </div><div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>  <span class="comment">// Make sure the input-gate's parameters are either both present (regular</span></div><div class="line"><a name="l01868"></a><span class="lineno"> 1868</span>  <span class="comment">// LSTM) or not at all (CIFG-LSTM). And CifgEnable is set accordingly.</span></div><div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>  <span class="keywordtype">bool</span> cifg_weights_all_or_none = ((<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a08a1932be591c315a512a877d38b22df">m_InputToInputWeights</a> && <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a98d377149071d8842d610cc0734d1cfe">m_RecurrentToInputWeights</a> &&</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>  !<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">m_CifgEnabled</a>) ||</div><div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>  (!<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a08a1932be591c315a512a877d38b22df">m_InputToInputWeights</a> && !<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a98d377149071d8842d610cc0734d1cfe">m_RecurrentToInputWeights</a> &&</div><div class="line"><a name="l01872"></a><span class="lineno"> 1872</span>  <a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">m_CifgEnabled</a>));</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>  <span class="keywordflow">if</span> (!cifg_weights_all_or_none)</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>  {</div><div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": Input-Gate's parameters InputToInputWeights and "</span></div><div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>  <span class="stringliteral">"RecurrentToInputWeights must either both be present (regular LSTM) "</span></div><div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>  <span class="stringliteral">"or both not present (CIFG-LSTM). In addition CifgEnable must be set "</span></div><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>  <span class="stringliteral">"accordingly."</span>);</div><div class="line"><a name="l01879"></a><span class="lineno"> 1879</span>  }</div><div class="line"><a name="l01880"></a><span class="lineno"> 1880</span> </div><div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>  <span class="keywordflow">if</span> ( <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a5c1c0a7ead7273788976c9e97cffaab7">m_CellToInputWeights</a> )</div><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>  {</div><div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a5c1c0a7ead7273788976c9e97cffaab7">m_CellToInputWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1,</div><div class="line"><a name="l01884"></a><span class="lineno"> 1884</span>  n_cell, <span class="stringliteral">"CellToInputWeights"</span>);</div><div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>  }</div><div class="line"><a name="l01886"></a><span class="lineno"> 1886</span>  <span class="keywordflow">if</span> ( <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acefa49d7faf26933e27e473e7bdb4175">m_CellToForgetWeights</a> )</div><div class="line"><a name="l01887"></a><span class="lineno"> 1887</span>  {</div><div class="line"><a name="l01888"></a><span class="lineno"> 1888</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acefa49d7faf26933e27e473e7bdb4175">m_CellToForgetWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1,</div><div class="line"><a name="l01889"></a><span class="lineno"> 1889</span>  n_cell, <span class="stringliteral">"CellToForgetWeights"</span>);</div><div class="line"><a name="l01890"></a><span class="lineno"> 1890</span>  }</div><div class="line"><a name="l01891"></a><span class="lineno"> 1891</span>  <span class="keywordflow">if</span> ( <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a6f74071b0e07bbe2cb20a8f78826e084">m_CellToOutputWeights</a> )</div><div class="line"><a name="l01892"></a><span class="lineno"> 1892</span>  {</div><div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a6f74071b0e07bbe2cb20a8f78826e084">m_CellToOutputWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1,</div><div class="line"><a name="l01894"></a><span class="lineno"> 1894</span>  n_cell, <span class="stringliteral">"CellToOutputWeights"</span>);</div><div class="line"><a name="l01895"></a><span class="lineno"> 1895</span>  }</div><div class="line"><a name="l01896"></a><span class="lineno"> 1896</span> </div><div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>  <span class="comment">// Making sure the peephole weights are there all or none. And PeepholeEnable is set accordingly.</span></div><div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>  <span class="keywordtype">bool</span> peephole_weights_all_or_none =</div><div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>  (((<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a5c1c0a7ead7273788976c9e97cffaab7">m_CellToInputWeights</a> || <a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">m_CifgEnabled</a>) && <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acefa49d7faf26933e27e473e7bdb4175">m_CellToForgetWeights</a></div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>  && <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a6f74071b0e07bbe2cb20a8f78826e084">m_CellToOutputWeights</a> && <a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a2837b4396f20c956952d1a7286cab5f8">m_PeepholeEnabled</a>)</div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>  || ( !<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a5c1c0a7ead7273788976c9e97cffaab7">m_CellToInputWeights</a> && !<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acefa49d7faf26933e27e473e7bdb4175">m_CellToForgetWeights</a></div><div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>  && !<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a6f74071b0e07bbe2cb20a8f78826e084">m_CellToOutputWeights</a> && !<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a2837b4396f20c956952d1a7286cab5f8">m_PeepholeEnabled</a>));</div><div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>  <span class="keywordflow">if</span> (!peephole_weights_all_or_none)</div><div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>  {</div><div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": Invalid combination of peephole parameters."</span>);</div><div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>  }</div><div class="line"><a name="l01907"></a><span class="lineno"> 1907</span> </div><div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>  <span class="comment">// Make sure the input gate bias is present only when not a CIFG-LSTM.</span></div><div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">m_CifgEnabled</a>)</div><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>  {</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acb3aade8fae984f7293e222dcbe66030">m_InputGateBias</a>)</div><div class="line"><a name="l01912"></a><span class="lineno"> 1912</span>  {</div><div class="line"><a name="l01913"></a><span class="lineno"> 1913</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": InputGateBias is present and CIFG-LSTM is enabled."</span>);</div><div class="line"><a name="l01914"></a><span class="lineno"> 1914</span>  }</div><div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>  }</div><div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l01917"></a><span class="lineno"> 1917</span>  {</div><div class="line"><a name="l01918"></a><span class="lineno"> 1918</span>  <span class="keywordflow">if</span> (!<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acb3aade8fae984f7293e222dcbe66030">m_InputGateBias</a>)</div><div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>  {</div><div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": If CIFG-LSTM is disabled InputGateBias "</span></div><div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>  <span class="stringliteral">"must be present."</span>);</div><div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>  }</div><div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acb3aade8fae984f7293e222dcbe66030">m_InputGateBias</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1,</div><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>  n_cell, <span class="stringliteral">"InputGateBias"</span>);</div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>  }</div><div class="line"><a name="l01926"></a><span class="lineno"> 1926</span> </div><div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aba3ffe91d818266b8785ce971548eb59">m_ForgetGateBias</a>, <span class="stringliteral">"Null pointer check"</span>, <span class="stringliteral">"ForgetGateBias"</span>);</div><div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aba3ffe91d818266b8785ce971548eb59">m_ForgetGateBias</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"ForgetGateBias"</span>);</div><div class="line"><a name="l01929"></a><span class="lineno"> 1929</span> </div><div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a75980b5795efd899a0c678a06a900c6d">m_CellBias</a>, <span class="stringliteral">"Null pointer check"</span>, <span class="stringliteral">"CellBias"</span>);</div><div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a75980b5795efd899a0c678a06a900c6d">m_CellBias</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"CellBias"</span>);</div><div class="line"><a name="l01932"></a><span class="lineno"> 1932</span> </div><div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a332551528a4b3534c2d6c89ce816fcd9">m_OutputGateBias</a>, <span class="stringliteral">"Null pointer check"</span>, <span class="stringliteral">"OutputGateBias"</span>);</div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a332551528a4b3534c2d6c89ce816fcd9">m_OutputGateBias</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"OutputGateBias"</span>);</div><div class="line"><a name="l01935"></a><span class="lineno"> 1935</span> </div><div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#af3c52626a6f05597d82ed095d0765962">m_ProjectionWeights</a>)</div><div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>  {</div><div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#af3c52626a6f05597d82ed095d0765962">m_ProjectionWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 2,</div><div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>  (n_cell * n_output), <span class="stringliteral">"ProjectionWeights"</span>);</div><div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>  }</div><div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">m_ProjectionBias</a>)</div><div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>  {</div><div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">m_ProjectionBias</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_output, <span class="stringliteral">"ProjectionBias"</span>);</div><div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>  }</div><div class="line"><a name="l01945"></a><span class="lineno"> 1945</span> </div><div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>  <span class="comment">// Making sure the projection tensors are consistent:</span></div><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>  <span class="comment">// 1) If projection weight is not present, then projection bias should not be</span></div><div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>  <span class="comment">// present.</span></div><div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>  <span class="comment">// 2) If projection weight is present, then projection bias is optional.</span></div><div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>  <span class="keywordtype">bool</span> projecton_tensors_consistent = ((!<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#af3c52626a6f05597d82ed095d0765962">m_ProjectionWeights</a> && !<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">m_ProjectionBias</a> &&</div><div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>  !<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">m_ProjectionEnabled</a>)</div><div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>  || (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#af3c52626a6f05597d82ed095d0765962">m_ProjectionWeights</a> && !<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">m_ProjectionBias</a> &&</div><div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>  <a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">m_ProjectionEnabled</a>)</div><div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>  || (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#af3c52626a6f05597d82ed095d0765962">m_ProjectionWeights</a> && <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">m_ProjectionBias</a> &&</div><div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>  <a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">m_ProjectionEnabled</a>));</div><div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>  <span class="keywordflow">if</span> (!projecton_tensors_consistent)</div><div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>  {</div><div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": Projection tensors are inconsistent."</span>);</div><div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>  }</div><div class="line"><a name="l01960"></a><span class="lineno"> 1960</span> </div><div class="line"><a name="l01961"></a><span class="lineno"> 1961</span>  <span class="comment">// The four layer normalization weights either all have values or none of them have values. Additionally, if</span></div><div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>  <span class="comment">// CIFG is used, input layer normalization weights tensor is omitted and the other layer normalization weights</span></div><div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>  <span class="comment">// either all have values or none of them have values. Layer normalization is used when the values of all the</span></div><div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>  <span class="comment">// layer normalization weights are present</span></div><div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">m_InputLayerNormWeights</a>)</div><div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>  {</div><div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">m_InputLayerNormWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"InputLayerNormWeights"</span>);</div><div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>  }</div><div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a453a4af385d0c060c9aac990fceaa1ef">m_ForgetLayerNormWeights</a>)</div><div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>  {</div><div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a453a4af385d0c060c9aac990fceaa1ef">m_ForgetLayerNormWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"ForgetLayerNormWeights"</span>);</div><div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>  }</div><div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a518f0195d0278a892b49649b8860d17f">m_CellLayerNormWeights</a>)</div><div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>  {</div><div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a518f0195d0278a892b49649b8860d17f">m_CellLayerNormWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"CellLayerNormWeights"</span>);</div><div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>  }</div><div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aa3f07e27230d6d99adc2c82ba681df2b">m_OutputLayerNormWeights</a>)</div><div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>  {</div><div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aa3f07e27230d6d99adc2c82ba681df2b">m_OutputLayerNormWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"OutputLayerNormWeights"</span>);</div><div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>  }</div><div class="line"><a name="l01981"></a><span class="lineno"> 1981</span> </div><div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>  <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a4a8ec49f130084445d44297549254780">m_LayerNormEnabled</a>)</div><div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>  {</div><div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>  <span class="keywordflow">if</span> (!<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">m_CifgEnabled</a>)</div><div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>  {</div><div class="line"><a name="l01986"></a><span class="lineno"> 1986</span>  <span class="keywordflow">if</span> (!<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">m_InputLayerNormWeights</a>)</div><div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>  {</div><div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": Layer normalisation is enabled and CIFG-LSTM is "</span></div><div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>  <span class="stringliteral">"disabled but InputLayerNormWeights are not present"</span>);</div><div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>  }</div><div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">m_InputLayerNormWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(),</div><div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>  1, n_cell, <span class="stringliteral">"InputLayerNormWeights"</span>);</div><div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>  }</div><div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">m_InputLayerNormWeights</a>)</div><div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>  {</div><div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">":InputLayerNormWeights are present while CIFG is "</span></div><div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>  <span class="stringliteral">"enabled"</span>);</div><div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>  }</div><div class="line"><a name="l01999"></a><span class="lineno"> 1999</span> </div><div class="line"><a name="l02000"></a><span class="lineno"> 2000</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a453a4af385d0c060c9aac990fceaa1ef">m_ForgetLayerNormWeights</a>, <span class="stringliteral">"Null pointer check layer normalisation enabled"</span>,</div><div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>  <span class="stringliteral">"ForgetLayerNormWeights"</span>);</div><div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a453a4af385d0c060c9aac990fceaa1ef">m_ForgetLayerNormWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"ForgetLayerNormWeights"</span>);</div><div class="line"><a name="l02003"></a><span class="lineno"> 2003</span> </div><div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aa3f07e27230d6d99adc2c82ba681df2b">m_OutputLayerNormWeights</a>, <span class="stringliteral">"Null pointer check layer normalisation enabled"</span>,</div><div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>  <span class="stringliteral">"OutputLayerNormWeights"</span>);</div><div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aa3f07e27230d6d99adc2c82ba681df2b">m_OutputLayerNormWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"OutputLayerNormWeights"</span>);</div><div class="line"><a name="l02007"></a><span class="lineno"> 2007</span> </div><div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>  ValidatePointer(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a518f0195d0278a892b49649b8860d17f">m_CellLayerNormWeights</a>, <span class="stringliteral">"Null pointer check layer normalisation enabled"</span>,</div><div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>  <span class="stringliteral">"CellLayerNormWeights"</span>);</div><div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>  ValidateTensorNumDimNumElem(<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a518f0195d0278a892b49649b8860d17f">m_CellLayerNormWeights</a>-><a class="code" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">GetTensorInfo</a>(), 1, n_cell, <span class="stringliteral">"CellLayerNormWeights"</span>);</div><div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>  }</div><div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">m_InputLayerNormWeights</a> || <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a453a4af385d0c060c9aac990fceaa1ef">m_ForgetLayerNormWeights</a> || <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aa3f07e27230d6d99adc2c82ba681df2b">m_OutputLayerNormWeights</a> || <a class="code" href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a518f0195d0278a892b49649b8860d17f">m_CellLayerNormWeights</a>)</div><div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>  {</div><div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>  <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(descriptorName + <span class="stringliteral">": Layer normalisation is disabled but one or more layer "</span></div><div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>  <span class="stringliteral">"normalisation weights are present."</span>);</div><div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>  }</div><div class="line"><a name="l02017"></a><span class="lineno"> 2017</span> }</div><div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a6c9de81fc65b3c4924cab11907075a17"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">armnn::LstmDescriptor::m_ProjectionEnabled</a></div><div class="ttdeci">bool m_ProjectionEnabled</div><div class="ttdoc">Enable/disable the projection layer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00871">Descriptors.hpp:871</a></div></div> |
| 275 | <div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a86e88bef0df4df96df752b4b8955a3af"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a86e88bef0df4df96df752b4b8955a3af">armnn::LstmDescriptor::m_ClippingThresProj</a></div><div class="ttdeci">float m_ClippingThresProj</div><div class="ttdoc">Clipping threshold value for the projection. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00865">Descriptors.hpp:865</a></div></div> |
| 276 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a45d73e66cbb2b65049e4016c20657ccf"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a45d73e66cbb2b65049e4016c20657ccf">armnn::LstmQueueDescriptor::m_RecurrentToForgetWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_RecurrentToForgetWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00390">WorkloadData.hpp:390</a></div></div> |
| 277 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a6f74071b0e07bbe2cb20a8f78826e084"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a6f74071b0e07bbe2cb20a8f78826e084">armnn::LstmQueueDescriptor::m_CellToOutputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellToOutputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00395">WorkloadData.hpp:395</a></div></div> |
| 278 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a28ad98d17603fd8b12e046f8ece58970"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a28ad98d17603fd8b12e046f8ece58970">armnn::LstmQueueDescriptor::m_InputToCellWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputToCellWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00387">WorkloadData.hpp:387</a></div></div> |
| 279 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a83dc9086b2e4a4e4cadb66bd874df798"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a83dc9086b2e4a4e4cadb66bd874df798">armnn::LstmQueueDescriptor::m_InputToOutputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputToOutputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00388">WorkloadData.hpp:388</a></div></div> |
| 280 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a2ba352eb1fdf6dc5ecf7f2e6b6b48f94"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">armnn::LstmQueueDescriptor::m_ProjectionBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_ProjectionBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00401">WorkloadData.hpp:401</a></div></div> |
| 281 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a332551528a4b3534c2d6c89ce816fcd9"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a332551528a4b3534c2d6c89ce816fcd9">armnn::LstmQueueDescriptor::m_OutputGateBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_OutputGateBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00399">WorkloadData.hpp:399</a></div></div> |
| 282 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a5c1c0a7ead7273788976c9e97cffaab7"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a5c1c0a7ead7273788976c9e97cffaab7">armnn::LstmQueueDescriptor::m_CellToInputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellToInputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00393">WorkloadData.hpp:393</a></div></div> |
| 283 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a518f0195d0278a892b49649b8860d17f"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a518f0195d0278a892b49649b8860d17f">armnn::LstmQueueDescriptor::m_CellLayerNormWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellLayerNormWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00404">WorkloadData.hpp:404</a></div></div> |
| 284 | <div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a053c769dcf82d66ef326c86980c02ba7"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a053c769dcf82d66ef326c86980c02ba7">armnn::DataType::QSymmS16</a></div></div> |
| 285 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_acefa49d7faf26933e27e473e7bdb4175"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acefa49d7faf26933e27e473e7bdb4175">armnn::LstmQueueDescriptor::m_CellToForgetWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellToForgetWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00394">WorkloadData.hpp:394</a></div></div> |
| 286 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a75980b5795efd899a0c678a06a900c6d"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a75980b5795efd899a0c678a06a900c6d">armnn::LstmQueueDescriptor::m_CellBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_CellBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00398">WorkloadData.hpp:398</a></div></div> |
| 287 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a98d377149071d8842d610cc0734d1cfe"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a98d377149071d8842d610cc0734d1cfe">armnn::LstmQueueDescriptor::m_RecurrentToInputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_RecurrentToInputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00389">WorkloadData.hpp:389</a></div></div> |
| 288 | <div class="ttc" id="structarmnn_1_1_queue_descriptor_with_parameters_xhtml_aad91b9bbf7aa365d304febe79a3d1333"><div class="ttname"><a href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">armnn::QueueDescriptorWithParameters< LstmDescriptor >::m_Parameters</a></div><div class="ttdeci">LstmDescriptor m_Parameters</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00049">WorkloadData.hpp:49</a></div></div> |
| 289 | <div class="ttc" id="structarmnn_1_1_workload_info_xhtml_ac97905bfa0daab357b91df1347600309"><div class="ttname"><a href="structarmnn_1_1_workload_info.xhtml#ac97905bfa0daab357b91df1347600309">armnn::WorkloadInfo::m_InputTensorInfos</a></div><div class="ttdeci">std::vector< TensorInfo > m_InputTensorInfos</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_2backends_2_workload_info_8hpp_source.xhtml#l00018">WorkloadInfo.hpp:18</a></div></div> |
| 290 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a9cc28aa4fff6ba9a8abdb340c1abdd57"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a9cc28aa4fff6ba9a8abdb340c1abdd57">armnn::LstmQueueDescriptor::m_InputLayerNormWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputLayerNormWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00402">WorkloadData.hpp:402</a></div></div> |
| 291 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_aa3f07e27230d6d99adc2c82ba681df2b"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aa3f07e27230d6d99adc2c82ba681df2b">armnn::LstmQueueDescriptor::m_OutputLayerNormWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_OutputLayerNormWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00405">WorkloadData.hpp:405</a></div></div> |
| 292 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_aba3ffe91d818266b8785ce971548eb59"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aba3ffe91d818266b8785ce971548eb59">armnn::LstmQueueDescriptor::m_ForgetGateBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_ForgetGateBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00397">WorkloadData.hpp:397</a></div></div> |
| 293 | <div class="ttc" id="classarmnn_1_1_const_cpu_tensor_handle_xhtml_a8e8d2fbabcac19f9e12779080ddff54e"><div class="ttname"><a href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a8e8d2fbabcac19f9e12779080ddff54e">armnn::ConstCpuTensorHandle::GetShape</a></div><div class="ttdeci">TensorShape GetShape() const override</div><div class="ttdoc">Get the number of elements for each dimension ordered from slowest iterating dimension to fastest ite...</div><div class="ttdef"><b>Definition:</b> <a href="_cpu_tensor_handle_8hpp_source.xhtml#l00053">CpuTensorHandle.hpp:53</a></div></div> |
| 294 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a08a1932be591c315a512a877d38b22df"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a08a1932be591c315a512a877d38b22df">armnn::LstmQueueDescriptor::m_InputToInputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputToInputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00385">WorkloadData.hpp:385</a></div></div> |
| 295 | <div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a26e6ed77470c6f2f830ecf874e6c0d55"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a26e6ed77470c6f2f830ecf874e6c0d55">armnn::DataType::Float16</a></div></div> |
| 296 | <div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a2837b4396f20c956952d1a7286cab5f8"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a2837b4396f20c956952d1a7286cab5f8">armnn::LstmDescriptor::m_PeepholeEnabled</a></div><div class="ttdeci">bool m_PeepholeEnabled</div><div class="ttdoc">Enable/disable peephole. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00869">Descriptors.hpp:869</a></div></div> |
| 297 | <div class="ttc" id="structarmnn_1_1_workload_info_xhtml_a67b178f8a836bc1e52b8de109760adfd"><div class="ttname"><a href="structarmnn_1_1_workload_info.xhtml#a67b178f8a836bc1e52b8de109760adfd">armnn::WorkloadInfo::m_OutputTensorInfos</a></div><div class="ttdeci">std::vector< TensorInfo > m_OutputTensorInfos</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_2backends_2_workload_info_8hpp_source.xhtml#l00019">WorkloadInfo.hpp:19</a></div></div> |
| 298 | <div class="ttc" id="classarmnn_1_1_invalid_argument_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_invalid_argument_exception.xhtml">armnn::InvalidArgumentException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00080">Exceptions.hpp:80</a></div></div> |
| 299 | <div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6acdb56b2d2f73c26480207524f2dbe0af"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6acdb56b2d2f73c26480207524f2dbe0af">armnn::DataType::BFloat16</a></div></div> |
| 300 | <div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a531a3907ec13d3772370da88030191a5"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a531a3907ec13d3772370da88030191a5">armnn::LstmDescriptor::m_ClippingThresCell</a></div><div class="ttdeci">float m_ClippingThresCell</div><div class="ttdoc">Clipping threshold value for the cell state. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00863">Descriptors.hpp:863</a></div></div> |
| 301 | <div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_ad474e5c51a0b194ef32e812b86c0cbdb"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">armnn::LstmDescriptor::m_CifgEnabled</a></div><div class="ttdeci">bool m_CifgEnabled</div><div class="ttdoc">Enable/disable cifg (coupled input & forget gate). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00867">Descriptors.hpp:867</a></div></div> |
| 302 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_adebc1771e5a1f4b113a7aa594ea74d2c"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#adebc1771e5a1f4b113a7aa594ea74d2c">armnn::LstmQueueDescriptor::m_RecurrentToOutputWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_RecurrentToOutputWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00392">WorkloadData.hpp:392</a></div></div> |
| 303 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a453a4af385d0c060c9aac990fceaa1ef"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a453a4af385d0c060c9aac990fceaa1ef">armnn::LstmQueueDescriptor::m_ForgetLayerNormWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_ForgetLayerNormWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00403">WorkloadData.hpp:403</a></div></div> |
| 304 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_acb3aade8fae984f7293e222dcbe66030"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#acb3aade8fae984f7293e222dcbe66030">armnn::LstmQueueDescriptor::m_InputGateBias</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputGateBias</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00396">WorkloadData.hpp:396</a></div></div> |
| 305 | <div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a4a8ec49f130084445d44297549254780"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a4a8ec49f130084445d44297549254780">armnn::LstmDescriptor::m_LayerNormEnabled</a></div><div class="ttdeci">bool m_LayerNormEnabled</div><div class="ttdoc">Enable/disable layer normalization. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00873">Descriptors.hpp:873</a></div></div> |
| 306 | <div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a></div></div> |
| 307 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_aea142bd50ffb93631c2e08324ec92a1e"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#aea142bd50ffb93631c2e08324ec92a1e">armnn::LstmQueueDescriptor::m_RecurrentToCellWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_RecurrentToCellWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00391">WorkloadData.hpp:391</a></div></div> |
| 308 | <div class="ttc" id="classarmnn_1_1_const_cpu_tensor_handle_xhtml_a66e8f43a5b42b500871ed96e15419567"><div class="ttname"><a href="classarmnn_1_1_const_cpu_tensor_handle.xhtml#a66e8f43a5b42b500871ed96e15419567">armnn::ConstCpuTensorHandle::GetTensorInfo</a></div><div class="ttdeci">const TensorInfo & GetTensorInfo() const</div><div class="ttdef"><b>Definition:</b> <a href="_cpu_tensor_handle_8hpp_source.xhtml#l00037">CpuTensorHandle.hpp:37</a></div></div> |
| 309 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_af3c52626a6f05597d82ed095d0765962"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#af3c52626a6f05597d82ed095d0765962">armnn::LstmQueueDescriptor::m_ProjectionWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_ProjectionWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00400">WorkloadData.hpp:400</a></div></div> |
| 310 | <div class="ttc" id="structarmnn_1_1_lstm_queue_descriptor_xhtml_a3ea82566d98c5a657c76c3d851c47848"><div class="ttname"><a href="structarmnn_1_1_lstm_queue_descriptor.xhtml#a3ea82566d98c5a657c76c3d851c47848">armnn::LstmQueueDescriptor::m_InputToForgetWeights</a></div><div class="ttdeci">const ConstCpuTensorHandle * m_InputToForgetWeights</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00386">WorkloadData.hpp:386</a></div></div> |
| 311 | </div><!-- fragment --> |
| 312 | </div> |
| 313 | </div> |
| 314 | <h2 class="groupheader">Member Data Documentation</h2> |
| 315 | <a id="a75980b5795efd899a0c678a06a900c6d"></a> |
| 316 | <h2 class="memtitle"><span class="permalink"><a href="#a75980b5795efd899a0c678a06a900c6d">◆ </a></span>m_CellBias</h2> |
| 317 | |
| 318 | <div class="memitem"> |
| 319 | <div class="memproto"> |
| 320 | <table class="memname"> |
| 321 | <tr> |
| 322 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_CellBias</td> |
| 323 | </tr> |
| 324 | </table> |
| 325 | </div><div class="memdoc"> |
| 326 | |
| 327 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00398">398</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 328 | |
| 329 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 330 | |
| 331 | </div> |
| 332 | </div> |
| 333 | <a id="a518f0195d0278a892b49649b8860d17f"></a> |
| 334 | <h2 class="memtitle"><span class="permalink"><a href="#a518f0195d0278a892b49649b8860d17f">◆ </a></span>m_CellLayerNormWeights</h2> |
| 335 | |
| 336 | <div class="memitem"> |
| 337 | <div class="memproto"> |
| 338 | <table class="memname"> |
| 339 | <tr> |
| 340 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_CellLayerNormWeights</td> |
| 341 | </tr> |
| 342 | </table> |
| 343 | </div><div class="memdoc"> |
| 344 | |
| 345 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00404">404</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 346 | |
| 347 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 348 | |
| 349 | </div> |
| 350 | </div> |
| 351 | <a id="acefa49d7faf26933e27e473e7bdb4175"></a> |
| 352 | <h2 class="memtitle"><span class="permalink"><a href="#acefa49d7faf26933e27e473e7bdb4175">◆ </a></span>m_CellToForgetWeights</h2> |
| 353 | |
| 354 | <div class="memitem"> |
| 355 | <div class="memproto"> |
| 356 | <table class="memname"> |
| 357 | <tr> |
| 358 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_CellToForgetWeights</td> |
| 359 | </tr> |
| 360 | </table> |
| 361 | </div><div class="memdoc"> |
| 362 | |
| 363 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00394">394</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 364 | |
| 365 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 366 | |
| 367 | </div> |
| 368 | </div> |
| 369 | <a id="a5c1c0a7ead7273788976c9e97cffaab7"></a> |
| 370 | <h2 class="memtitle"><span class="permalink"><a href="#a5c1c0a7ead7273788976c9e97cffaab7">◆ </a></span>m_CellToInputWeights</h2> |
| 371 | |
| 372 | <div class="memitem"> |
| 373 | <div class="memproto"> |
| 374 | <table class="memname"> |
| 375 | <tr> |
| 376 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_CellToInputWeights</td> |
| 377 | </tr> |
| 378 | </table> |
| 379 | </div><div class="memdoc"> |
| 380 | |
| 381 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00393">393</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 382 | |
| 383 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 384 | |
| 385 | </div> |
| 386 | </div> |
| 387 | <a id="a6f74071b0e07bbe2cb20a8f78826e084"></a> |
| 388 | <h2 class="memtitle"><span class="permalink"><a href="#a6f74071b0e07bbe2cb20a8f78826e084">◆ </a></span>m_CellToOutputWeights</h2> |
| 389 | |
| 390 | <div class="memitem"> |
| 391 | <div class="memproto"> |
| 392 | <table class="memname"> |
| 393 | <tr> |
| 394 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_CellToOutputWeights</td> |
| 395 | </tr> |
| 396 | </table> |
| 397 | </div><div class="memdoc"> |
| 398 | |
| 399 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00395">395</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 400 | |
| 401 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 402 | |
| 403 | </div> |
| 404 | </div> |
| 405 | <a id="aba3ffe91d818266b8785ce971548eb59"></a> |
| 406 | <h2 class="memtitle"><span class="permalink"><a href="#aba3ffe91d818266b8785ce971548eb59">◆ </a></span>m_ForgetGateBias</h2> |
| 407 | |
| 408 | <div class="memitem"> |
| 409 | <div class="memproto"> |
| 410 | <table class="memname"> |
| 411 | <tr> |
| 412 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_ForgetGateBias</td> |
| 413 | </tr> |
| 414 | </table> |
| 415 | </div><div class="memdoc"> |
| 416 | |
| 417 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00397">397</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 418 | |
| 419 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 420 | |
| 421 | </div> |
| 422 | </div> |
| 423 | <a id="a453a4af385d0c060c9aac990fceaa1ef"></a> |
| 424 | <h2 class="memtitle"><span class="permalink"><a href="#a453a4af385d0c060c9aac990fceaa1ef">◆ </a></span>m_ForgetLayerNormWeights</h2> |
| 425 | |
| 426 | <div class="memitem"> |
| 427 | <div class="memproto"> |
| 428 | <table class="memname"> |
| 429 | <tr> |
| 430 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_ForgetLayerNormWeights</td> |
| 431 | </tr> |
| 432 | </table> |
| 433 | </div><div class="memdoc"> |
| 434 | |
| 435 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00403">403</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 436 | |
| 437 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 438 | |
| 439 | </div> |
| 440 | </div> |
| 441 | <a id="acb3aade8fae984f7293e222dcbe66030"></a> |
| 442 | <h2 class="memtitle"><span class="permalink"><a href="#acb3aade8fae984f7293e222dcbe66030">◆ </a></span>m_InputGateBias</h2> |
| 443 | |
| 444 | <div class="memitem"> |
| 445 | <div class="memproto"> |
| 446 | <table class="memname"> |
| 447 | <tr> |
| 448 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_InputGateBias</td> |
| 449 | </tr> |
| 450 | </table> |
| 451 | </div><div class="memdoc"> |
| 452 | |
| 453 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00396">396</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 454 | |
| 455 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 456 | |
| 457 | </div> |
| 458 | </div> |
| 459 | <a id="a9cc28aa4fff6ba9a8abdb340c1abdd57"></a> |
| 460 | <h2 class="memtitle"><span class="permalink"><a href="#a9cc28aa4fff6ba9a8abdb340c1abdd57">◆ </a></span>m_InputLayerNormWeights</h2> |
| 461 | |
| 462 | <div class="memitem"> |
| 463 | <div class="memproto"> |
| 464 | <table class="memname"> |
| 465 | <tr> |
| 466 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_InputLayerNormWeights</td> |
| 467 | </tr> |
| 468 | </table> |
| 469 | </div><div class="memdoc"> |
| 470 | |
| 471 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00402">402</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 472 | |
| 473 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 474 | |
| 475 | </div> |
| 476 | </div> |
| 477 | <a id="a28ad98d17603fd8b12e046f8ece58970"></a> |
| 478 | <h2 class="memtitle"><span class="permalink"><a href="#a28ad98d17603fd8b12e046f8ece58970">◆ </a></span>m_InputToCellWeights</h2> |
| 479 | |
| 480 | <div class="memitem"> |
| 481 | <div class="memproto"> |
| 482 | <table class="memname"> |
| 483 | <tr> |
| 484 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_InputToCellWeights</td> |
| 485 | </tr> |
| 486 | </table> |
| 487 | </div><div class="memdoc"> |
| 488 | |
| 489 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00387">387</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 490 | |
| 491 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 492 | |
| 493 | </div> |
| 494 | </div> |
| 495 | <a id="a3ea82566d98c5a657c76c3d851c47848"></a> |
| 496 | <h2 class="memtitle"><span class="permalink"><a href="#a3ea82566d98c5a657c76c3d851c47848">◆ </a></span>m_InputToForgetWeights</h2> |
| 497 | |
| 498 | <div class="memitem"> |
| 499 | <div class="memproto"> |
| 500 | <table class="memname"> |
| 501 | <tr> |
| 502 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_InputToForgetWeights</td> |
| 503 | </tr> |
| 504 | </table> |
| 505 | </div><div class="memdoc"> |
| 506 | |
| 507 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00386">386</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 508 | |
| 509 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 510 | |
| 511 | </div> |
| 512 | </div> |
| 513 | <a id="a08a1932be591c315a512a877d38b22df"></a> |
| 514 | <h2 class="memtitle"><span class="permalink"><a href="#a08a1932be591c315a512a877d38b22df">◆ </a></span>m_InputToInputWeights</h2> |
| 515 | |
| 516 | <div class="memitem"> |
| 517 | <div class="memproto"> |
| 518 | <table class="memname"> |
| 519 | <tr> |
| 520 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_InputToInputWeights</td> |
| 521 | </tr> |
| 522 | </table> |
| 523 | </div><div class="memdoc"> |
| 524 | |
| 525 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00385">385</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 526 | |
| 527 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 528 | |
| 529 | </div> |
| 530 | </div> |
| 531 | <a id="a83dc9086b2e4a4e4cadb66bd874df798"></a> |
| 532 | <h2 class="memtitle"><span class="permalink"><a href="#a83dc9086b2e4a4e4cadb66bd874df798">◆ </a></span>m_InputToOutputWeights</h2> |
| 533 | |
| 534 | <div class="memitem"> |
| 535 | <div class="memproto"> |
| 536 | <table class="memname"> |
| 537 | <tr> |
| 538 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_InputToOutputWeights</td> |
| 539 | </tr> |
| 540 | </table> |
| 541 | </div><div class="memdoc"> |
| 542 | |
| 543 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00388">388</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 544 | |
| 545 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 546 | |
| 547 | </div> |
| 548 | </div> |
| 549 | <a id="a332551528a4b3534c2d6c89ce816fcd9"></a> |
| 550 | <h2 class="memtitle"><span class="permalink"><a href="#a332551528a4b3534c2d6c89ce816fcd9">◆ </a></span>m_OutputGateBias</h2> |
| 551 | |
| 552 | <div class="memitem"> |
| 553 | <div class="memproto"> |
| 554 | <table class="memname"> |
| 555 | <tr> |
| 556 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_OutputGateBias</td> |
| 557 | </tr> |
| 558 | </table> |
| 559 | </div><div class="memdoc"> |
| 560 | |
| 561 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00399">399</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 562 | |
| 563 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 564 | |
| 565 | </div> |
| 566 | </div> |
| 567 | <a id="aa3f07e27230d6d99adc2c82ba681df2b"></a> |
| 568 | <h2 class="memtitle"><span class="permalink"><a href="#aa3f07e27230d6d99adc2c82ba681df2b">◆ </a></span>m_OutputLayerNormWeights</h2> |
| 569 | |
| 570 | <div class="memitem"> |
| 571 | <div class="memproto"> |
| 572 | <table class="memname"> |
| 573 | <tr> |
| 574 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_OutputLayerNormWeights</td> |
| 575 | </tr> |
| 576 | </table> |
| 577 | </div><div class="memdoc"> |
| 578 | |
| 579 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00405">405</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 580 | |
| 581 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 582 | |
| 583 | </div> |
| 584 | </div> |
| 585 | <a id="a2ba352eb1fdf6dc5ecf7f2e6b6b48f94"></a> |
| 586 | <h2 class="memtitle"><span class="permalink"><a href="#a2ba352eb1fdf6dc5ecf7f2e6b6b48f94">◆ </a></span>m_ProjectionBias</h2> |
| 587 | |
| 588 | <div class="memitem"> |
| 589 | <div class="memproto"> |
| 590 | <table class="memname"> |
| 591 | <tr> |
| 592 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_ProjectionBias</td> |
| 593 | </tr> |
| 594 | </table> |
| 595 | </div><div class="memdoc"> |
| 596 | |
| 597 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00401">401</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 598 | |
| 599 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 600 | |
| 601 | </div> |
| 602 | </div> |
| 603 | <a id="af3c52626a6f05597d82ed095d0765962"></a> |
| 604 | <h2 class="memtitle"><span class="permalink"><a href="#af3c52626a6f05597d82ed095d0765962">◆ </a></span>m_ProjectionWeights</h2> |
| 605 | |
| 606 | <div class="memitem"> |
| 607 | <div class="memproto"> |
| 608 | <table class="memname"> |
| 609 | <tr> |
| 610 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_ProjectionWeights</td> |
| 611 | </tr> |
| 612 | </table> |
| 613 | </div><div class="memdoc"> |
| 614 | |
| 615 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00400">400</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 616 | |
| 617 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 618 | |
| 619 | </div> |
| 620 | </div> |
| 621 | <a id="aea142bd50ffb93631c2e08324ec92a1e"></a> |
| 622 | <h2 class="memtitle"><span class="permalink"><a href="#aea142bd50ffb93631c2e08324ec92a1e">◆ </a></span>m_RecurrentToCellWeights</h2> |
| 623 | |
| 624 | <div class="memitem"> |
| 625 | <div class="memproto"> |
| 626 | <table class="memname"> |
| 627 | <tr> |
| 628 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_RecurrentToCellWeights</td> |
| 629 | </tr> |
| 630 | </table> |
| 631 | </div><div class="memdoc"> |
| 632 | |
| 633 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00391">391</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 634 | |
| 635 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 636 | |
| 637 | </div> |
| 638 | </div> |
| 639 | <a id="a45d73e66cbb2b65049e4016c20657ccf"></a> |
| 640 | <h2 class="memtitle"><span class="permalink"><a href="#a45d73e66cbb2b65049e4016c20657ccf">◆ </a></span>m_RecurrentToForgetWeights</h2> |
| 641 | |
| 642 | <div class="memitem"> |
| 643 | <div class="memproto"> |
| 644 | <table class="memname"> |
| 645 | <tr> |
| 646 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_RecurrentToForgetWeights</td> |
| 647 | </tr> |
| 648 | </table> |
| 649 | </div><div class="memdoc"> |
| 650 | |
| 651 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00390">390</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 652 | |
| 653 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 654 | |
| 655 | </div> |
| 656 | </div> |
| 657 | <a id="a98d377149071d8842d610cc0734d1cfe"></a> |
| 658 | <h2 class="memtitle"><span class="permalink"><a href="#a98d377149071d8842d610cc0734d1cfe">◆ </a></span>m_RecurrentToInputWeights</h2> |
| 659 | |
| 660 | <div class="memitem"> |
| 661 | <div class="memproto"> |
| 662 | <table class="memname"> |
| 663 | <tr> |
| 664 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_RecurrentToInputWeights</td> |
| 665 | </tr> |
| 666 | </table> |
| 667 | </div><div class="memdoc"> |
| 668 | |
| 669 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00389">389</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 670 | |
| 671 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 672 | |
| 673 | </div> |
| 674 | </div> |
| 675 | <a id="adebc1771e5a1f4b113a7aa594ea74d2c"></a> |
| 676 | <h2 class="memtitle"><span class="permalink"><a href="#adebc1771e5a1f4b113a7aa594ea74d2c">◆ </a></span>m_RecurrentToOutputWeights</h2> |
| 677 | |
| 678 | <div class="memitem"> |
| 679 | <div class="memproto"> |
| 680 | <table class="memname"> |
| 681 | <tr> |
| 682 | <td class="memname">const <a class="el" href="classarmnn_1_1_const_cpu_tensor_handle.xhtml">ConstCpuTensorHandle</a>* m_RecurrentToOutputWeights</td> |
| 683 | </tr> |
| 684 | </table> |
| 685 | </div><div class="memdoc"> |
| 686 | |
| 687 | <p class="definition">Definition at line <a class="el" href="_workload_data_8hpp_source.xhtml#l00392">392</a> of file <a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a>.</p> |
| 688 | |
| 689 | <p class="reference">Referenced by <a class="el" href="_lstm_layer_8cpp_source.xhtml#l00022">LstmLayer::CreateWorkload()</a>.</p> |
| 690 | |
| 691 | </div> |
| 692 | </div> |
| 693 | <hr/>The documentation for this struct was generated from the following files:<ul> |
| 694 | <li>src/backends/backendsCommon/<a class="el" href="_workload_data_8hpp_source.xhtml">WorkloadData.hpp</a></li> |
| 695 | <li>src/backends/backendsCommon/<a class="el" href="_workload_data_8cpp_source.xhtml">WorkloadData.cpp</a></li> |
| 696 | </ul> |
| 697 | </div><!-- contents --> |
| 698 | </div><!-- doc-content --> |
| 699 | <!-- start footer part --> |
| 700 | <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> |
| 701 | <ul> |
| 702 | <li class="navelem"><a class="el" href="namespacearmnn.xhtml">armnn</a></li><li class="navelem"><a class="el" href="structarmnn_1_1_lstm_queue_descriptor.xhtml">LstmQueueDescriptor</a></li> |
| 703 | <li class="footer">Generated on Fri Mar 13 2020 16:09:18 for ArmNN by |
| 704 | <a href="http://www.doxygen.org/index.html"> |
| 705 | <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li> |
| 706 | </ul> |
| 707 | </div> |
| 708 | </body> |
| 709 | </html> |