aboutsummaryrefslogtreecommitdiff
path: root/20.02/_l2_normalization_test_impl_8cpp.xhtml
diff options
context:
space:
mode:
Diffstat (limited to '20.02/_l2_normalization_test_impl_8cpp.xhtml')
-rw-r--r--20.02/_l2_normalization_test_impl_8cpp.xhtml716
1 files changed, 716 insertions, 0 deletions
diff --git a/20.02/_l2_normalization_test_impl_8cpp.xhtml b/20.02/_l2_normalization_test_impl_8cpp.xhtml
new file mode 100644
index 0000000000..749a1a28b7
--- /dev/null
+++ b/20.02/_l2_normalization_test_impl_8cpp.xhtml
@@ -0,0 +1,716 @@
+<!-- Copyright (c) 2020 ARM Limited. -->
+<!-- -->
+<!-- SPDX-License-Identifier: MIT -->
+<!-- -->
+<!-- HTML header for doxygen 1.8.13-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="robots" content="NOINDEX, NOFOLLOW" />
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>ArmNN: src/backends/backendsCommon/test/layerTests/L2NormalizationTestImpl.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/x-mathjax-config">
+ MathJax.Hub.Config({
+ extensions: ["tex2jax.js"],
+ jax: ["input/TeX","output/HTML-CSS"],
+});
+</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">
+ &#160;<span id="projectnumber">20.02</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_l2_normalization_test_impl_8cpp.xhtml','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">L2NormalizationTestImpl.cpp File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_l2_normalization_test_impl_8hpp_source.xhtml">L2NormalizationTestImpl.hpp</a>&quot;</code><br />
+<code>#include &lt;<a class="el" href="_quantize_helper_8hpp_source.xhtml">QuantizeHelper.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_resolve_type_8hpp_source.xhtml">ResolveType.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_tensor_utils_8hpp_source.xhtml">armnnUtils/TensorUtils.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_permute_8hpp_source.xhtml">armnnUtils/Permute.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_tensor_copy_utils_8hpp_source.xhtml">backendsCommon/test/TensorCopyUtils.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_workload_test_utils_8hpp_source.xhtml">backendsCommon/test/WorkloadTestUtils.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_tensor_helpers_8hpp_source.xhtml">test/TensorHelpers.hpp</a>&gt;</code><br />
+</div>
+<p><a href="_l2_normalization_test_impl_8cpp_source.xhtml">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a13c8cd6115422815348d57aef2ca032d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; float, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a13c8cd6115422815348d57aef2ca032d">L2NormalizationDefaultEpsilonTest</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a13c8cd6115422815348d57aef2ca032d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6ec1c0ad5b1b94d03c160c8122587cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; float, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#ae6ec1c0ad5b1b94d03c160c8122587cc">L2NormalizationNonDefaultEpsilonTest</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:ae6ec1c0ad5b1b94d03c160c8122587cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc9aa62ee9cdec8c43b5a43d931c632c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; float, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#abc9aa62ee9cdec8c43b5a43d931c632c">L2Normalization1dTest</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:abc9aa62ee9cdec8c43b5a43d931c632c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51324dd32b0b605e9f27d2b91312dc80"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; int16_t, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a51324dd32b0b605e9f27d2b91312dc80">L2Normalization1dInt16Test</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a51324dd32b0b605e9f27d2b91312dc80"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea6a1743ba0fdb000d73856302ab6c23"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; uint8_t, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#aea6a1743ba0fdb000d73856302ab6c23">L2Normalization1dUint8Test</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:aea6a1743ba0fdb000d73856302ab6c23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a373fc44a34b2bba8739ad4c6e864b234"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; float, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a373fc44a34b2bba8739ad4c6e864b234">L2Normalization2dTest</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a373fc44a34b2bba8739ad4c6e864b234"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e2879224854a663f502d3092a68d2c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; int16_t, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a6e2879224854a663f502d3092a68d2c7">L2Normalization2dInt16Test</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a6e2879224854a663f502d3092a68d2c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96cf65cb33a0e9319ddd0d00d56b5056"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; uint8_t, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a96cf65cb33a0e9319ddd0d00d56b5056">L2Normalization2dUint8Test</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a96cf65cb33a0e9319ddd0d00d56b5056"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a90f524b460439bb8e386ea672acd6c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; float, 2 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a1a90f524b460439bb8e386ea672acd6c">L2Normalization2dShapeTest</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager)</td></tr>
+<tr class="separator:a1a90f524b460439bb8e386ea672acd6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a336e63cb246a1d6f8b5a02367932471a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; float, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a336e63cb246a1d6f8b5a02367932471a">L2Normalization3dTest</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a336e63cb246a1d6f8b5a02367932471a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49295d2552ff6a80396649f5b6e3a9ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; int16_t, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a49295d2552ff6a80396649f5b6e3a9ce">L2Normalization3dInt16Test</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a49295d2552ff6a80396649f5b6e3a9ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad087db636160f71155a4ac31b37184aa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; uint8_t, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#ad087db636160f71155a4ac31b37184aa">L2Normalization3dUint8Test</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:ad087db636160f71155a4ac31b37184aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49c8b464589cbe8f6b7e7a1bf7e6403d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; float, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a49c8b464589cbe8f6b7e7a1bf7e6403d">L2Normalization4dTest</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a49c8b464589cbe8f6b7e7a1bf7e6403d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bbff607f046d49a92516969d8beff7a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; int16_t, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a1bbff607f046d49a92516969d8beff7a">L2Normalization4dInt16Test</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a1bbff607f046d49a92516969d8beff7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9672054d1096864d4c034aa90008efff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; uint8_t, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml#a9672054d1096864d4c034aa90008efff">L2Normalization4dUint8Test</a> (<a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;workloadFactory, const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;memoryManager, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
+<tr class="separator:a9672054d1096864d4c034aa90008efff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a51324dd32b0b605e9f27d2b91312dc80"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51324dd32b0b605e9f27d2b91312dc80">&#9670;&nbsp;</a></span>L2Normalization1dInt16Test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;int16_t, 4&gt; L2Normalization1dInt16Test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00597">597</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160;{</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; <span class="keywordflow">return</span> L2Normalization1dTestCommon&lt;armnn::DataType::QSymmS16&gt;(</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; workloadFactory,</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; memoryManager,</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; 1.f,</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; 0,</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; 1.f,</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; 0,</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; layout);</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="abc9aa62ee9cdec8c43b5a43d931c632c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc9aa62ee9cdec8c43b5a43d931c632c">&#9670;&nbsp;</a></span>L2Normalization1dTest()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; L2Normalization1dTest </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00582">582</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;{</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <span class="keywordflow">return</span> L2Normalization1dTestCommon&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; workloadFactory,</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; memoryManager,</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; 0.f,</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; 0,</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; 0.f,</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; 0,</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; layout);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aea6a1743ba0fdb000d73856302ab6c23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea6a1743ba0fdb000d73856302ab6c23">&#9670;&nbsp;</a></span>L2Normalization1dUint8Test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; L2Normalization1dUint8Test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00612">612</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160;{</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; <span class="keywordflow">return</span> L2Normalization1dTestCommon&lt;armnn::DataType::QAsymmU8&gt;(</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; workloadFactory,</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; memoryManager,</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; 1.f,</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; 0,</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; 1.f / 128,</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; 128,</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; layout);</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a6e2879224854a663f502d3092a68d2c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e2879224854a663f502d3092a68d2c7">&#9670;&nbsp;</a></span>L2Normalization2dInt16Test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;int16_t, 4&gt; L2Normalization2dInt16Test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00642">642</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160;{</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <span class="keywordflow">return</span> L2Normalization1dTestCommon&lt;armnn::DataType::QSymmS16&gt;(</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; workloadFactory,</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; memoryManager,</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; 1.f,</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; 0,</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; 1.f,</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; 0,</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; layout);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a1a90f524b460439bb8e386ea672acd6c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a90f524b460439bb8e386ea672acd6c">&#9670;&nbsp;</a></span>L2Normalization2dShapeTest()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 2&gt; L2Normalization2dShapeTest </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00672">672</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_tensor_copy_utils_8cpp_source.xhtml#l00014">CopyDataFromITensorHandle()</a>, <a class="el" href="_tensor_copy_utils_8cpp_source.xhtml#l00009">CopyDataToITensorHandle()</a>, <a class="el" href="_workload_factory_8cpp_source.xhtml#l01250">IWorkloadFactory::CreateL2Normalization()</a>, <a class="el" href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">IWorkloadFactory::CreateTensorHandle()</a>, <a class="el" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::Float32</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00606">L2NormalizationDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00604">L2NormalizationDescriptor::m_Eps</a>, <a class="el" href="_workload_data_8hpp_source.xhtml#l00049">QueueDescriptorWithParameters&lt; LayerDescriptor &gt;::m_Parameters</a>, and <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::NHWC</a>.</p>
+<div class="fragment"><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;{</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout = <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::DataLayout::NHWC</a>;</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <span class="keyword">const</span> <a class="code" href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a> inputOutputTensorShape = <a class="code" href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a>({ 5, 2 });</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; std::vector&lt;float&gt; inputData</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; {</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; 1.f, 2.f, 3.f, 4.f, 5.f, 6.f, 7.f, 8.f, 9.f, 10.f</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; };</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; std::vector&lt;float&gt; expectedOutputData</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; {</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; 1.0f * CalcInvL2Norm({ 1.0f, 2.0f }),</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; 2.0f * CalcInvL2Norm({ 1.0f, 2.0f }),</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; 3.0f * CalcInvL2Norm({ 3.0f, 4.0f }),</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; 4.0f * CalcInvL2Norm({ 3.0f, 4.0f }),</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; 5.0f * CalcInvL2Norm({ 5.0f, 6.0f }),</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; 6.0f * CalcInvL2Norm({ 5.0f, 6.0f }),</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; 7.0f * CalcInvL2Norm({ 7.0f, 8.0f }),</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; 8.0f * CalcInvL2Norm({ 7.0f, 8.0f }),</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; 9.0f * CalcInvL2Norm({ 9.0f, 10.0f }),</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; 10.0f * CalcInvL2Norm({ 9.0f, 10.0f })</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; };</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; <span class="keyword">const</span> <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> inputTensorInfo(inputOutputTensorShape, <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a>, 0.f, 0);</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <span class="keyword">const</span> <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> outputTensorInfo(inputOutputTensorShape, <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a>, 0.f, 0);</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keyword">auto</span> inputTensor = MakeTensor&lt;float, 2&gt;(inputTensorInfo, inputData);</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <a class="code" href="struct_layer_test_result.xhtml">LayerTestResult&lt;float, 2&gt;</a> result(outputTensorInfo);</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; result.outputExpected = MakeTensor&lt;float, 2&gt;(outputTensorInfo, expectedOutputData);</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; std::unique_ptr&lt;armnn::ITensorHandle&gt; inputHandle = workloadFactory.<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">CreateTensorHandle</a>(inputTensorInfo);</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; std::unique_ptr&lt;armnn::ITensorHandle&gt; outputHandle = workloadFactory.<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">CreateTensorHandle</a>(outputTensorInfo);</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; <a class="code" href="structarmnn_1_1_l2_normalization_queue_descriptor.xhtml">armnn::L2NormalizationQueueDescriptor</a> descriptor;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_l2_normalization_descriptor.xhtml#a11c821c7524251004a72ed13c510853c">m_Eps</a> = 1e-12f;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a>.<a class="code" href="structarmnn_1_1_l2_normalization_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">m_DataLayout</a> = layout;</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <a class="code" href="structarmnn_1_1_workload_info.xhtml">armnn::WorkloadInfo</a> <a class="code" href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c">info</a>;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; std::unique_ptr&lt;armnn::IWorkload&gt; workload = workloadFactory.<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml#a3c86f886e36ce943f1ebc241a37f0413">CreateL2Normalization</a>(descriptor, info);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; inputHandle-&gt;Allocate();</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; outputHandle-&gt;Allocate();</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#ae15f1a3c55d2db87683577de9fa4437c">CopyDataToITensorHandle</a>(inputHandle.get(), &amp;inputTensor[0][0]);</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; workload-&gt;PostAllocationConfigure();</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; ExecuteWorkload(*workload, memoryManager);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#a99b626c58a926dc7d6df78d22ec186c8">CopyDataFromITensorHandle</a>(&amp;result.output[0][0], outputHandle.get());</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160;</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_l2_normalization_descriptor_xhtml_a11c821c7524251004a72ed13c510853c"><div class="ttname"><a href="structarmnn_1_1_l2_normalization_descriptor.xhtml#a11c821c7524251004a72ed13c510853c">armnn::L2NormalizationDescriptor::m_Eps</a></div><div class="ttdeci">float m_Eps</div><div class="ttdoc">Used to avoid dividing by zero. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00604">Descriptors.hpp:604</a></div></div>
+<div class="ttc" id="classarmnn_1_1_i_workload_factory_xhtml_a3c86f886e36ce943f1ebc241a37f0413"><div class="ttname"><a href="classarmnn_1_1_i_workload_factory.xhtml#a3c86f886e36ce943f1ebc241a37f0413">armnn::IWorkloadFactory::CreateL2Normalization</a></div><div class="ttdeci">virtual std::unique_ptr&lt; IWorkload &gt; CreateL2Normalization(const L2NormalizationQueueDescriptor &amp;descriptor, const WorkloadInfo &amp;info) const</div><div class="ttdef"><b>Definition:</b> <a href="_workload_factory_8cpp_source.xhtml#l01250">WorkloadFactory.cpp:1250</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a></div><div class="ttdeci">DataLayout</div><div class="ttdef"><b>Definition:</b> <a href="_types_8hpp_source.xhtml#l00049">Types.hpp:49</a></div></div>
+<div class="ttc" id="classarmnn_1_1_tensor_info_xhtml"><div class="ttname"><a href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.xhtml#l00053">Tensor.hpp:53</a></div></div>
+<div class="ttc" id="classarmnn_1_1_tensor_shape_xhtml"><div class="ttname"><a href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a></div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.xhtml#l00020">Tensor.hpp:20</a></div></div>
+<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::m_Parameters</a></div><div class="ttdeci">LayerDescriptor m_Parameters</div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00049">WorkloadData.hpp:49</a></div></div>
+<div class="ttc" id="structarmnn_1_1_l2_normalization_descriptor_xhtml_a6089e1ca91914015777ea780a513131a"><div class="ttname"><a href="structarmnn_1_1_l2_normalization_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">armnn::L2NormalizationDescriptor::m_DataLayout</a></div><div class="ttdeci">DataLayout m_DataLayout</div><div class="ttdoc">The data layout to be used (NCHW, NHWC). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00606">Descriptors.hpp:606</a></div></div>
+<div class="ttc" id="_tensor_copy_utils_8cpp_xhtml_a99b626c58a926dc7d6df78d22ec186c8"><div class="ttname"><a href="_tensor_copy_utils_8cpp.xhtml#a99b626c58a926dc7d6df78d22ec186c8">CopyDataFromITensorHandle</a></div><div class="ttdeci">void CopyDataFromITensorHandle(void *memory, const armnn::ITensorHandle *tensorHandle)</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_copy_utils_8cpp_source.xhtml#l00014">TensorCopyUtils.cpp:14</a></div></div>
+<div class="ttc" id="classarmnn_1_1_i_workload_factory_xhtml_a15c140be4ddceffee16436f009d3ed94"><div class="ttname"><a href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">armnn::IWorkloadFactory::CreateTensorHandle</a></div><div class="ttdeci">virtual std::unique_ptr&lt; ITensorHandle &gt; CreateTensorHandle(const TensorInfo &amp;tensorInfo, const bool IsMemoryManaged=true) const =0</div></div>
+<div class="ttc" id="structarmnn_1_1_l2_normalization_queue_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_l2_normalization_queue_descriptor.xhtml">armnn::L2NormalizationQueueDescriptor</a></div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00316">WorkloadData.hpp:316</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c"><div class="ttname"><a href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c">armnn::BoostLogSeverityMapping::info</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a></div></div>
+<div class="ttc" id="structarmnn_1_1_workload_info_xhtml"><div class="ttname"><a href="structarmnn_1_1_workload_info.xhtml">armnn::WorkloadInfo</a></div><div class="ttdoc">Contains information about inputs and outputs to a layer. </div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_2backends_2_workload_info_8hpp_source.xhtml#l00016">WorkloadInfo.hpp:16</a></div></div>
+<div class="ttc" id="struct_layer_test_result_xhtml"><div class="ttname"><a href="struct_layer_test_result.xhtml">LayerTestResult</a></div><div class="ttdef"><b>Definition:</b> <a href="_layer_test_result_8hpp_source.xhtml#l00029">LayerTestResult.hpp:29</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::DataLayout::NHWC</a></div></div>
+<div class="ttc" id="_tensor_copy_utils_8cpp_xhtml_ae15f1a3c55d2db87683577de9fa4437c"><div class="ttname"><a href="_tensor_copy_utils_8cpp.xhtml#ae15f1a3c55d2db87683577de9fa4437c">CopyDataToITensorHandle</a></div><div class="ttdeci">void CopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_copy_utils_8cpp_source.xhtml#l00009">TensorCopyUtils.cpp:9</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a373fc44a34b2bba8739ad4c6e864b234"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a373fc44a34b2bba8739ad4c6e864b234">&#9670;&nbsp;</a></span>L2Normalization2dTest()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; L2Normalization2dTest </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00627">627</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;{</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <span class="keywordflow">return</span> L2Normalization2dTestCommon&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; workloadFactory,</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; memoryManager,</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; 0.f,</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; 0,</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; 0.f,</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; 0,</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; layout);</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a96cf65cb33a0e9319ddd0d00d56b5056"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96cf65cb33a0e9319ddd0d00d56b5056">&#9670;&nbsp;</a></span>L2Normalization2dUint8Test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; L2Normalization2dUint8Test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00657">657</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;{</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <span class="keywordflow">return</span> L2Normalization1dTestCommon&lt;armnn::DataType::QAsymmU8&gt;(</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; workloadFactory,</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; memoryManager,</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; 1.f,</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; 0,</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; 1.f / 128,</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; 128,</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; layout);</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a49295d2552ff6a80396649f5b6e3a9ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49295d2552ff6a80396649f5b6e3a9ce">&#9670;&nbsp;</a></span>L2Normalization3dInt16Test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;int16_t, 4&gt; L2Normalization3dInt16Test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00746">746</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;{</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keywordflow">return</span> L2Normalization1dTestCommon&lt;armnn::DataType::QSymmS16&gt;(</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; workloadFactory,</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; memoryManager,</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; 1.f,</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; 0,</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; 1.f,</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; 0,</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; layout);</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a336e63cb246a1d6f8b5a02367932471a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a336e63cb246a1d6f8b5a02367932471a">&#9670;&nbsp;</a></span>L2Normalization3dTest()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; L2Normalization3dTest </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00731">731</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;{</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <span class="keywordflow">return</span> L2Normalization3dTestCommon&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; workloadFactory,</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; memoryManager,</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; 0.f,</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; 0,</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; 0.f,</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; 0,</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; layout);</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ad087db636160f71155a4ac31b37184aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad087db636160f71155a4ac31b37184aa">&#9670;&nbsp;</a></span>L2Normalization3dUint8Test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; L2Normalization3dUint8Test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00761">761</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160;{</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <span class="keywordflow">return</span> L2Normalization1dTestCommon&lt;armnn::DataType::QAsymmU8&gt;(</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; workloadFactory,</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; memoryManager,</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; 1.f,</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; 0,</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; 1.f / 128,</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; 128,</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; layout);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a1bbff607f046d49a92516969d8beff7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1bbff607f046d49a92516969d8beff7a">&#9670;&nbsp;</a></span>L2Normalization4dInt16Test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;int16_t, 4&gt; L2Normalization4dInt16Test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00791">791</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160;{</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; <span class="keywordflow">return</span> L2Normalization1dTestCommon&lt;armnn::DataType::QSymmS16&gt;(</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; workloadFactory,</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; memoryManager,</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; 1.f,</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; 0,</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; 1.f,</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; 0,</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; layout);</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a49c8b464589cbe8f6b7e7a1bf7e6403d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49c8b464589cbe8f6b7e7a1bf7e6403d">&#9670;&nbsp;</a></span>L2Normalization4dTest()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; L2Normalization4dTest </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00776">776</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160;{</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; <span class="keywordflow">return</span> L2Normalization4dTestCommon&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; workloadFactory,</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; memoryManager,</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; 0.f,</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; 0,</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; 0.f,</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; 0,</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; layout);</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a9672054d1096864d4c034aa90008efff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9672054d1096864d4c034aa90008efff">&#9670;&nbsp;</a></span>L2Normalization4dUint8Test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; L2Normalization4dUint8Test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00806">806</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160;{</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; <span class="keywordflow">return</span> L2Normalization1dTestCommon&lt;armnn::DataType::QAsymmU8&gt;(</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; workloadFactory,</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160; memoryManager,</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; 1.f,</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; 0,</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; 1.f / 128,</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; 128,</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; layout);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a13c8cd6115422815348d57aef2ca032d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13c8cd6115422815348d57aef2ca032d">&#9670;&nbsp;</a></span>L2NormalizationDefaultEpsilonTest()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; L2NormalizationDefaultEpsilonTest </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00547">547</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_descriptors_8hpp_source.xhtml#l00604">L2NormalizationDescriptor::m_Eps</a>.</p>
+<div class="fragment"><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;{</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="comment">// Dummy descriptor to get the default value of epsilon.</span></div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; <a class="code" href="structarmnn_1_1_l2_normalization_descriptor.xhtml">armnn::L2NormalizationDescriptor</a> descriptor;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <span class="keywordflow">return</span> L2NormalizationEpsilonTestCommon&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; workloadFactory,</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; memoryManager,</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; 0.f,</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; 0,</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; 0.f,</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; 0,</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; layout,</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_l2_normalization_descriptor.xhtml#a11c821c7524251004a72ed13c510853c">m_Eps</a>);</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_l2_normalization_descriptor_xhtml_a11c821c7524251004a72ed13c510853c"><div class="ttname"><a href="structarmnn_1_1_l2_normalization_descriptor.xhtml#a11c821c7524251004a72ed13c510853c">armnn::L2NormalizationDescriptor::m_Eps</a></div><div class="ttdeci">float m_Eps</div><div class="ttdoc">Used to avoid dividing by zero. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00604">Descriptors.hpp:604</a></div></div>
+<div class="ttc" id="structarmnn_1_1_l2_normalization_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_l2_normalization_descriptor.xhtml">armnn::L2NormalizationDescriptor</a></div><div class="ttdoc">A L2NormalizationDescriptor for the L2NormalizationLayer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00591">Descriptors.hpp:591</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="ae6ec1c0ad5b1b94d03c160c8122587cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6ec1c0ad5b1b94d03c160c8122587cc">&#9670;&nbsp;</a></span>L2NormalizationNonDefaultEpsilonTest()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; L2NormalizationNonDefaultEpsilonTest </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
+ <td class="paramname"><em>workloadFactory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>memoryManager</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
+ <td class="paramname"><em>layout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml#l00566">566</a> of file <a class="el" href="_l2_normalization_test_impl_8cpp_source.xhtml">L2NormalizationTestImpl.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;{</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; <span class="keywordflow">return</span> L2NormalizationEpsilonTestCommon&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; workloadFactory,</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; memoryManager,</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; 0.f,</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; 0,</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; 0.f,</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; 0,</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; layout,</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; 1e-9f);</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.xhtml">src</a></li><li class="navelem"><a class="el" href="dir_0f3cdec46afbc61a1ded8e1687c9c9a0.xhtml">backends</a></li><li class="navelem"><a class="el" href="dir_797a213d7d01b98ef12d53b0820ea64e.xhtml">backendsCommon</a></li><li class="navelem"><a class="el" href="dir_28bfe507f7e135bdae07c2a6b7f66696.xhtml">test</a></li><li class="navelem"><a class="el" href="dir_99a30439342d160875b21dac3498ad7f.xhtml">layerTests</a></li><li class="navelem"><a class="el" href="_l2_normalization_test_impl_8cpp.xhtml">L2NormalizationTestImpl.cpp</a></li>
+ <li class="footer">Generated on Fri Mar 13 2020 16:09:14 for ArmNN by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>