blob: 251ee0ce6082af08b1ab2763b23fa5d71299986f [file] [log] [blame]
Ryan OSheade36e4a2020-03-13 16:26:19 +00001<!-- 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: src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp File 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 &#160;<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">
56var 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('_conv2d_test_impl_8hpp.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="#func-members">Functions</a> </div>
99 <div class="headertitle">
100<div class="title">Conv2dTestImpl.hpp File Reference</div> </div>
101</div><!--header-->
102<div class="contents">
103<div class="textblock"><code>#include &quot;<a class="el" href="_layer_test_result_8hpp_source.xhtml">LayerTestResult.hpp</a>&quot;</code><br />
104<code>#include &lt;<a class="el" href="_resolve_type_8hpp_source.xhtml">ResolveType.hpp</a>&gt;</code><br />
105<code>#include &lt;<a class="el" href="_types_8hpp_source.xhtml">armnn/Types.hpp</a>&gt;</code><br />
106<code>#include &lt;<a class="el" href="include_2armnn_2backends_2_i_backend_internal_8hpp_source.xhtml">armnn/backends/IBackendInternal.hpp</a>&gt;</code><br />
107<code>#include &lt;<a class="el" href="_workload_factory_8hpp_source.xhtml">backendsCommon/WorkloadFactory.hpp</a>&gt;</code><br />
108</div>
109<p><a href="_conv2d_test_impl_8hpp_source.xhtml">Go to the source code of this file.</a></p>
110<table class="memberdecls">
111<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
112Functions</h2></td></tr>
113<tr class="memitem:a90abce368d7f16012bef5ee461329484"><td class="memTemplParams" colspan="2">template&lt;armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType&lt;ArmnnType&gt;&gt; </td></tr>
114<tr class="memitem:a90abce368d7f16012bef5ee461329484"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, 4 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_conv2d_test_impl_8hpp.xhtml#a90abce368d7f16012bef5ee461329484">Convolution2d3x3Dilation3x3Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
115<tr class="separator:a90abce368d7f16012bef5ee461329484"><td class="memSeparator" colspan="2">&#160;</td></tr>
116<tr class="memitem:a99ef3f48cbd057e0169bc80dc77331ef"><td class="memTemplParams" colspan="2">template&lt;armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType&lt;ArmnnType&gt;&gt; </td></tr>
117<tr class="memitem:a99ef3f48cbd057e0169bc80dc77331ef"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, 4 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_conv2d_test_impl_8hpp.xhtml#a99ef3f48cbd057e0169bc80dc77331ef">Convolution2d2x3x3Dilation3x3Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
118<tr class="separator:a99ef3f48cbd057e0169bc80dc77331ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
119<tr class="memitem:acf553288e3b5060768fb91e064993678"><td class="memTemplParams" colspan="2">template&lt;armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType&lt;ArmnnType&gt;&gt; </td></tr>
120<tr class="memitem:acf553288e3b5060768fb91e064993678"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, 4 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_conv2d_test_impl_8hpp.xhtml#acf553288e3b5060768fb91e064993678">Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
121<tr class="separator:acf553288e3b5060768fb91e064993678"><td class="memSeparator" colspan="2">&#160;</td></tr>
122<tr class="memitem:afb5e7d86e241292d9cb899b960da54af"><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="_conv2d_test_impl_8hpp.xhtml#afb5e7d86e241292d9cb899b960da54af">SimpleConvolution2d3x5Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
123<tr class="separator:afb5e7d86e241292d9cb899b960da54af"><td class="memSeparator" colspan="2">&#160;</td></tr>
124<tr class="memitem:acbe1a2adccd9e0aad14fc0ccb9266b0d"><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="_conv2d_test_impl_8hpp.xhtml#acbe1a2adccd9e0aad14fc0ccb9266b0d">SimpleConvolution2d3x3Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
125<tr class="separator:acbe1a2adccd9e0aad14fc0ccb9266b0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
126<tr class="memitem:af4ac6874d18e1cb59873a17073512873"><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="_conv2d_test_impl_8hpp.xhtml#af4ac6874d18e1cb59873a17073512873">SimpleConvolution2d3x3Stride2x2Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
127<tr class="separator:af4ac6874d18e1cb59873a17073512873"><td class="memSeparator" colspan="2">&#160;</td></tr>
128<tr class="memitem:ac7bae01fdca8edac70cc9bc722426b17"><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="_conv2d_test_impl_8hpp.xhtml#ac7bae01fdca8edac70cc9bc722426b17">SimpleConvolution2d3x3NhwcTest</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, bool biasEnabled)</td></tr>
129<tr class="separator:ac7bae01fdca8edac70cc9bc722426b17"><td class="memSeparator" colspan="2">&#160;</td></tr>
130<tr class="memitem:a8ffca1c4b38a68b10ba06f4f1416660f"><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="_conv2d_test_impl_8hpp.xhtml#a8ffca1c4b38a68b10ba06f4f1416660f">SimpleConvolution2d3x5Uint8Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
131<tr class="separator:a8ffca1c4b38a68b10ba06f4f1416660f"><td class="memSeparator" colspan="2">&#160;</td></tr>
132<tr class="memitem:ad45f359d9d4bee360bee857faa79d292"><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="_conv2d_test_impl_8hpp.xhtml#ad45f359d9d4bee360bee857faa79d292">SimpleConvolution2d3x3Uint8Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
133<tr class="separator:ad45f359d9d4bee360bee857faa79d292"><td class="memSeparator" colspan="2">&#160;</td></tr>
134<tr class="memitem:a9dcd2fb98f5c3284c74f65a7c7a69da1"><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="_conv2d_test_impl_8hpp.xhtml#a9dcd2fb98f5c3284c74f65a7c7a69da1">SimpleConvolution2d3x5QSymm16Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
135<tr class="separator:a9dcd2fb98f5c3284c74f65a7c7a69da1"><td class="memSeparator" colspan="2">&#160;</td></tr>
136<tr class="memitem:abac8f73ae590a93fe91115371ae4ced3"><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="_conv2d_test_impl_8hpp.xhtml#abac8f73ae590a93fe91115371ae4ced3">SimpleConvolution2d3x3QSymm16Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
137<tr class="separator:abac8f73ae590a93fe91115371ae4ced3"><td class="memSeparator" colspan="2">&#160;</td></tr>
138<tr class="memitem:a48884a37a6b783185c608a68cfce752f"><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="_conv2d_test_impl_8hpp.xhtml#a48884a37a6b783185c608a68cfce752f">Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest</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, <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
139<tr class="separator:a48884a37a6b783185c608a68cfce752f"><td class="memSeparator" colspan="2">&#160;</td></tr>
140<tr class="memitem:af7f2cd23423130ebdd916de12bc0eb1d"><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="_conv2d_test_impl_8hpp.xhtml#af7f2cd23423130ebdd916de12bc0eb1d">Convolution2dAsymmetricPaddingTest</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, <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
141<tr class="separator:af7f2cd23423130ebdd916de12bc0eb1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
142<tr class="memitem:ac7fac5767dabd650d3d8829572717064"><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="_conv2d_test_impl_8hpp.xhtml#ac7fac5767dabd650d3d8829572717064">Convolution1dTest</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, bool biasEnabled)</td></tr>
143<tr class="separator:ac7fac5767dabd650d3d8829572717064"><td class="memSeparator" colspan="2">&#160;</td></tr>
144<tr class="memitem:a40bc412ed2a6d2f764655070c02c036b"><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="_conv2d_test_impl_8hpp.xhtml#a40bc412ed2a6d2f764655070c02c036b">Convolution1dUint8Test</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, bool biasEnabled)</td></tr>
145<tr class="separator:a40bc412ed2a6d2f764655070c02c036b"><td class="memSeparator" colspan="2">&#160;</td></tr>
146<tr class="memitem:a15fe73bad57133008945807f7a5b4783"><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="_conv2d_test_impl_8hpp.xhtml#a15fe73bad57133008945807f7a5b4783">CompareConvolution2dTest</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, <a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;refWorkloadFactory)</td></tr>
147<tr class="separator:a15fe73bad57133008945807f7a5b4783"><td class="memSeparator" colspan="2">&#160;</td></tr>
148<tr class="memitem:a370a5216668b507284677234264a22a2"><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="_conv2d_test_impl_8hpp.xhtml#a370a5216668b507284677234264a22a2">Convolution2dPerAxisQuantTest</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>
149<tr class="separator:a370a5216668b507284677234264a22a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
150<tr class="memitem:a1c3398bdb48e4ce4643a1eeaf3e054a3"><td class="memTemplParams" colspan="2">template&lt;armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType&lt;ArmnnType&gt;&gt; </td></tr>
151<tr class="memitem:a1c3398bdb48e4ce4643a1eeaf3e054a3"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, 4 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_conv2d_test_impl_8hpp.xhtml#a1c3398bdb48e4ce4643a1eeaf3e054a3">DepthwiseConvolution2d3x3Dilation3x3Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
152<tr class="separator:a1c3398bdb48e4ce4643a1eeaf3e054a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
153<tr class="memitem:acffa50ae3185e3e5302909f27e7e9a02"><td class="memTemplParams" colspan="2">template&lt;armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType&lt;ArmnnType&gt;&gt; </td></tr>
154<tr class="memitem:acffa50ae3185e3e5302909f27e7e9a02"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, 4 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_conv2d_test_impl_8hpp.xhtml#acffa50ae3185e3e5302909f27e7e9a02">DepthwiseConvolution2d2x3x3Dilation3x3Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
155<tr class="separator:acffa50ae3185e3e5302909f27e7e9a02"><td class="memSeparator" colspan="2">&#160;</td></tr>
156<tr class="memitem:a0da6534b3a5d2f923dcd73553950129a"><td class="memTemplParams" colspan="2">template&lt;armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType&lt;ArmnnType&gt;&gt; </td></tr>
157<tr class="memitem:a0da6534b3a5d2f923dcd73553950129a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, 4 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_conv2d_test_impl_8hpp.xhtml#a0da6534b3a5d2f923dcd73553950129a">DepthwiseConvolution2dMult4Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
158<tr class="separator:a0da6534b3a5d2f923dcd73553950129a"><td class="memSeparator" colspan="2">&#160;</td></tr>
159<tr class="memitem:aaed50a372a6b59b20e38469856a3ce6b"><td class="memTemplParams" colspan="2">template&lt;armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType&lt;ArmnnType&gt;&gt; </td></tr>
160<tr class="memitem:aaed50a372a6b59b20e38469856a3ce6b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, 4 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_conv2d_test_impl_8hpp.xhtml#aaed50a372a6b59b20e38469856a3ce6b">DepthwiseConvolution2dMult2Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
161<tr class="separator:aaed50a372a6b59b20e38469856a3ce6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
162<tr class="memitem:a12fec2055d0e4a18d1e0db589a969e41"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
163<tr class="memitem:a12fec2055d0e4a18d1e0db589a969e41"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, 4 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_conv2d_test_impl_8hpp.xhtml#a12fec2055d0e4a18d1e0db589a969e41">CompareDepthwiseConvolution2dTest</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, <a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;refWorkloadFactory, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
164<tr class="separator:a12fec2055d0e4a18d1e0db589a969e41"><td class="memSeparator" colspan="2">&#160;</td></tr>
165<tr class="memitem:a11fbd94028ab646528b42d0c8c55eee1"><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="_conv2d_test_impl_8hpp.xhtml#a11fbd94028ab646528b42d0c8c55eee1">DepthwiseConvolution2dTest</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
166<tr class="separator:a11fbd94028ab646528b42d0c8c55eee1"><td class="memSeparator" colspan="2">&#160;</td></tr>
167<tr class="memitem:a0cccb5cffee89004bc8d9fb309ed6636"><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="_conv2d_test_impl_8hpp.xhtml#a0cccb5cffee89004bc8d9fb309ed6636">DepthwiseConvolution2dDepthNhwcTest</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, bool biasEnabled)</td></tr>
168<tr class="separator:a0cccb5cffee89004bc8d9fb309ed6636"><td class="memSeparator" colspan="2">&#160;</td></tr>
169<tr class="memitem:a8b32d950a40903f502f5e1ec0dcab0bd"><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="_conv2d_test_impl_8hpp.xhtml#a8b32d950a40903f502f5e1ec0dcab0bd">DepthwiseConvolution2dDepthMul1Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
170<tr class="separator:a8b32d950a40903f502f5e1ec0dcab0bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
171<tr class="memitem:ab020b4a99bf905b61a1c5e03332b63a6"><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="_conv2d_test_impl_8hpp.xhtml#ab020b4a99bf905b61a1c5e03332b63a6">DepthwiseConvolution2dDepthMul64Test</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>
172<tr class="separator:ab020b4a99bf905b61a1c5e03332b63a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
173<tr class="memitem:abf326cbf49ec19c6272fe7c244b7817c"><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="_conv2d_test_impl_8hpp.xhtml#abf326cbf49ec19c6272fe7c244b7817c">DepthwiseConvolution2dAsymmetricTest</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
174<tr class="separator:abf326cbf49ec19c6272fe7c244b7817c"><td class="memSeparator" colspan="2">&#160;</td></tr>
175<tr class="memitem:a77a29527216d36bce78e88354462ede8"><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="_conv2d_test_impl_8hpp.xhtml#a77a29527216d36bce78e88354462ede8">SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTest</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>
176<tr class="separator:a77a29527216d36bce78e88354462ede8"><td class="memSeparator" colspan="2">&#160;</td></tr>
177<tr class="memitem:a8076c31bd6e9eae629994a89a5fa18c3"><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="_conv2d_test_impl_8hpp.xhtml#a8076c31bd6e9eae629994a89a5fa18c3">DepthwiseConvolution2dUint8Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
178<tr class="separator:a8076c31bd6e9eae629994a89a5fa18c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
179<tr class="memitem:ae797be34b659db2afe183f0c762fb9b7"><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="_conv2d_test_impl_8hpp.xhtml#ae797be34b659db2afe183f0c762fb9b7">DepthwiseConvolution2dDepthMul1Uint8Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
180<tr class="separator:ae797be34b659db2afe183f0c762fb9b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
181<tr class="memitem:a2ae97c2dd6621f4972c571cf1ec2a005"><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="_conv2d_test_impl_8hpp.xhtml#a2ae97c2dd6621f4972c571cf1ec2a005">DepthwiseConvolution2dInt16Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
182<tr class="separator:a2ae97c2dd6621f4972c571cf1ec2a005"><td class="memSeparator" colspan="2">&#160;</td></tr>
183<tr class="memitem:a74346a72d64f7fa3463473424c3098ab"><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="_conv2d_test_impl_8hpp.xhtml#a74346a72d64f7fa3463473424c3098ab">DepthwiseConvolution2dDepthMul1Int16Test</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, bool biasEnabled, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
184<tr class="separator:a74346a72d64f7fa3463473424c3098ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
185<tr class="memitem:a8a51827c480f827c1e29f9347d7433c3"><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="_conv2d_test_impl_8hpp.xhtml#a8a51827c480f827c1e29f9347d7433c3">DepthwiseConvolution2dPerAxisQuantTest</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>
186<tr class="separator:a8a51827c480f827c1e29f9347d7433c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
187<tr class="memitem:a09705f5e38cfc0d5bccc64791eb4f231"><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="_conv2d_test_impl_8hpp.xhtml#a09705f5e38cfc0d5bccc64791eb4f231">CompareDepthwiseConvolution2dFloatTest</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, <a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;refWorkloadFactory, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
188<tr class="separator:a09705f5e38cfc0d5bccc64791eb4f231"><td class="memSeparator" colspan="2">&#160;</td></tr>
189<tr class="memitem:a21af5850bca4df2ea0315afb407e7900"><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="_conv2d_test_impl_8hpp.xhtml#a21af5850bca4df2ea0315afb407e7900">CompareDepthwiseConvolution2dUint8Test</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, <a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;refWorkloadFactory, const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a> layout)</td></tr>
190<tr class="separator:a21af5850bca4df2ea0315afb407e7900"><td class="memSeparator" colspan="2">&#160;</td></tr>
191</table>
192<h2 class="groupheader">Function Documentation</h2>
193<a id="a15fe73bad57133008945807f7a5b4783"></a>
194<h2 class="memtitle"><span class="permalink"><a href="#a15fe73bad57133008945807f7a5b4783">&#9670;&nbsp;</a></span>CompareConvolution2dTest()</h2>
195
196<div class="memitem">
197<div class="memproto">
198 <table class="memname">
199 <tr>
200 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; CompareConvolution2dTest </td>
201 <td>(</td>
202 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
203 <td class="paramname"><em>workloadFactory</em>, </td>
204 </tr>
205 <tr>
206 <td class="paramkey"></td>
207 <td></td>
208 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
209 <td class="paramname"><em>memoryManager</em>, </td>
210 </tr>
211 <tr>
212 <td class="paramkey"></td>
213 <td></td>
214 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
215 <td class="paramname"><em>refWorkloadFactory</em>&#160;</td>
216 </tr>
217 <tr>
218 <td></td>
219 <td>)</td>
220 <td></td><td></td>
221 </tr>
222 </table>
223</div><div class="memdoc">
224
225<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03184">3184</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
226<div class="fragment"><div class="line"><a name="l03188"></a><span class="lineno"> 3188</span>&#160;{</div><div class="line"><a name="l03189"></a><span class="lineno"> 3189</span>&#160; <span class="keywordflow">return</span> CompareConvolution2dTestImpl&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03190"></a><span class="lineno"> 3190</span>&#160; workloadFactory, memoryManager, refWorkloadFactory);</div><div class="line"><a name="l03191"></a><span class="lineno"> 3191</span>&#160;}</div></div><!-- fragment -->
227</div>
228</div>
229<a id="a09705f5e38cfc0d5bccc64791eb4f231"></a>
230<h2 class="memtitle"><span class="permalink"><a href="#a09705f5e38cfc0d5bccc64791eb4f231">&#9670;&nbsp;</a></span>CompareDepthwiseConvolution2dFloatTest()</h2>
231
232<div class="memitem">
233<div class="memproto">
234 <table class="memname">
235 <tr>
236 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; CompareDepthwiseConvolution2dFloatTest </td>
237 <td>(</td>
238 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
239 <td class="paramname"><em>workloadFactory</em>, </td>
240 </tr>
241 <tr>
242 <td class="paramkey"></td>
243 <td></td>
244 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
245 <td class="paramname"><em>memoryManager</em>, </td>
246 </tr>
247 <tr>
248 <td class="paramkey"></td>
249 <td></td>
250 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
251 <td class="paramname"><em>refWorkloadFactory</em>, </td>
252 </tr>
253 <tr>
254 <td class="paramkey"></td>
255 <td></td>
256 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
257 <td class="paramname"><em>layout</em>&#160;</td>
258 </tr>
259 <tr>
260 <td></td>
261 <td>)</td>
262 <td></td><td></td>
263 </tr>
264 </table>
265</div><div class="memdoc">
266
267<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03424">3424</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
268<div class="fragment"><div class="line"><a name="l03429"></a><span class="lineno"> 3429</span>&#160;{</div><div class="line"><a name="l03430"></a><span class="lineno"> 3430</span>&#160; <span class="keywordflow">return</span> CompareDepthwiseConvolution2dTestImpl&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03431"></a><span class="lineno"> 3431</span>&#160; workloadFactory, memoryManager, refWorkloadFactory, layout);</div><div class="line"><a name="l03432"></a><span class="lineno"> 3432</span>&#160;}</div></div><!-- fragment -->
269</div>
270</div>
271<a id="a12fec2055d0e4a18d1e0db589a969e41"></a>
272<h2 class="memtitle"><span class="permalink"><a href="#a12fec2055d0e4a18d1e0db589a969e41">&#9670;&nbsp;</a></span>CompareDepthwiseConvolution2dTest()</h2>
273
274<div class="memitem">
275<div class="memproto">
276 <table class="memname">
277 <tr>
278 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;T, 4&gt; CompareDepthwiseConvolution2dTest </td>
279 <td>(</td>
280 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
281 <td class="paramname"><em>workloadFactory</em>, </td>
282 </tr>
283 <tr>
284 <td class="paramkey"></td>
285 <td></td>
286 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
287 <td class="paramname"><em>memoryManager</em>, </td>
288 </tr>
289 <tr>
290 <td class="paramkey"></td>
291 <td></td>
292 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
293 <td class="paramname"><em>refWorkloadFactory</em>, </td>
294 </tr>
295 <tr>
296 <td class="paramkey"></td>
297 <td></td>
298 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
299 <td class="paramname"><em>layout</em>&#160;</td>
300 </tr>
301 <tr>
302 <td></td>
303 <td>)</td>
304 <td></td><td></td>
305 </tr>
306 </table>
307</div><div class="memdoc">
308
309</div>
310</div>
311<a id="a21af5850bca4df2ea0315afb407e7900"></a>
312<h2 class="memtitle"><span class="permalink"><a href="#a21af5850bca4df2ea0315afb407e7900">&#9670;&nbsp;</a></span>CompareDepthwiseConvolution2dUint8Test()</h2>
313
314<div class="memitem">
315<div class="memproto">
316 <table class="memname">
317 <tr>
318 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; CompareDepthwiseConvolution2dUint8Test </td>
319 <td>(</td>
320 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
321 <td class="paramname"><em>workloadFactory</em>, </td>
322 </tr>
323 <tr>
324 <td class="paramkey"></td>
325 <td></td>
326 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
327 <td class="paramname"><em>memoryManager</em>, </td>
328 </tr>
329 <tr>
330 <td class="paramkey"></td>
331 <td></td>
332 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
333 <td class="paramname"><em>refWorkloadFactory</em>, </td>
334 </tr>
335 <tr>
336 <td class="paramkey"></td>
337 <td></td>
338 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
339 <td class="paramname"><em>layout</em>&#160;</td>
340 </tr>
341 <tr>
342 <td></td>
343 <td>)</td>
344 <td></td><td></td>
345 </tr>
346 </table>
347</div><div class="memdoc">
348
349<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03434">3434</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
350<div class="fragment"><div class="line"><a name="l03439"></a><span class="lineno"> 3439</span>&#160;{</div><div class="line"><a name="l03440"></a><span class="lineno"> 3440</span>&#160; <span class="keywordflow">return</span> CompareDepthwiseConvolution2dTestImpl&lt;armnn::DataType::QAsymmU8&gt;(</div><div class="line"><a name="l03441"></a><span class="lineno"> 3441</span>&#160; workloadFactory, memoryManager, refWorkloadFactory, layout);</div><div class="line"><a name="l03442"></a><span class="lineno"> 3442</span>&#160;}</div></div><!-- fragment -->
351</div>
352</div>
353<a id="ac7fac5767dabd650d3d8829572717064"></a>
354<h2 class="memtitle"><span class="permalink"><a href="#ac7fac5767dabd650d3d8829572717064">&#9670;&nbsp;</a></span>Convolution1dTest()</h2>
355
356<div class="memitem">
357<div class="memproto">
358 <table class="memname">
359 <tr>
360 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; Convolution1dTest </td>
361 <td>(</td>
362 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
363 <td class="paramname"><em>workloadFactory</em>, </td>
364 </tr>
365 <tr>
366 <td class="paramkey"></td>
367 <td></td>
368 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
369 <td class="paramname"><em>memoryManager</em>, </td>
370 </tr>
371 <tr>
372 <td class="paramkey"></td>
373 <td></td>
374 <td class="paramtype">bool&#160;</td>
375 <td class="paramname"><em>biasEnabled</em>&#160;</td>
376 </tr>
377 <tr>
378 <td></td>
379 <td>)</td>
380 <td></td><td></td>
381 </tr>
382 </table>
383</div><div class="memdoc">
384
385<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03074">3074</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
386<div class="fragment"><div class="line"><a name="l03078"></a><span class="lineno"> 3078</span>&#160;{</div><div class="line"><a name="l03079"></a><span class="lineno"> 3079</span>&#160; <span class="keywordflow">return</span> Convolution1dTestImpl&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03080"></a><span class="lineno"> 3080</span>&#160; workloadFactory, memoryManager, 0.0f, 0, biasEnabled);</div><div class="line"><a name="l03081"></a><span class="lineno"> 3081</span>&#160;}</div></div><!-- fragment -->
387</div>
388</div>
389<a id="a40bc412ed2a6d2f764655070c02c036b"></a>
390<h2 class="memtitle"><span class="permalink"><a href="#a40bc412ed2a6d2f764655070c02c036b">&#9670;&nbsp;</a></span>Convolution1dUint8Test()</h2>
391
392<div class="memitem">
393<div class="memproto">
394 <table class="memname">
395 <tr>
396 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; Convolution1dUint8Test </td>
397 <td>(</td>
398 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
399 <td class="paramname"><em>workloadFactory</em>, </td>
400 </tr>
401 <tr>
402 <td class="paramkey"></td>
403 <td></td>
404 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
405 <td class="paramname"><em>memoryManager</em>, </td>
406 </tr>
407 <tr>
408 <td class="paramkey"></td>
409 <td></td>
410 <td class="paramtype">bool&#160;</td>
411 <td class="paramname"><em>biasEnabled</em>&#160;</td>
412 </tr>
413 <tr>
414 <td></td>
415 <td>)</td>
416 <td></td><td></td>
417 </tr>
418 </table>
419</div><div class="memdoc">
420
421<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03083">3083</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
422<div class="fragment"><div class="line"><a name="l03087"></a><span class="lineno"> 3087</span>&#160;{</div><div class="line"><a name="l03088"></a><span class="lineno"> 3088</span>&#160; <span class="keywordflow">return</span> Convolution1dTestImpl&lt;armnn::DataType::QAsymmU8, armnn::DataType::Signed32&gt;(</div><div class="line"><a name="l03089"></a><span class="lineno"> 3089</span>&#160; workloadFactory, memoryManager, 0.1f, 128, biasEnabled);</div><div class="line"><a name="l03090"></a><span class="lineno"> 3090</span>&#160;}</div></div><!-- fragment -->
423</div>
424</div>
425<a id="acf553288e3b5060768fb91e064993678"></a>
426<h2 class="memtitle"><span class="permalink"><a href="#acf553288e3b5060768fb91e064993678">&#9670;&nbsp;</a></span>Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test()</h2>
427
428<div class="memitem">
429<div class="memproto">
430 <table class="memname">
431 <tr>
432 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;T, 4&gt; Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test </td>
433 <td>(</td>
434 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
435 <td class="paramname"><em>workloadFactory</em>, </td>
436 </tr>
437 <tr>
438 <td class="paramkey"></td>
439 <td></td>
440 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
441 <td class="paramname"><em>memoryManager</em>, </td>
442 </tr>
443 <tr>
444 <td class="paramkey"></td>
445 <td></td>
446 <td class="paramtype">bool&#160;</td>
447 <td class="paramname"><em>biasEnabled</em>, </td>
448 </tr>
449 <tr>
450 <td class="paramkey"></td>
451 <td></td>
452 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
453 <td class="paramname"><em>layout</em>&#160;</td>
454 </tr>
455 <tr>
456 <td></td>
457 <td>)</td>
458 <td></td><td></td>
459 </tr>
460 </table>
461</div><div class="memdoc">
462
463<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l01210">1210</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
464<div class="fragment"><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160;{</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> inputTensorInfo({1, 1, 10, 10}, ArmnnType);</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160; std::vector&lt;float&gt; inputNoQuantizedValues =</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160; {</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,</div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160; 1, 1, 1, 1, 1, 1, 1, 1, 1, 1</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160; };</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160;</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> kernelTensorInfo({ 1, 1, 2, 2}, ArmnnType);</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160; std::vector&lt;float&gt; kernelNoQuantizedValues =</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160; {</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160; 1, 2,</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160; 3, 4</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; };</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; <span class="comment">// Since the dilation rate is 2 this will dilate the kernel to be like 3x3: d(K-1)+1 --&gt; 2 x (2-1) + 1 = 3,</span></div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; <span class="comment">// therefore the output will be 4x4: (I − K + 2P)/S +1 =&gt; trunc ( (10 - 3 + 2x2 ) / 3 + 1 )</span></div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160; <span class="comment">// where, dilation size = d = 2; kernel size = K = 2; input size = I = 10; padding size = P = 2; stride = S = 3</span></div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> outputTensorInfo({ 1, 1, 4, 4}, ArmnnType);</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; std::vector&lt;float&gt; outputExpectedNoQuantizedValues =</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160; {</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; 4, 7, 7, 3,</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; 6, 10, 10, 4,</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160; 6, 10, 10, 4,</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; 2, 3, 3, 1</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; };</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; uint32_t padLeft = 1;</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160; uint32_t padTop = 1;</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160; uint32_t padRight = 1;</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; uint32_t padBottom = 1;</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160;</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160; <span class="keywordflow">return</span> Convolution2d3x3DilationTestCommon&lt;ArmnnType, ArmnnBType&gt;(</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160; workloadFactory,</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160; memoryManager,</div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160; inputNoQuantizedValues,</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160; inputTensorInfo,</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160; kernelNoQuantizedValues,</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160; kernelTensorInfo,</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160; outputExpectedNoQuantizedValues,</div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160; outputTensorInfo,</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160; 2,</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160; 2,</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160; layout,</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160; padLeft,</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160; padTop,</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160; padRight,</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160; padBottom,</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160; 3,</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; 3,</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160; biasEnabled</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160; );</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160;}</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>
465</div><!-- fragment -->
466</div>
467</div>
468<a id="a99ef3f48cbd057e0169bc80dc77331ef"></a>
469<h2 class="memtitle"><span class="permalink"><a href="#a99ef3f48cbd057e0169bc80dc77331ef">&#9670;&nbsp;</a></span>Convolution2d2x3x3Dilation3x3Test()</h2>
470
471<div class="memitem">
472<div class="memproto">
473 <table class="memname">
474 <tr>
475 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;T, 4&gt; Convolution2d2x3x3Dilation3x3Test </td>
476 <td>(</td>
477 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
478 <td class="paramname"><em>workloadFactory</em>, </td>
479 </tr>
480 <tr>
481 <td class="paramkey"></td>
482 <td></td>
483 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
484 <td class="paramname"><em>memoryManager</em>, </td>
485 </tr>
486 <tr>
487 <td class="paramkey"></td>
488 <td></td>
489 <td class="paramtype">bool&#160;</td>
490 <td class="paramname"><em>biasEnabled</em>, </td>
491 </tr>
492 <tr>
493 <td class="paramkey"></td>
494 <td></td>
495 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
496 <td class="paramname"><em>layout</em>&#160;</td>
497 </tr>
498 <tr>
499 <td></td>
500 <td>)</td>
501 <td></td><td></td>
502 </tr>
503 </table>
504</div><div class="memdoc">
505
506<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l01139">1139</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
507<div class="fragment"><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;{</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> inputTensorInfo({1, 2, 10, 10}, ArmnnType);</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160; std::vector&lt;float&gt; inputNoQuantizedValues =</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160; {</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; };</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> kernelTensorInfo({ 1, 2, 3, 3}, ArmnnType);</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160; std::vector&lt;float&gt; kernelNoQuantizedValues =</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; {</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; 1, 2, 3,</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; 4, 5, 6,</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; 7, 8, 9,</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160; 1, 2, 3,</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160; 4, 5, 6,</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; 7, 8, 9</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; };</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <span class="comment">// Since the dilation rate is 3 this will dilate the kernel to be like 7x7,</span></div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; <span class="comment">// therefore the output will be 4x4: (I−K+2P)/S +1 =&gt; (10-7 +0)/1 +1</span></div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> outputTensorInfo({ 1, 1, 4, 4}, ArmnnType);</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; std::vector&lt;float&gt; outputExpectedNoQuantizedValues =</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; {</div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; 12., 10., 10., 10.,</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160; 12., 10., 10., 10.,</div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160; 12., 10., 10., 10.,</div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160; 6., 4., 4., 4.</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160; };</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160;</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; <span class="keywordflow">return</span> Convolution2d3x3DilationTestCommon&lt;ArmnnType, ArmnnBType&gt;(</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; workloadFactory,</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; memoryManager,</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; inputNoQuantizedValues,</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; inputTensorInfo,</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160; kernelNoQuantizedValues,</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160; kernelTensorInfo,</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160; outputExpectedNoQuantizedValues,</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160; outputTensorInfo,</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160; 3,</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160; 3,</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160; layout,</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; biasEnabled);</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;}</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>
508</div><!-- fragment -->
509</div>
510</div>
511<a id="a90abce368d7f16012bef5ee461329484"></a>
512<h2 class="memtitle"><span class="permalink"><a href="#a90abce368d7f16012bef5ee461329484">&#9670;&nbsp;</a></span>Convolution2d3x3Dilation3x3Test()</h2>
513
514<div class="memitem">
515<div class="memproto">
516 <table class="memname">
517 <tr>
518 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;T, 4&gt; Convolution2d3x3Dilation3x3Test </td>
519 <td>(</td>
520 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
521 <td class="paramname"><em>workloadFactory</em>, </td>
522 </tr>
523 <tr>
524 <td class="paramkey"></td>
525 <td></td>
526 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
527 <td class="paramname"><em>memoryManager</em>, </td>
528 </tr>
529 <tr>
530 <td class="paramkey"></td>
531 <td></td>
532 <td class="paramtype">bool&#160;</td>
533 <td class="paramname"><em>biasEnabled</em>, </td>
534 </tr>
535 <tr>
536 <td class="paramkey"></td>
537 <td></td>
538 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
539 <td class="paramname"><em>layout</em>&#160;</td>
540 </tr>
541 <tr>
542 <td></td>
543 <td>)</td>
544 <td></td><td></td>
545 </tr>
546 </table>
547</div><div class="memdoc">
548
549<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l01083">1083</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
550<div class="fragment"><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160;{</div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> inputTensorInfo({1, 1, 10, 10}, ArmnnType);</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160; std::vector&lt;float&gt; inputNoQuantizedValues =</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; {</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; };</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> kernelTensorInfo({ 1, 1, 3, 3}, ArmnnType);</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; std::vector&lt;float&gt; kernelNoQuantizedValues =</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160; {</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160; 1, 2, 3,</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; 4, 5, 6,</div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; 7, 8, 9</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160; };</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160; <span class="comment">// Since the dilation rate is 3 this will dilate the kernel to be like 7x7,</span></div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160; <span class="comment">// therefore the output will be 4x4: (I−K+2P)/S +1 =&gt; (10-7 +0)/1 +1</span></div><div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> outputTensorInfo({ 1, 1, 4, 4}, ArmnnType);</div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160; std::vector&lt;float&gt; outputExpectedNoQuantizedValues =</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; {</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; 3., 2., 2., 2.</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160; };</div><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; <span class="keywordflow">return</span> Convolution2d3x3DilationTestCommon&lt;ArmnnType, ArmnnBType&gt;(</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160; workloadFactory,</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160; memoryManager,</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; inputNoQuantizedValues,</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; inputTensorInfo,</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; kernelNoQuantizedValues,</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; kernelTensorInfo,</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; outputExpectedNoQuantizedValues,</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; outputTensorInfo,</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; 3,</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; 3,</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; layout,</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; biasEnabled);</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160;}</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>
551</div><!-- fragment -->
552</div>
553</div>
554<a id="a48884a37a6b783185c608a68cfce752f"></a>
555<h2 class="memtitle"><span class="permalink"><a href="#a48884a37a6b783185c608a68cfce752f">&#9670;&nbsp;</a></span>Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest()</h2>
556
557<div class="memitem">
558<div class="memproto">
559 <table class="memname">
560 <tr>
561 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest </td>
562 <td>(</td>
563 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
564 <td class="paramname"><em>workloadFactory</em>, </td>
565 </tr>
566 <tr>
567 <td class="paramkey"></td>
568 <td></td>
569 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
570 <td class="paramname"><em>memoryManager</em>, </td>
571 </tr>
572 <tr>
573 <td class="paramkey"></td>
574 <td></td>
575 <td class="paramtype"><a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
576 <td class="paramname"><em>layout</em>&#160;</td>
577 </tr>
578 <tr>
579 <td></td>
580 <td>)</td>
581 <td></td><td></td>
582 </tr>
583 </table>
584</div><div class="memdoc">
585
586<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03064">3064</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
587
588<p class="reference">References <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l00869">Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTestCommon()</a>, and <a class="el" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::Float32</a>.</p>
589<div class="fragment"><div class="line"><a name="l03068"></a><span class="lineno"> 3068</span>&#160;{</div><div class="line"><a name="l03069"></a><span class="lineno"> 3069</span>&#160; <span class="keywordflow">return</span> <a class="code" href="_conv2d_test_impl_8cpp.xhtml#a35ad1225c524b4594b461e613695ee4a">Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTestCommon</a></div><div class="line"><a name="l03070"></a><span class="lineno"> 3070</span>&#160; &lt;<a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a>, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03071"></a><span class="lineno"> 3071</span>&#160; workloadFactory, memoryManager, layout, 0.0f, 0);</div><div class="line"><a name="l03072"></a><span class="lineno"> 3072</span>&#160;}</div><div class="ttc" id="_conv2d_test_impl_8cpp_xhtml_a35ad1225c524b4594b461e613695ee4a"><div class="ttname"><a href="_conv2d_test_impl_8cpp.xhtml#a35ad1225c524b4594b461e613695ee4a">Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTestCommon</a></div><div class="ttdeci">LayerTestResult&lt; T, 4 &gt; Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTestCommon(armnn::IWorkloadFactory &amp;workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &amp;memoryManager, const armnn::DataLayout layout, float qScale, int32_t qOffset)</div><div class="ttdef"><b>Definition:</b> <a href="_conv2d_test_impl_8cpp_source.xhtml#l00869">Conv2dTestImpl.cpp:869</a></div></div>
590<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a></div></div>
591</div><!-- fragment -->
592</div>
593</div>
594<a id="af7f2cd23423130ebdd916de12bc0eb1d"></a>
595<h2 class="memtitle"><span class="permalink"><a href="#af7f2cd23423130ebdd916de12bc0eb1d">&#9670;&nbsp;</a></span>Convolution2dAsymmetricPaddingTest()</h2>
596
597<div class="memitem">
598<div class="memproto">
599 <table class="memname">
600 <tr>
601 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; Convolution2dAsymmetricPaddingTest </td>
602 <td>(</td>
603 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
604 <td class="paramname"><em>workloadFactory</em>, </td>
605 </tr>
606 <tr>
607 <td class="paramkey"></td>
608 <td></td>
609 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
610 <td class="paramname"><em>memoryManager</em>, </td>
611 </tr>
612 <tr>
613 <td class="paramkey"></td>
614 <td></td>
615 <td class="paramtype"><a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
616 <td class="paramname"><em>layout</em>&#160;</td>
617 </tr>
618 <tr>
619 <td></td>
620 <td>)</td>
621 <td></td><td></td>
622 </tr>
623 </table>
624</div><div class="memdoc">
625
626<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03055">3055</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
627<div class="fragment"><div class="line"><a name="l03059"></a><span class="lineno"> 3059</span>&#160;{</div><div class="line"><a name="l03060"></a><span class="lineno"> 3060</span>&#160; <span class="keywordflow">return</span> SimpleConvolution2dAsymmetricPaddingTestCommon&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03061"></a><span class="lineno"> 3061</span>&#160; workloadFactory, memoryManager, layout, 0.0f, 0);</div><div class="line"><a name="l03062"></a><span class="lineno"> 3062</span>&#160;}</div></div><!-- fragment -->
628</div>
629</div>
630<a id="a370a5216668b507284677234264a22a2"></a>
631<h2 class="memtitle"><span class="permalink"><a href="#a370a5216668b507284677234264a22a2">&#9670;&nbsp;</a></span>Convolution2dPerAxisQuantTest()</h2>
632
633<div class="memitem">
634<div class="memproto">
635 <table class="memname">
636 <tr>
637 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; Convolution2dPerAxisQuantTest </td>
638 <td>(</td>
639 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
640 <td class="paramname"><em>workloadFactory</em>, </td>
641 </tr>
642 <tr>
643 <td class="paramkey"></td>
644 <td></td>
645 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
646 <td class="paramname"><em>memoryManager</em>, </td>
647 </tr>
648 <tr>
649 <td class="paramkey"></td>
650 <td></td>
651 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
652 <td class="paramname"><em>layout</em>&#160;</td>
653 </tr>
654 <tr>
655 <td></td>
656 <td>)</td>
657 <td></td><td></td>
658 </tr>
659 </table>
660</div><div class="memdoc">
661
662<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03092">3092</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
663
664<p class="reference">References <a class="el" href="_tensor_copy_utils_8cpp_source.xhtml#l00019">AllocateAndCopyDataToITensorHandle()</a>, <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#l01159">IWorkloadFactory::CreateConvolution2d()</a>, <a class="el" href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">IWorkloadFactory::CreateTensorHandle()</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00438">Convolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00440">Convolution2dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00428">Convolution2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00422">Convolution2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00424">Convolution2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00426">Convolution2dDescriptor::m_PadTop</a>, <a class="el" href="_workload_data_8hpp_source.xhtml#l00049">QueueDescriptorWithParameters&lt; LayerDescriptor &gt;::m_Parameters</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00430">Convolution2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00432">Convolution2dDescriptor::m_StrideY</a>, <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::NCHW</a>, <a class="el" href="_layer_test_result_8hpp_source.xhtml#l00040">LayerTestResult&lt; T, n &gt;::output</a>, <a class="el" href="_layer_test_result_8hpp_source.xhtml#l00041">LayerTestResult&lt; T, n &gt;::outputExpected</a>, and <a class="el" href="_data_layout_utils_8hpp_source.xhtml#l00026">PermuteTensorNhwcToNchw()</a>.</p>
665<div class="fragment"><div class="line"><a name="l03096"></a><span class="lineno"> 3096</span>&#160;{</div><div class="line"><a name="l03097"></a><span class="lineno"> 3097</span>&#160; <span class="keyword">using namespace </span><a class="code" href="namespacearmnn.xhtml">armnn</a>;</div><div class="line"><a name="l03098"></a><span class="lineno"> 3098</span>&#160;</div><div class="line"><a name="l03099"></a><span class="lineno"> 3099</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> inputType = <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a0a3f57c876f5a230244c38e1453a8a6e">DataType::QAsymmU8</a>;</div><div class="line"><a name="l03100"></a><span class="lineno"> 3100</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> kernelType = <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a9945327825b115e93a3b89f4302e76db">DataType::QSymmS8</a>;</div><div class="line"><a name="l03101"></a><span class="lineno"> 3101</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> biasType = <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6accedffbc6e5308e33d3843e8bdc0dad7">DataType::Signed32</a>;</div><div class="line"><a name="l03102"></a><span class="lineno"> 3102</span>&#160;</div><div class="line"><a name="l03103"></a><span class="lineno"> 3103</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> inputInfo ({ 1, 3, 1, 2 }, inputType, 0.5f, 128);</div><div class="line"><a name="l03104"></a><span class="lineno"> 3104</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> outputInfo({ 1, 3, 1, 3 }, inputType, 1.0f, 128);</div><div class="line"><a name="l03105"></a><span class="lineno"> 3105</span>&#160;</div><div class="line"><a name="l03106"></a><span class="lineno"> 3106</span>&#160; <span class="keyword">const</span> std::vector&lt;float&gt; quantScales{ 0.5f, 0.75f, 1.0f };</div><div class="line"><a name="l03107"></a><span class="lineno"> 3107</span>&#160; constexpr <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> quantDimension = 0;</div><div class="line"><a name="l03108"></a><span class="lineno"> 3108</span>&#160;</div><div class="line"><a name="l03109"></a><span class="lineno"> 3109</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> kernelInfo({ 3, 1, 1, 2 }, kernelType, quantScales, quantDimension);</div><div class="line"><a name="l03110"></a><span class="lineno"> 3110</span>&#160;</div><div class="line"><a name="l03111"></a><span class="lineno"> 3111</span>&#160; <span class="keyword">const</span> std::vector&lt;float&gt; biasQuantScales{ 0.25f, 0.375f, 0.5f };</div><div class="line"><a name="l03112"></a><span class="lineno"> 3112</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> biasInfo({ 3 }, biasType, biasQuantScales, quantDimension);</div><div class="line"><a name="l03113"></a><span class="lineno"> 3113</span>&#160;</div><div class="line"><a name="l03114"></a><span class="lineno"> 3114</span>&#160; std::vector&lt;uint8_t&gt; inputData =</div><div class="line"><a name="l03115"></a><span class="lineno"> 3115</span>&#160; {</div><div class="line"><a name="l03116"></a><span class="lineno"> 3116</span>&#160; 138, 108, 138, 108, 138, 108</div><div class="line"><a name="l03117"></a><span class="lineno"> 3117</span>&#160; };</div><div class="line"><a name="l03118"></a><span class="lineno"> 3118</span>&#160;</div><div class="line"><a name="l03119"></a><span class="lineno"> 3119</span>&#160; std::vector&lt;int8_t&gt; kernelData =</div><div class="line"><a name="l03120"></a><span class="lineno"> 3120</span>&#160; {</div><div class="line"><a name="l03121"></a><span class="lineno"> 3121</span>&#160; 1, 2, 1, 2, 1, 2</div><div class="line"><a name="l03122"></a><span class="lineno"> 3122</span>&#160; };</div><div class="line"><a name="l03123"></a><span class="lineno"> 3123</span>&#160;</div><div class="line"><a name="l03124"></a><span class="lineno"> 3124</span>&#160; std::vector&lt;int32_t&gt; biasData =</div><div class="line"><a name="l03125"></a><span class="lineno"> 3125</span>&#160; {</div><div class="line"><a name="l03126"></a><span class="lineno"> 3126</span>&#160; 4, 4, 4</div><div class="line"><a name="l03127"></a><span class="lineno"> 3127</span>&#160; };</div><div class="line"><a name="l03128"></a><span class="lineno"> 3128</span>&#160;</div><div class="line"><a name="l03129"></a><span class="lineno"> 3129</span>&#160; std::vector&lt;uint8_t&gt; expectedOutputData =</div><div class="line"><a name="l03130"></a><span class="lineno"> 3130</span>&#160; {</div><div class="line"><a name="l03131"></a><span class="lineno"> 3131</span>&#160; 121, 118, 115, 121, 118, 115, 121, 118, 115</div><div class="line"><a name="l03132"></a><span class="lineno"> 3132</span>&#160; };</div><div class="line"><a name="l03133"></a><span class="lineno"> 3133</span>&#160;</div><div class="line"><a name="l03134"></a><span class="lineno"> 3134</span>&#160; <span class="keywordflow">if</span> (layout == <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">DataLayout::NCHW</a>)</div><div class="line"><a name="l03135"></a><span class="lineno"> 3135</span>&#160; {</div><div class="line"><a name="l03136"></a><span class="lineno"> 3136</span>&#160; <a class="code" href="_data_layout_utils_8hpp.xhtml#a1452f049aef30409b3b649af2be7ff82">PermuteTensorNhwcToNchw</a>(inputInfo, inputData);</div><div class="line"><a name="l03137"></a><span class="lineno"> 3137</span>&#160; <a class="code" href="_data_layout_utils_8hpp.xhtml#a1452f049aef30409b3b649af2be7ff82">PermuteTensorNhwcToNchw</a>(kernelInfo, kernelData);</div><div class="line"><a name="l03138"></a><span class="lineno"> 3138</span>&#160; <a class="code" href="_data_layout_utils_8hpp.xhtml#a1452f049aef30409b3b649af2be7ff82">PermuteTensorNhwcToNchw</a>(outputInfo, expectedOutputData);</div><div class="line"><a name="l03139"></a><span class="lineno"> 3139</span>&#160; }</div><div class="line"><a name="l03140"></a><span class="lineno"> 3140</span>&#160;</div><div class="line"><a name="l03141"></a><span class="lineno"> 3141</span>&#160; <a class="code" href="structarmnn_1_1_convolution2d_descriptor.xhtml">Convolution2dDescriptor</a> descriptor;</div><div class="line"><a name="l03142"></a><span class="lineno"> 3142</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_convolution2d_descriptor.xhtml#afe6a3377c4531315354def9023c8fdda">m_StrideX</a> = 1;</div><div class="line"><a name="l03143"></a><span class="lineno"> 3143</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_convolution2d_descriptor.xhtml#ac1fe174bbadfb39a2b636940c2e647c8">m_StrideY</a> = 1;</div><div class="line"><a name="l03144"></a><span class="lineno"> 3144</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_convolution2d_descriptor.xhtml#ac18546ebbebbb32fe0a03baa9bf2c600">m_PadLeft</a> = 0;</div><div class="line"><a name="l03145"></a><span class="lineno"> 3145</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_convolution2d_descriptor.xhtml#a002bc30e590d78cbb4f4d12171055ca7">m_PadRight</a> = 0;</div><div class="line"><a name="l03146"></a><span class="lineno"> 3146</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_convolution2d_descriptor.xhtml#a56b51f56cef50cdfa554258eecdab046">m_PadTop</a> = 0;</div><div class="line"><a name="l03147"></a><span class="lineno"> 3147</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_convolution2d_descriptor.xhtml#aa9e49717ebdb741e8c767741647fc618">m_PadBottom</a> = 0;</div><div class="line"><a name="l03148"></a><span class="lineno"> 3148</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_convolution2d_descriptor.xhtml#aea202e14d8874cefd9a0f778022b7e25">m_BiasEnabled</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l03149"></a><span class="lineno"> 3149</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_convolution2d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">m_DataLayout</a> = layout;</div><div class="line"><a name="l03150"></a><span class="lineno"> 3150</span>&#160;</div><div class="line"><a name="l03151"></a><span class="lineno"> 3151</span>&#160; std::unique_ptr&lt;ITensorHandle&gt; inputHandle = workloadFactory.<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">CreateTensorHandle</a>(inputInfo);</div><div class="line"><a name="l03152"></a><span class="lineno"> 3152</span>&#160; std::unique_ptr&lt;ITensorHandle&gt; outputHandle = workloadFactory.<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">CreateTensorHandle</a>(outputInfo);</div><div class="line"><a name="l03153"></a><span class="lineno"> 3153</span>&#160;</div><div class="line"><a name="l03154"></a><span class="lineno"> 3154</span>&#160; <a class="code" href="structarmnn_1_1_workload_info.xhtml">WorkloadInfo</a> workloadInfo;</div><div class="line"><a name="l03155"></a><span class="lineno"> 3155</span>&#160; <a class="code" href="classarmnn_1_1_scoped_cpu_tensor_handle.xhtml">ScopedCpuTensorHandle</a> weightTensor(kernelInfo);</div><div class="line"><a name="l03156"></a><span class="lineno"> 3156</span>&#160; <a class="code" href="classarmnn_1_1_scoped_cpu_tensor_handle.xhtml">ScopedCpuTensorHandle</a> biasTensor(biasInfo);</div><div class="line"><a name="l03157"></a><span class="lineno"> 3157</span>&#160;</div><div class="line"><a name="l03158"></a><span class="lineno"> 3158</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#afaaca8c3f3a467d124bba44067d2afa8">AllocateAndCopyDataToITensorHandle</a>(&amp;weightTensor, kernelData.data());</div><div class="line"><a name="l03159"></a><span class="lineno"> 3159</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#afaaca8c3f3a467d124bba44067d2afa8">AllocateAndCopyDataToITensorHandle</a>(&amp;biasTensor, biasData.data());</div><div class="line"><a name="l03160"></a><span class="lineno"> 3160</span>&#160;</div><div class="line"><a name="l03161"></a><span class="lineno"> 3161</span>&#160; <a class="code" href="structarmnn_1_1_convolution2d_queue_descriptor.xhtml">Convolution2dQueueDescriptor</a> queueDescriptor;</div><div class="line"><a name="l03162"></a><span class="lineno"> 3162</span>&#160; queueDescriptor.<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a> = descriptor;</div><div class="line"><a name="l03163"></a><span class="lineno"> 3163</span>&#160; queueDescriptor.m_Weight = &amp;weightTensor;</div><div class="line"><a name="l03164"></a><span class="lineno"> 3164</span>&#160; queueDescriptor.m_Bias = &amp;biasTensor;</div><div class="line"><a name="l03165"></a><span class="lineno"> 3165</span>&#160;</div><div class="line"><a name="l03166"></a><span class="lineno"> 3166</span>&#160; AddInputToWorkload(queueDescriptor, workloadInfo, inputInfo, inputHandle.get());</div><div class="line"><a name="l03167"></a><span class="lineno"> 3167</span>&#160; AddOutputToWorkload(queueDescriptor, workloadInfo, outputInfo, outputHandle.get());</div><div class="line"><a name="l03168"></a><span class="lineno"> 3168</span>&#160;</div><div class="line"><a name="l03169"></a><span class="lineno"> 3169</span>&#160; std::unique_ptr&lt;IWorkload&gt; workload = workloadFactory.<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml#a2184995027cd2c9f9980206de9658855">CreateConvolution2d</a>(queueDescriptor, workloadInfo);</div><div class="line"><a name="l03170"></a><span class="lineno"> 3170</span>&#160; inputHandle-&gt;Allocate();</div><div class="line"><a name="l03171"></a><span class="lineno"> 3171</span>&#160; outputHandle-&gt;Allocate();</div><div class="line"><a name="l03172"></a><span class="lineno"> 3172</span>&#160;</div><div class="line"><a name="l03173"></a><span class="lineno"> 3173</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#ae15f1a3c55d2db87683577de9fa4437c">CopyDataToITensorHandle</a>(inputHandle.get(), inputData.data());</div><div class="line"><a name="l03174"></a><span class="lineno"> 3174</span>&#160;</div><div class="line"><a name="l03175"></a><span class="lineno"> 3175</span>&#160; ExecuteWorkload(*workload, memoryManager);</div><div class="line"><a name="l03176"></a><span class="lineno"> 3176</span>&#160;</div><div class="line"><a name="l03177"></a><span class="lineno"> 3177</span>&#160; <a class="code" href="struct_layer_test_result.xhtml">LayerTestResult&lt;uint8_t, 4&gt;</a> ret(outputInfo);</div><div class="line"><a name="l03178"></a><span class="lineno"> 3178</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#a99b626c58a926dc7d6df78d22ec186c8">CopyDataFromITensorHandle</a>(ret.output.origin(), outputHandle.get());</div><div class="line"><a name="l03179"></a><span class="lineno"> 3179</span>&#160; ret.outputExpected = MakeTensor&lt;uint8_t, 4&gt;(outputInfo, expectedOutputData);</div><div class="line"><a name="l03180"></a><span class="lineno"> 3180</span>&#160;</div><div class="line"><a name="l03181"></a><span class="lineno"> 3181</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l03182"></a><span class="lineno"> 3182</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_convolution2d_descriptor_xhtml_aa9e49717ebdb741e8c767741647fc618"><div class="ttname"><a href="structarmnn_1_1_convolution2d_descriptor.xhtml#aa9e49717ebdb741e8c767741647fc618">armnn::Convolution2dDescriptor::m_PadBottom</a></div><div class="ttdeci">uint32_t m_PadBottom</div><div class="ttdoc">Padding bottom value in the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00428">Descriptors.hpp:428</a></div></div>
666<div class="ttc" id="structarmnn_1_1_convolution2d_descriptor_xhtml_aea202e14d8874cefd9a0f778022b7e25"><div class="ttname"><a href="structarmnn_1_1_convolution2d_descriptor.xhtml#aea202e14d8874cefd9a0f778022b7e25">armnn::Convolution2dDescriptor::m_BiasEnabled</a></div><div class="ttdeci">bool m_BiasEnabled</div><div class="ttdoc">Enable/disable bias. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00438">Descriptors.hpp:438</a></div></div>
667<div class="ttc" id="structarmnn_1_1_convolution2d_descriptor_xhtml_a6089e1ca91914015777ea780a513131a"><div class="ttname"><a href="structarmnn_1_1_convolution2d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">armnn::Convolution2dDescriptor::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#l00440">Descriptors.hpp:440</a></div></div>
668<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>
669<div class="ttc" id="structarmnn_1_1_convolution2d_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_convolution2d_descriptor.xhtml">armnn::Convolution2dDescriptor</a></div><div class="ttdoc">A Convolution2dDescriptor for the Convolution2dLayer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00392">Descriptors.hpp:392</a></div></div>
670<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6accedffbc6e5308e33d3843e8bdc0dad7"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6accedffbc6e5308e33d3843e8bdc0dad7">armnn::DataType::Signed32</a></div></div>
671<div class="ttc" id="structarmnn_1_1_convolution2d_descriptor_xhtml_a002bc30e590d78cbb4f4d12171055ca7"><div class="ttname"><a href="structarmnn_1_1_convolution2d_descriptor.xhtml#a002bc30e590d78cbb4f4d12171055ca7">armnn::Convolution2dDescriptor::m_PadRight</a></div><div class="ttdeci">uint32_t m_PadRight</div><div class="ttdoc">Padding right value in the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00424">Descriptors.hpp:424</a></div></div>
672<div class="ttc" id="namespacearmnn_xhtml"><div class="ttname"><a href="namespacearmnn.xhtml">armnn</a></div><div class="ttdoc">Copyright (c) 2020 ARM Limited. </div><div class="ttdef"><b>Definition:</b> <a href="00__introduction_8dox_source.xhtml#l00025">00_introduction.dox:25</a></div></div>
673<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>
674<div class="ttc" id="structarmnn_1_1_convolution2d_descriptor_xhtml_a56b51f56cef50cdfa554258eecdab046"><div class="ttname"><a href="structarmnn_1_1_convolution2d_descriptor.xhtml#a56b51f56cef50cdfa554258eecdab046">armnn::Convolution2dDescriptor::m_PadTop</a></div><div class="ttdeci">uint32_t m_PadTop</div><div class="ttdoc">Padding top value in the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00426">Descriptors.hpp:426</a></div></div>
675<div class="ttc" id="structarmnn_1_1_convolution2d_descriptor_xhtml_afe6a3377c4531315354def9023c8fdda"><div class="ttname"><a href="structarmnn_1_1_convolution2d_descriptor.xhtml#afe6a3377c4531315354def9023c8fdda">armnn::Convolution2dDescriptor::m_StrideX</a></div><div class="ttdeci">uint32_t m_StrideX</div><div class="ttdoc">Stride value when proceeding through input for the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00430">Descriptors.hpp:430</a></div></div>
676<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">armnn::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdef"><b>Definition:</b> <a href="_types_8hpp_source.xhtml#l00032">Types.hpp:32</a></div></div>
677<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a0a3f57c876f5a230244c38e1453a8a6e"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a0a3f57c876f5a230244c38e1453a8a6e">armnn::DataType::QAsymmU8</a></div></div>
678<div class="ttc" id="_tensor_copy_utils_8cpp_xhtml_afaaca8c3f3a467d124bba44067d2afa8"><div class="ttname"><a href="_tensor_copy_utils_8cpp.xhtml#afaaca8c3f3a467d124bba44067d2afa8">AllocateAndCopyDataToITensorHandle</a></div><div class="ttdeci">void AllocateAndCopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_copy_utils_8cpp_source.xhtml#l00019">TensorCopyUtils.cpp:19</a></div></div>
679<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>
680<div class="ttc" id="structarmnn_1_1_convolution2d_descriptor_xhtml_ac1fe174bbadfb39a2b636940c2e647c8"><div class="ttname"><a href="structarmnn_1_1_convolution2d_descriptor.xhtml#ac1fe174bbadfb39a2b636940c2e647c8">armnn::Convolution2dDescriptor::m_StrideY</a></div><div class="ttdeci">uint32_t m_StrideY</div><div class="ttdoc">Stride value when proceeding through input for the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00432">Descriptors.hpp:432</a></div></div>
681<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>
682<div class="ttc" id="structarmnn_1_1_convolution2d_queue_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_convolution2d_queue_descriptor.xhtml">armnn::Convolution2dQueueDescriptor</a></div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00168">WorkloadData.hpp:168</a></div></div>
683<div class="ttc" id="classarmnn_1_1_scoped_cpu_tensor_handle_xhtml"><div class="ttname"><a href="classarmnn_1_1_scoped_cpu_tensor_handle.xhtml">armnn::ScopedCpuTensorHandle</a></div><div class="ttdef"><b>Definition:</b> <a href="_cpu_tensor_handle_8hpp_source.xhtml#l00106">CpuTensorHandle.hpp:106</a></div></div>
684<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>
685<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>
686<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a9945327825b115e93a3b89f4302e76db"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a9945327825b115e93a3b89f4302e76db">armnn::DataType::QSymmS8</a></div></div>
687<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::DataLayout::NCHW</a></div></div>
688<div class="ttc" id="structarmnn_1_1_convolution2d_descriptor_xhtml_ac18546ebbebbb32fe0a03baa9bf2c600"><div class="ttname"><a href="structarmnn_1_1_convolution2d_descriptor.xhtml#ac18546ebbebbb32fe0a03baa9bf2c600">armnn::Convolution2dDescriptor::m_PadLeft</a></div><div class="ttdeci">uint32_t m_PadLeft</div><div class="ttdoc">Padding left value in the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00422">Descriptors.hpp:422</a></div></div>
689<div class="ttc" id="classarmnn_1_1_i_workload_factory_xhtml_a2184995027cd2c9f9980206de9658855"><div class="ttname"><a href="classarmnn_1_1_i_workload_factory.xhtml#a2184995027cd2c9f9980206de9658855">armnn::IWorkloadFactory::CreateConvolution2d</a></div><div class="ttdeci">virtual std::unique_ptr&lt; IWorkload &gt; CreateConvolution2d(const Convolution2dQueueDescriptor &amp;descriptor, const WorkloadInfo &amp;info) const</div><div class="ttdef"><b>Definition:</b> <a href="_workload_factory_8cpp_source.xhtml#l01159">WorkloadFactory.cpp:1159</a></div></div>
690<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>
691<div class="ttc" id="_data_layout_utils_8hpp_xhtml_a1452f049aef30409b3b649af2be7ff82"><div class="ttname"><a href="_data_layout_utils_8hpp.xhtml#a1452f049aef30409b3b649af2be7ff82">PermuteTensorNhwcToNchw</a></div><div class="ttdeci">void PermuteTensorNhwcToNchw(armnn::TensorInfo &amp;tensorInfo, std::vector&lt; T &gt; &amp;tensorData)</div><div class="ttdef"><b>Definition:</b> <a href="_data_layout_utils_8hpp_source.xhtml#l00026">DataLayoutUtils.hpp:26</a></div></div>
692</div><!-- fragment -->
693</div>
694</div>
695<a id="acffa50ae3185e3e5302909f27e7e9a02"></a>
696<h2 class="memtitle"><span class="permalink"><a href="#acffa50ae3185e3e5302909f27e7e9a02">&#9670;&nbsp;</a></span>DepthwiseConvolution2d2x3x3Dilation3x3Test()</h2>
697
698<div class="memitem">
699<div class="memproto">
700 <table class="memname">
701 <tr>
702 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;T, 4&gt; DepthwiseConvolution2d2x3x3Dilation3x3Test </td>
703 <td>(</td>
704 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
705 <td class="paramname"><em>workloadFactory</em>, </td>
706 </tr>
707 <tr>
708 <td class="paramkey"></td>
709 <td></td>
710 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
711 <td class="paramname"><em>memoryManager</em>, </td>
712 </tr>
713 <tr>
714 <td class="paramkey"></td>
715 <td></td>
716 <td class="paramtype">bool&#160;</td>
717 <td class="paramname"><em>biasEnabled</em>, </td>
718 </tr>
719 <tr>
720 <td class="paramkey"></td>
721 <td></td>
722 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
723 <td class="paramname"><em>layout</em>&#160;</td>
724 </tr>
725 <tr>
726 <td></td>
727 <td>)</td>
728 <td></td><td></td>
729 </tr>
730 </table>
731</div><div class="memdoc">
732
733<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l02432">2432</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
734<div class="fragment"><div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>&#160;{</div><div class="line"><a name="l02438"></a><span class="lineno"> 2438</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> inputTensorInfo({1, 2, 10, 10}, ArmnnType);</div><div class="line"><a name="l02439"></a><span class="lineno"> 2439</span>&#160; std::vector&lt;float&gt; inputNoQuantizedValues =</div><div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>&#160; {</div><div class="line"><a name="l02441"></a><span class="lineno"> 2441</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02442"></a><span class="lineno"> 2442</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02443"></a><span class="lineno"> 2443</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02444"></a><span class="lineno"> 2444</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l02445"></a><span class="lineno"> 2445</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l02446"></a><span class="lineno"> 2446</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l02447"></a><span class="lineno"> 2447</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02448"></a><span class="lineno"> 2448</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02449"></a><span class="lineno"> 2449</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>&#160;</div><div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02453"></a><span class="lineno"> 2453</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02454"></a><span class="lineno"> 2454</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02455"></a><span class="lineno"> 2455</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l02456"></a><span class="lineno"> 2456</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l02457"></a><span class="lineno"> 2457</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l02458"></a><span class="lineno"> 2458</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02459"></a><span class="lineno"> 2459</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02460"></a><span class="lineno"> 2460</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02461"></a><span class="lineno"> 2461</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0</div><div class="line"><a name="l02462"></a><span class="lineno"> 2462</span>&#160; };</div><div class="line"><a name="l02463"></a><span class="lineno"> 2463</span>&#160;</div><div class="line"><a name="l02464"></a><span class="lineno"> 2464</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> kernelTensorInfo({ 1, 2, 3, 3}, ArmnnType);</div><div class="line"><a name="l02465"></a><span class="lineno"> 2465</span>&#160; std::vector&lt;float&gt; kernelNoQuantizedValues =</div><div class="line"><a name="l02466"></a><span class="lineno"> 2466</span>&#160; {</div><div class="line"><a name="l02467"></a><span class="lineno"> 2467</span>&#160; 1, 2, 3,</div><div class="line"><a name="l02468"></a><span class="lineno"> 2468</span>&#160; 4, 5, 6,</div><div class="line"><a name="l02469"></a><span class="lineno"> 2469</span>&#160; 7, 8, 9,</div><div class="line"><a name="l02470"></a><span class="lineno"> 2470</span>&#160;</div><div class="line"><a name="l02471"></a><span class="lineno"> 2471</span>&#160; 1, 2, 3,</div><div class="line"><a name="l02472"></a><span class="lineno"> 2472</span>&#160; 4, 5, 6,</div><div class="line"><a name="l02473"></a><span class="lineno"> 2473</span>&#160; 7, 8, 9</div><div class="line"><a name="l02474"></a><span class="lineno"> 2474</span>&#160; };</div><div class="line"><a name="l02475"></a><span class="lineno"> 2475</span>&#160;</div><div class="line"><a name="l02476"></a><span class="lineno"> 2476</span>&#160; <span class="comment">// Since the dilation rate is 3 this will dilate the kernel to be like 7x7,</span></div><div class="line"><a name="l02477"></a><span class="lineno"> 2477</span>&#160; <span class="comment">// therefore the output will be 2x4x4: (I−K+2P)/S +1 =&gt; (10-7 +0)/1 +1</span></div><div class="line"><a name="l02478"></a><span class="lineno"> 2478</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> outputTensorInfo({ 1, 2, 4, 4}, ArmnnType);</div><div class="line"><a name="l02479"></a><span class="lineno"> 2479</span>&#160; std::vector&lt;float&gt; outputExpectedNoQuantizedValues =</div><div class="line"><a name="l02480"></a><span class="lineno"> 2480</span>&#160; {</div><div class="line"><a name="l02481"></a><span class="lineno"> 2481</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l02482"></a><span class="lineno"> 2482</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l02483"></a><span class="lineno"> 2483</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l02484"></a><span class="lineno"> 2484</span>&#160; 3., 2., 2., 2.,</div><div class="line"><a name="l02485"></a><span class="lineno"> 2485</span>&#160;</div><div class="line"><a name="l02486"></a><span class="lineno"> 2486</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l02487"></a><span class="lineno"> 2487</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l02488"></a><span class="lineno"> 2488</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l02489"></a><span class="lineno"> 2489</span>&#160; 3., 2., 2., 2.</div><div class="line"><a name="l02490"></a><span class="lineno"> 2490</span>&#160; };</div><div class="line"><a name="l02491"></a><span class="lineno"> 2491</span>&#160;</div><div class="line"><a name="l02492"></a><span class="lineno"> 2492</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2d3x3DilationTestCommon&lt;ArmnnType, ArmnnBType&gt;(</div><div class="line"><a name="l02493"></a><span class="lineno"> 2493</span>&#160; workloadFactory,</div><div class="line"><a name="l02494"></a><span class="lineno"> 2494</span>&#160; memoryManager,</div><div class="line"><a name="l02495"></a><span class="lineno"> 2495</span>&#160; inputNoQuantizedValues,</div><div class="line"><a name="l02496"></a><span class="lineno"> 2496</span>&#160; inputTensorInfo,</div><div class="line"><a name="l02497"></a><span class="lineno"> 2497</span>&#160; kernelNoQuantizedValues,</div><div class="line"><a name="l02498"></a><span class="lineno"> 2498</span>&#160; kernelTensorInfo,</div><div class="line"><a name="l02499"></a><span class="lineno"> 2499</span>&#160; outputExpectedNoQuantizedValues,</div><div class="line"><a name="l02500"></a><span class="lineno"> 2500</span>&#160; outputTensorInfo,</div><div class="line"><a name="l02501"></a><span class="lineno"> 2501</span>&#160; 3,</div><div class="line"><a name="l02502"></a><span class="lineno"> 2502</span>&#160; 3,</div><div class="line"><a name="l02503"></a><span class="lineno"> 2503</span>&#160; layout,</div><div class="line"><a name="l02504"></a><span class="lineno"> 2504</span>&#160; biasEnabled);</div><div class="line"><a name="l02505"></a><span class="lineno"> 2505</span>&#160;}</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>
735</div><!-- fragment -->
736</div>
737</div>
738<a id="a1c3398bdb48e4ce4643a1eeaf3e054a3"></a>
739<h2 class="memtitle"><span class="permalink"><a href="#a1c3398bdb48e4ce4643a1eeaf3e054a3">&#9670;&nbsp;</a></span>DepthwiseConvolution2d3x3Dilation3x3Test()</h2>
740
741<div class="memitem">
742<div class="memproto">
743 <table class="memname">
744 <tr>
745 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;T, 4&gt; DepthwiseConvolution2d3x3Dilation3x3Test </td>
746 <td>(</td>
747 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
748 <td class="paramname"><em>workloadFactory</em>, </td>
749 </tr>
750 <tr>
751 <td class="paramkey"></td>
752 <td></td>
753 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
754 <td class="paramname"><em>memoryManager</em>, </td>
755 </tr>
756 <tr>
757 <td class="paramkey"></td>
758 <td></td>
759 <td class="paramtype">bool&#160;</td>
760 <td class="paramname"><em>biasEnabled</em>, </td>
761 </tr>
762 <tr>
763 <td class="paramkey"></td>
764 <td></td>
765 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
766 <td class="paramname"><em>layout</em>&#160;</td>
767 </tr>
768 <tr>
769 <td></td>
770 <td>)</td>
771 <td></td><td></td>
772 </tr>
773 </table>
774</div><div class="memdoc">
775
776<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l02376">2376</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
777<div class="fragment"><div class="line"><a name="l02381"></a><span class="lineno"> 2381</span>&#160;{</div><div class="line"><a name="l02382"></a><span class="lineno"> 2382</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> inputTensorInfo({1, 1, 10, 10}, ArmnnType);</div><div class="line"><a name="l02383"></a><span class="lineno"> 2383</span>&#160; std::vector&lt;float&gt; inputNoQuantizedValues =</div><div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>&#160; {</div><div class="line"><a name="l02385"></a><span class="lineno"> 2385</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02386"></a><span class="lineno"> 2386</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02387"></a><span class="lineno"> 2387</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02388"></a><span class="lineno"> 2388</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l02389"></a><span class="lineno"> 2389</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>&#160; 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,</div><div class="line"><a name="l02391"></a><span class="lineno"> 2391</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,</div><div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0</div><div class="line"><a name="l02395"></a><span class="lineno"> 2395</span>&#160; };</div><div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>&#160;</div><div class="line"><a name="l02397"></a><span class="lineno"> 2397</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> kernelTensorInfo({ 1, 1, 3, 3}, ArmnnType);</div><div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>&#160; std::vector&lt;float&gt; kernelNoQuantizedValues =</div><div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>&#160; {</div><div class="line"><a name="l02400"></a><span class="lineno"> 2400</span>&#160; 1, 2, 3,</div><div class="line"><a name="l02401"></a><span class="lineno"> 2401</span>&#160; 4, 5, 6,</div><div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>&#160; 7, 8, 9</div><div class="line"><a name="l02403"></a><span class="lineno"> 2403</span>&#160; };</div><div class="line"><a name="l02404"></a><span class="lineno"> 2404</span>&#160;</div><div class="line"><a name="l02405"></a><span class="lineno"> 2405</span>&#160; <span class="comment">// Since the dilation rate is 3 this will dilate the kernel to be like 7x7,</span></div><div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>&#160; <span class="comment">// therefore the output will be 4x4: (I−K+2P)/S +1 =&gt; (10-7 +0)/1 +1</span></div><div class="line"><a name="l02407"></a><span class="lineno"> 2407</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> outputTensorInfo({ 1, 1, 4, 4}, ArmnnType);</div><div class="line"><a name="l02408"></a><span class="lineno"> 2408</span>&#160; std::vector&lt;float&gt; outputExpectedNoQuantizedValues =</div><div class="line"><a name="l02409"></a><span class="lineno"> 2409</span>&#160; {</div><div class="line"><a name="l02410"></a><span class="lineno"> 2410</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l02411"></a><span class="lineno"> 2411</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l02412"></a><span class="lineno"> 2412</span>&#160; 6., 5., 5., 5.,</div><div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>&#160; 3., 2., 2., 2.</div><div class="line"><a name="l02414"></a><span class="lineno"> 2414</span>&#160; };</div><div class="line"><a name="l02415"></a><span class="lineno"> 2415</span>&#160;</div><div class="line"><a name="l02416"></a><span class="lineno"> 2416</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2d3x3DilationTestCommon&lt;ArmnnType, ArmnnBType&gt;(</div><div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>&#160; workloadFactory,</div><div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>&#160; memoryManager,</div><div class="line"><a name="l02419"></a><span class="lineno"> 2419</span>&#160; inputNoQuantizedValues,</div><div class="line"><a name="l02420"></a><span class="lineno"> 2420</span>&#160; inputTensorInfo,</div><div class="line"><a name="l02421"></a><span class="lineno"> 2421</span>&#160; kernelNoQuantizedValues,</div><div class="line"><a name="l02422"></a><span class="lineno"> 2422</span>&#160; kernelTensorInfo,</div><div class="line"><a name="l02423"></a><span class="lineno"> 2423</span>&#160; outputExpectedNoQuantizedValues,</div><div class="line"><a name="l02424"></a><span class="lineno"> 2424</span>&#160; outputTensorInfo,</div><div class="line"><a name="l02425"></a><span class="lineno"> 2425</span>&#160; 3,</div><div class="line"><a name="l02426"></a><span class="lineno"> 2426</span>&#160; 3,</div><div class="line"><a name="l02427"></a><span class="lineno"> 2427</span>&#160; layout,</div><div class="line"><a name="l02428"></a><span class="lineno"> 2428</span>&#160; biasEnabled);</div><div class="line"><a name="l02429"></a><span class="lineno"> 2429</span>&#160;}</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>
778</div><!-- fragment -->
779</div>
780</div>
781<a id="abf326cbf49ec19c6272fe7c244b7817c"></a>
782<h2 class="memtitle"><span class="permalink"><a href="#abf326cbf49ec19c6272fe7c244b7817c">&#9670;&nbsp;</a></span>DepthwiseConvolution2dAsymmetricTest()</h2>
783
784<div class="memitem">
785<div class="memproto">
786 <table class="memname">
787 <tr>
788 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; DepthwiseConvolution2dAsymmetricTest </td>
789 <td>(</td>
790 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
791 <td class="paramname"><em>workloadFactory</em>, </td>
792 </tr>
793 <tr>
794 <td class="paramkey"></td>
795 <td></td>
796 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
797 <td class="paramname"><em>memoryManager</em>, </td>
798 </tr>
799 <tr>
800 <td class="paramkey"></td>
801 <td></td>
802 <td class="paramtype">bool&#160;</td>
803 <td class="paramname"><em>biasEnabled</em>, </td>
804 </tr>
805 <tr>
806 <td class="paramkey"></td>
807 <td></td>
808 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
809 <td class="paramname"><em>layout</em>&#160;</td>
810 </tr>
811 <tr>
812 <td></td>
813 <td>)</td>
814 <td></td><td></td>
815 </tr>
816 </table>
817</div><div class="memdoc">
818
819<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03254">3254</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
820<div class="fragment"><div class="line"><a name="l03259"></a><span class="lineno"> 3259</span>&#160;{</div><div class="line"><a name="l03260"></a><span class="lineno"> 3260</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2dAsymmetricTestCommon&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03261"></a><span class="lineno"> 3261</span>&#160; workloadFactory, memoryManager, 0.0f, 0, biasEnabled, layout);</div><div class="line"><a name="l03262"></a><span class="lineno"> 3262</span>&#160;}</div></div><!-- fragment -->
821</div>
822</div>
823<a id="a74346a72d64f7fa3463473424c3098ab"></a>
824<h2 class="memtitle"><span class="permalink"><a href="#a74346a72d64f7fa3463473424c3098ab">&#9670;&nbsp;</a></span>DepthwiseConvolution2dDepthMul1Int16Test()</h2>
825
826<div class="memitem">
827<div class="memproto">
828 <table class="memname">
829 <tr>
830 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;int16_t, 4&gt; DepthwiseConvolution2dDepthMul1Int16Test </td>
831 <td>(</td>
832 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
833 <td class="paramname"><em>workloadFactory</em>, </td>
834 </tr>
835 <tr>
836 <td class="paramkey"></td>
837 <td></td>
838 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
839 <td class="paramname"><em>memoryManager</em>, </td>
840 </tr>
841 <tr>
842 <td class="paramkey"></td>
843 <td></td>
844 <td class="paramtype">bool&#160;</td>
845 <td class="paramname"><em>biasEnabled</em>, </td>
846 </tr>
847 <tr>
848 <td class="paramkey"></td>
849 <td></td>
850 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
851 <td class="paramname"><em>layout</em>&#160;</td>
852 </tr>
853 <tr>
854 <td></td>
855 <td>)</td>
856 <td></td><td></td>
857 </tr>
858 </table>
859</div><div class="memdoc">
860
861<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03306">3306</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
862<div class="fragment"><div class="line"><a name="l03311"></a><span class="lineno"> 3311</span>&#160;{</div><div class="line"><a name="l03312"></a><span class="lineno"> 3312</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2dDepthMul1TestImpl&lt;armnn::DataType::QSymmS16, armnn::DataType::Signed32&gt;(</div><div class="line"><a name="l03313"></a><span class="lineno"> 3313</span>&#160; workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout);</div><div class="line"><a name="l03314"></a><span class="lineno"> 3314</span>&#160;}</div></div><!-- fragment -->
863</div>
864</div>
865<a id="a8b32d950a40903f502f5e1ec0dcab0bd"></a>
866<h2 class="memtitle"><span class="permalink"><a href="#a8b32d950a40903f502f5e1ec0dcab0bd">&#9670;&nbsp;</a></span>DepthwiseConvolution2dDepthMul1Test()</h2>
867
868<div class="memitem">
869<div class="memproto">
870 <table class="memname">
871 <tr>
872 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; DepthwiseConvolution2dDepthMul1Test </td>
873 <td>(</td>
874 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
875 <td class="paramname"><em>workloadFactory</em>, </td>
876 </tr>
877 <tr>
878 <td class="paramkey"></td>
879 <td></td>
880 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
881 <td class="paramname"><em>memoryManager</em>, </td>
882 </tr>
883 <tr>
884 <td class="paramkey"></td>
885 <td></td>
886 <td class="paramtype">bool&#160;</td>
887 <td class="paramname"><em>biasEnabled</em>, </td>
888 </tr>
889 <tr>
890 <td class="paramkey"></td>
891 <td></td>
892 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
893 <td class="paramname"><em>layout</em>&#160;</td>
894 </tr>
895 <tr>
896 <td></td>
897 <td>)</td>
898 <td></td><td></td>
899 </tr>
900 </table>
901</div><div class="memdoc">
902
903<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03212">3212</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
904<div class="fragment"><div class="line"><a name="l03217"></a><span class="lineno"> 3217</span>&#160;{</div><div class="line"><a name="l03218"></a><span class="lineno"> 3218</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2dDepthMul1TestImpl&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03219"></a><span class="lineno"> 3219</span>&#160; workloadFactory, memoryManager, 0.0f, 0, biasEnabled, layout);</div><div class="line"><a name="l03220"></a><span class="lineno"> 3220</span>&#160;}</div></div><!-- fragment -->
905</div>
906</div>
907<a id="ae797be34b659db2afe183f0c762fb9b7"></a>
908<h2 class="memtitle"><span class="permalink"><a href="#ae797be34b659db2afe183f0c762fb9b7">&#9670;&nbsp;</a></span>DepthwiseConvolution2dDepthMul1Uint8Test()</h2>
909
910<div class="memitem">
911<div class="memproto">
912 <table class="memname">
913 <tr>
914 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; DepthwiseConvolution2dDepthMul1Uint8Test </td>
915 <td>(</td>
916 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
917 <td class="paramname"><em>workloadFactory</em>, </td>
918 </tr>
919 <tr>
920 <td class="paramkey"></td>
921 <td></td>
922 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
923 <td class="paramname"><em>memoryManager</em>, </td>
924 </tr>
925 <tr>
926 <td class="paramkey"></td>
927 <td></td>
928 <td class="paramtype">bool&#160;</td>
929 <td class="paramname"><em>biasEnabled</em>, </td>
930 </tr>
931 <tr>
932 <td class="paramkey"></td>
933 <td></td>
934 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
935 <td class="paramname"><em>layout</em>&#160;</td>
936 </tr>
937 <tr>
938 <td></td>
939 <td>)</td>
940 <td></td><td></td>
941 </tr>
942 </table>
943</div><div class="memdoc">
944
945<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03274">3274</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
946<div class="fragment"><div class="line"><a name="l03279"></a><span class="lineno"> 3279</span>&#160;{</div><div class="line"><a name="l03280"></a><span class="lineno"> 3280</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2dDepthMul1TestImpl&lt;armnn::DataType::QAsymmU8, armnn::DataType::Signed32&gt;(</div><div class="line"><a name="l03281"></a><span class="lineno"> 3281</span>&#160; workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout);</div><div class="line"><a name="l03282"></a><span class="lineno"> 3282</span>&#160;}</div></div><!-- fragment -->
947</div>
948</div>
949<a id="ab020b4a99bf905b61a1c5e03332b63a6"></a>
950<h2 class="memtitle"><span class="permalink"><a href="#ab020b4a99bf905b61a1c5e03332b63a6">&#9670;&nbsp;</a></span>DepthwiseConvolution2dDepthMul64Test()</h2>
951
952<div class="memitem">
953<div class="memproto">
954 <table class="memname">
955 <tr>
956 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; DepthwiseConvolution2dDepthMul64Test </td>
957 <td>(</td>
958 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
959 <td class="paramname"><em>workloadFactory</em>, </td>
960 </tr>
961 <tr>
962 <td class="paramkey"></td>
963 <td></td>
964 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
965 <td class="paramname"><em>memoryManager</em>&#160;</td>
966 </tr>
967 <tr>
968 <td></td>
969 <td>)</td>
970 <td></td><td></td>
971 </tr>
972 </table>
973</div><div class="memdoc">
974
975<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03222">3222</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
976
977<p class="reference">References <a class="el" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::Float32</a>, and <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::NCHW</a>.</p>
978<div class="fragment"><div class="line"><a name="l03225"></a><span class="lineno"> 3225</span>&#160;{</div><div class="line"><a name="l03226"></a><span class="lineno"> 3226</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> inputTensorInfo({ 1, 1, 2, 2 }, <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a>);</div><div class="line"><a name="l03227"></a><span class="lineno"> 3227</span>&#160; <span class="keyword">auto</span> input = MakeTensor&lt;float, 4&gt;(inputTensorInfo, { 1.f, 2.f, 3.f, 4.f });</div><div class="line"><a name="l03228"></a><span class="lineno"> 3228</span>&#160;</div><div class="line"><a name="l03229"></a><span class="lineno"> 3229</span>&#160; std::vector&lt;float&gt; kernelData;</div><div class="line"><a name="l03230"></a><span class="lineno"> 3230</span>&#160; std::vector&lt;float&gt; singleDepthKernel{ 1.f, -1.f, -1.f, 1.f };</div><div class="line"><a name="l03231"></a><span class="lineno"> 3231</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; 64; ++i)</div><div class="line"><a name="l03232"></a><span class="lineno"> 3232</span>&#160; {</div><div class="line"><a name="l03233"></a><span class="lineno"> 3233</span>&#160; kernelData.insert(kernelData.end(), singleDepthKernel.begin(), singleDepthKernel.end());</div><div class="line"><a name="l03234"></a><span class="lineno"> 3234</span>&#160; }</div><div class="line"><a name="l03235"></a><span class="lineno"> 3235</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> kernelTensorInfo({ 64, 1, 2, 2 }, <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a>);</div><div class="line"><a name="l03236"></a><span class="lineno"> 3236</span>&#160; <span class="keyword">auto</span> kernel = MakeTensor&lt;float, 4&gt;(kernelTensorInfo, kernelData);</div><div class="line"><a name="l03237"></a><span class="lineno"> 3237</span>&#160;</div><div class="line"><a name="l03238"></a><span class="lineno"> 3238</span>&#160; std::vector&lt;float&gt; expectedOutputData(64, 0.f);</div><div class="line"><a name="l03239"></a><span class="lineno"> 3239</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> outputTensorInfo({ 1, 64, 1, 1 }, <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a>);</div><div class="line"><a name="l03240"></a><span class="lineno"> 3240</span>&#160; <span class="keyword">auto</span> expectedOutput = MakeTensor&lt;float, 4&gt;(outputTensorInfo, expectedOutputData);</div><div class="line"><a name="l03241"></a><span class="lineno"> 3241</span>&#160;</div><div class="line"><a name="l03242"></a><span class="lineno"> 3242</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2dTestImpl&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03243"></a><span class="lineno"> 3243</span>&#160; workloadFactory,</div><div class="line"><a name="l03244"></a><span class="lineno"> 3244</span>&#160; memoryManager,</div><div class="line"><a name="l03245"></a><span class="lineno"> 3245</span>&#160; input,</div><div class="line"><a name="l03246"></a><span class="lineno"> 3246</span>&#160; kernel,</div><div class="line"><a name="l03247"></a><span class="lineno"> 3247</span>&#160; boost::multi_array&lt;float, 1&gt;(),</div><div class="line"><a name="l03248"></a><span class="lineno"> 3248</span>&#160; expectedOutput,</div><div class="line"><a name="l03249"></a><span class="lineno"> 3249</span>&#160; 0.f,</div><div class="line"><a name="l03250"></a><span class="lineno"> 3250</span>&#160; 0,</div><div class="line"><a name="l03251"></a><span class="lineno"> 3251</span>&#160; <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::DataLayout::NCHW</a>);</div><div class="line"><a name="l03252"></a><span class="lineno"> 3252</span>&#160;}</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>
979<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a></div></div>
980<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::DataLayout::NCHW</a></div></div>
981</div><!-- fragment -->
982</div>
983</div>
984<a id="a0cccb5cffee89004bc8d9fb309ed6636"></a>
985<h2 class="memtitle"><span class="permalink"><a href="#a0cccb5cffee89004bc8d9fb309ed6636">&#9670;&nbsp;</a></span>DepthwiseConvolution2dDepthNhwcTest()</h2>
986
987<div class="memitem">
988<div class="memproto">
989 <table class="memname">
990 <tr>
991 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; DepthwiseConvolution2dDepthNhwcTest </td>
992 <td>(</td>
993 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
994 <td class="paramname"><em>workloadFactory</em>, </td>
995 </tr>
996 <tr>
997 <td class="paramkey"></td>
998 <td></td>
999 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1000 <td class="paramname"><em>memoryManager</em>, </td>
1001 </tr>
1002 <tr>
1003 <td class="paramkey"></td>
1004 <td></td>
1005 <td class="paramtype">bool&#160;</td>
1006 <td class="paramname"><em>biasEnabled</em>&#160;</td>
1007 </tr>
1008 <tr>
1009 <td></td>
1010 <td>)</td>
1011 <td></td><td></td>
1012 </tr>
1013 </table>
1014</div><div class="memdoc">
1015
1016<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03203">3203</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1017<div class="fragment"><div class="line"><a name="l03207"></a><span class="lineno"> 3207</span>&#160;{</div><div class="line"><a name="l03208"></a><span class="lineno"> 3208</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2dNhwcTestCommon&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03209"></a><span class="lineno"> 3209</span>&#160; workloadFactory, memoryManager, 0.0f, 0, biasEnabled);</div><div class="line"><a name="l03210"></a><span class="lineno"> 3210</span>&#160;}</div></div><!-- fragment -->
1018</div>
1019</div>
1020<a id="a2ae97c2dd6621f4972c571cf1ec2a005"></a>
1021<h2 class="memtitle"><span class="permalink"><a href="#a2ae97c2dd6621f4972c571cf1ec2a005">&#9670;&nbsp;</a></span>DepthwiseConvolution2dInt16Test()</h2>
1022
1023<div class="memitem">
1024<div class="memproto">
1025 <table class="memname">
1026 <tr>
1027 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;int16_t, 4&gt; DepthwiseConvolution2dInt16Test </td>
1028 <td>(</td>
1029 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1030 <td class="paramname"><em>workloadFactory</em>, </td>
1031 </tr>
1032 <tr>
1033 <td class="paramkey"></td>
1034 <td></td>
1035 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1036 <td class="paramname"><em>memoryManager</em>, </td>
1037 </tr>
1038 <tr>
1039 <td class="paramkey"></td>
1040 <td></td>
1041 <td class="paramtype">bool&#160;</td>
1042 <td class="paramname"><em>biasEnabled</em>, </td>
1043 </tr>
1044 <tr>
1045 <td class="paramkey"></td>
1046 <td></td>
1047 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1048 <td class="paramname"><em>layout</em>&#160;</td>
1049 </tr>
1050 <tr>
1051 <td></td>
1052 <td>)</td>
1053 <td></td><td></td>
1054 </tr>
1055 </table>
1056</div><div class="memdoc">
1057
1058<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03296">3296</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1059<div class="fragment"><div class="line"><a name="l03301"></a><span class="lineno"> 3301</span>&#160;{</div><div class="line"><a name="l03302"></a><span class="lineno"> 3302</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2dTestImpl&lt;armnn::DataType::QSymmS16, armnn::DataType::Signed32&gt;(</div><div class="line"><a name="l03303"></a><span class="lineno"> 3303</span>&#160; workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout);</div><div class="line"><a name="l03304"></a><span class="lineno"> 3304</span>&#160;}</div></div><!-- fragment -->
1060</div>
1061</div>
1062<a id="aaed50a372a6b59b20e38469856a3ce6b"></a>
1063<h2 class="memtitle"><span class="permalink"><a href="#aaed50a372a6b59b20e38469856a3ce6b">&#9670;&nbsp;</a></span>DepthwiseConvolution2dMult2Test()</h2>
1064
1065<div class="memitem">
1066<div class="memproto">
1067 <table class="memname">
1068 <tr>
1069 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;T, 4&gt; DepthwiseConvolution2dMult2Test </td>
1070 <td>(</td>
1071 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1072 <td class="paramname"><em>workloadFactory</em>, </td>
1073 </tr>
1074 <tr>
1075 <td class="paramkey"></td>
1076 <td></td>
1077 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1078 <td class="paramname"><em>memoryManager</em>, </td>
1079 </tr>
1080 <tr>
1081 <td class="paramkey"></td>
1082 <td></td>
1083 <td class="paramtype">bool&#160;</td>
1084 <td class="paramname"><em>biasEnabled</em>, </td>
1085 </tr>
1086 <tr>
1087 <td class="paramkey"></td>
1088 <td></td>
1089 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1090 <td class="paramname"><em>layout</em>&#160;</td>
1091 </tr>
1092 <tr>
1093 <td></td>
1094 <td>)</td>
1095 <td></td><td></td>
1096 </tr>
1097 </table>
1098</div><div class="memdoc">
1099
1100<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l02600">2600</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1101<div class="fragment"><div class="line"><a name="l02605"></a><span class="lineno"> 2605</span>&#160;{</div><div class="line"><a name="l02606"></a><span class="lineno"> 2606</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> inputTensorInfo({1, 2, 3, 3}, ArmnnType);</div><div class="line"><a name="l02607"></a><span class="lineno"> 2607</span>&#160; std::vector&lt;float&gt; inputNoQuantizedValues =</div><div class="line"><a name="l02608"></a><span class="lineno"> 2608</span>&#160; {</div><div class="line"><a name="l02609"></a><span class="lineno"> 2609</span>&#160; 10.0, 10.0, 10.0,</div><div class="line"><a name="l02610"></a><span class="lineno"> 2610</span>&#160; 10.0, 10.0, 10.0,</div><div class="line"><a name="l02611"></a><span class="lineno"> 2611</span>&#160; 10.0, 10.0, 10.0,</div><div class="line"><a name="l02612"></a><span class="lineno"> 2612</span>&#160;</div><div class="line"><a name="l02613"></a><span class="lineno"> 2613</span>&#160; 21.0, 22.0, 23.0,</div><div class="line"><a name="l02614"></a><span class="lineno"> 2614</span>&#160; 24.0, 25.0, 26.0,</div><div class="line"><a name="l02615"></a><span class="lineno"> 2615</span>&#160; 27.0, 28.0, 29.0</div><div class="line"><a name="l02616"></a><span class="lineno"> 2616</span>&#160; };</div><div class="line"><a name="l02617"></a><span class="lineno"> 2617</span>&#160;</div><div class="line"><a name="l02618"></a><span class="lineno"> 2618</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> kernelTensorInfo({ 2, 2, 2, 2}, ArmnnType);</div><div class="line"><a name="l02619"></a><span class="lineno"> 2619</span>&#160;</div><div class="line"><a name="l02620"></a><span class="lineno"> 2620</span>&#160; std::vector&lt;float&gt; kernelNoQuantizedValues =</div><div class="line"><a name="l02621"></a><span class="lineno"> 2621</span>&#160; {</div><div class="line"><a name="l02622"></a><span class="lineno"> 2622</span>&#160; 0.25f, 0.25f,</div><div class="line"><a name="l02623"></a><span class="lineno"> 2623</span>&#160; 0.25f, 0.25f,</div><div class="line"><a name="l02624"></a><span class="lineno"> 2624</span>&#160;</div><div class="line"><a name="l02625"></a><span class="lineno"> 2625</span>&#160; 0.2f , 0.0f,</div><div class="line"><a name="l02626"></a><span class="lineno"> 2626</span>&#160; 0.0f , 0.0f,</div><div class="line"><a name="l02627"></a><span class="lineno"> 2627</span>&#160;</div><div class="line"><a name="l02628"></a><span class="lineno"> 2628</span>&#160; 0.0f , 0.0f,</div><div class="line"><a name="l02629"></a><span class="lineno"> 2629</span>&#160; 0.0f , 0.1f,</div><div class="line"><a name="l02630"></a><span class="lineno"> 2630</span>&#160;</div><div class="line"><a name="l02631"></a><span class="lineno"> 2631</span>&#160; 0.0f , 0.3f,</div><div class="line"><a name="l02632"></a><span class="lineno"> 2632</span>&#160; 0.0f , 0.0f</div><div class="line"><a name="l02633"></a><span class="lineno"> 2633</span>&#160;</div><div class="line"><a name="l02634"></a><span class="lineno"> 2634</span>&#160; };</div><div class="line"><a name="l02635"></a><span class="lineno"> 2635</span>&#160;</div><div class="line"><a name="l02636"></a><span class="lineno"> 2636</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> outputTensorInfo({ 1, 4, 2, 2}, ArmnnType);</div><div class="line"><a name="l02637"></a><span class="lineno"> 2637</span>&#160; std::vector&lt;float&gt; outputExpectedNoQuantizedValues =</div><div class="line"><a name="l02638"></a><span class="lineno"> 2638</span>&#160; {</div><div class="line"><a name="l02639"></a><span class="lineno"> 2639</span>&#160; 10.f, 10.f,</div><div class="line"><a name="l02640"></a><span class="lineno"> 2640</span>&#160; 10.f, 10.f,</div><div class="line"><a name="l02641"></a><span class="lineno"> 2641</span>&#160;</div><div class="line"><a name="l02642"></a><span class="lineno"> 2642</span>&#160; 1.f, 1.f,</div><div class="line"><a name="l02643"></a><span class="lineno"> 2643</span>&#160; 1.f, 1.f,</div><div class="line"><a name="l02644"></a><span class="lineno"> 2644</span>&#160;</div><div class="line"><a name="l02645"></a><span class="lineno"> 2645</span>&#160; 4.2000003f, 4.4f,</div><div class="line"><a name="l02646"></a><span class="lineno"> 2646</span>&#160; 4.8f, 5.f,</div><div class="line"><a name="l02647"></a><span class="lineno"> 2647</span>&#160;</div><div class="line"><a name="l02648"></a><span class="lineno"> 2648</span>&#160; 6.6000004f, 6.9f,</div><div class="line"><a name="l02649"></a><span class="lineno"> 2649</span>&#160; 7.5000005f, 7.8f</div><div class="line"><a name="l02650"></a><span class="lineno"> 2650</span>&#160; };</div><div class="line"><a name="l02651"></a><span class="lineno"> 2651</span>&#160;</div><div class="line"><a name="l02652"></a><span class="lineno"> 2652</span>&#160;</div><div class="line"><a name="l02653"></a><span class="lineno"> 2653</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2d3x3DilationTestCommon&lt;ArmnnType, ArmnnBType&gt;(</div><div class="line"><a name="l02654"></a><span class="lineno"> 2654</span>&#160; workloadFactory,</div><div class="line"><a name="l02655"></a><span class="lineno"> 2655</span>&#160; memoryManager,</div><div class="line"><a name="l02656"></a><span class="lineno"> 2656</span>&#160; inputNoQuantizedValues,</div><div class="line"><a name="l02657"></a><span class="lineno"> 2657</span>&#160; inputTensorInfo,</div><div class="line"><a name="l02658"></a><span class="lineno"> 2658</span>&#160; kernelNoQuantizedValues,</div><div class="line"><a name="l02659"></a><span class="lineno"> 2659</span>&#160; kernelTensorInfo,</div><div class="line"><a name="l02660"></a><span class="lineno"> 2660</span>&#160; outputExpectedNoQuantizedValues,</div><div class="line"><a name="l02661"></a><span class="lineno"> 2661</span>&#160; outputTensorInfo,</div><div class="line"><a name="l02662"></a><span class="lineno"> 2662</span>&#160; 1,</div><div class="line"><a name="l02663"></a><span class="lineno"> 2663</span>&#160; 1,</div><div class="line"><a name="l02664"></a><span class="lineno"> 2664</span>&#160; layout,</div><div class="line"><a name="l02665"></a><span class="lineno"> 2665</span>&#160; biasEnabled);</div><div class="line"><a name="l02666"></a><span class="lineno"> 2666</span>&#160;}</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>
1102</div><!-- fragment -->
1103</div>
1104</div>
1105<a id="a0da6534b3a5d2f923dcd73553950129a"></a>
1106<h2 class="memtitle"><span class="permalink"><a href="#a0da6534b3a5d2f923dcd73553950129a">&#9670;&nbsp;</a></span>DepthwiseConvolution2dMult4Test()</h2>
1107
1108<div class="memitem">
1109<div class="memproto">
1110 <table class="memname">
1111 <tr>
1112 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;T, 4&gt; DepthwiseConvolution2dMult4Test </td>
1113 <td>(</td>
1114 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1115 <td class="paramname"><em>workloadFactory</em>, </td>
1116 </tr>
1117 <tr>
1118 <td class="paramkey"></td>
1119 <td></td>
1120 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1121 <td class="paramname"><em>memoryManager</em>, </td>
1122 </tr>
1123 <tr>
1124 <td class="paramkey"></td>
1125 <td></td>
1126 <td class="paramtype">bool&#160;</td>
1127 <td class="paramname"><em>biasEnabled</em>, </td>
1128 </tr>
1129 <tr>
1130 <td class="paramkey"></td>
1131 <td></td>
1132 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1133 <td class="paramname"><em>layout</em>&#160;</td>
1134 </tr>
1135 <tr>
1136 <td></td>
1137 <td>)</td>
1138 <td></td><td></td>
1139 </tr>
1140 </table>
1141</div><div class="memdoc">
1142
1143<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l02508">2508</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1144<div class="fragment"><div class="line"><a name="l02513"></a><span class="lineno"> 2513</span>&#160;{</div><div class="line"><a name="l02514"></a><span class="lineno"> 2514</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> inputTensorInfo({1, 2, 3, 3}, ArmnnType);</div><div class="line"><a name="l02515"></a><span class="lineno"> 2515</span>&#160; std::vector&lt;float&gt; inputNoQuantizedValues =</div><div class="line"><a name="l02516"></a><span class="lineno"> 2516</span>&#160; {</div><div class="line"><a name="l02517"></a><span class="lineno"> 2517</span>&#160; 10.0, 10.0, 10.0,</div><div class="line"><a name="l02518"></a><span class="lineno"> 2518</span>&#160; 10.0, 10.0, 10.0,</div><div class="line"><a name="l02519"></a><span class="lineno"> 2519</span>&#160; 10.0, 10.0, 10.0,</div><div class="line"><a name="l02520"></a><span class="lineno"> 2520</span>&#160;</div><div class="line"><a name="l02521"></a><span class="lineno"> 2521</span>&#160; 21.0, 22.0, 23.0,</div><div class="line"><a name="l02522"></a><span class="lineno"> 2522</span>&#160; 24.0, 25.0, 26.0,</div><div class="line"><a name="l02523"></a><span class="lineno"> 2523</span>&#160; 27.0, 28.0, 29.0</div><div class="line"><a name="l02524"></a><span class="lineno"> 2524</span>&#160; };</div><div class="line"><a name="l02525"></a><span class="lineno"> 2525</span>&#160;</div><div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> kernelTensorInfo({ 4, 2, 2, 2}, ArmnnType);</div><div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>&#160;</div><div class="line"><a name="l02528"></a><span class="lineno"> 2528</span>&#160; std::vector&lt;float&gt; kernelNoQuantizedValues =</div><div class="line"><a name="l02529"></a><span class="lineno"> 2529</span>&#160; {</div><div class="line"><a name="l02530"></a><span class="lineno"> 2530</span>&#160; 0.25f, 0.25f,</div><div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>&#160; 0.25f, 0.25f,</div><div class="line"><a name="l02532"></a><span class="lineno"> 2532</span>&#160;</div><div class="line"><a name="l02533"></a><span class="lineno"> 2533</span>&#160; 0.25f, 0.25f,</div><div class="line"><a name="l02534"></a><span class="lineno"> 2534</span>&#160; 0.25f, 0.25f,</div><div class="line"><a name="l02535"></a><span class="lineno"> 2535</span>&#160;</div><div class="line"><a name="l02536"></a><span class="lineno"> 2536</span>&#160; 0.0f , 0.0f,</div><div class="line"><a name="l02537"></a><span class="lineno"> 2537</span>&#160; 0.0f , 0.1f,</div><div class="line"><a name="l02538"></a><span class="lineno"> 2538</span>&#160;</div><div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>&#160; 0.0f , 0.0f,</div><div class="line"><a name="l02540"></a><span class="lineno"> 2540</span>&#160; 0.0f , 0.1f,</div><div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>&#160;</div><div class="line"><a name="l02542"></a><span class="lineno"> 2542</span>&#160; 0.2f , 0.0f,</div><div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>&#160; 0.0f , 0.0f,</div><div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>&#160;</div><div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>&#160; 0.2f , 0.0f,</div><div class="line"><a name="l02546"></a><span class="lineno"> 2546</span>&#160; 0.0f , 0.0f,</div><div class="line"><a name="l02547"></a><span class="lineno"> 2547</span>&#160;</div><div class="line"><a name="l02548"></a><span class="lineno"> 2548</span>&#160; 0.0f , 0.3f,</div><div class="line"><a name="l02549"></a><span class="lineno"> 2549</span>&#160; 0.0f , 0.0f,</div><div class="line"><a name="l02550"></a><span class="lineno"> 2550</span>&#160;</div><div class="line"><a name="l02551"></a><span class="lineno"> 2551</span>&#160; 0.0f , 0.3f,</div><div class="line"><a name="l02552"></a><span class="lineno"> 2552</span>&#160; 0.0f , 0.0f</div><div class="line"><a name="l02553"></a><span class="lineno"> 2553</span>&#160; };</div><div class="line"><a name="l02554"></a><span class="lineno"> 2554</span>&#160;</div><div class="line"><a name="l02555"></a><span class="lineno"> 2555</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> outputTensorInfo({ 1, 8, 2, 2}, ArmnnType);</div><div class="line"><a name="l02556"></a><span class="lineno"> 2556</span>&#160; std::vector&lt;float&gt; outputExpectedNoQuantizedValues =</div><div class="line"><a name="l02557"></a><span class="lineno"> 2557</span>&#160; {</div><div class="line"><a name="l02558"></a><span class="lineno"> 2558</span>&#160; 10.f, 10.f,</div><div class="line"><a name="l02559"></a><span class="lineno"> 2559</span>&#160; 10.f, 10.f,</div><div class="line"><a name="l02560"></a><span class="lineno"> 2560</span>&#160;</div><div class="line"><a name="l02561"></a><span class="lineno"> 2561</span>&#160; 1.f, 1.f,</div><div class="line"><a name="l02562"></a><span class="lineno"> 2562</span>&#160; 1.f, 1.f,</div><div class="line"><a name="l02563"></a><span class="lineno"> 2563</span>&#160;</div><div class="line"><a name="l02564"></a><span class="lineno"> 2564</span>&#160; 2.f, 2.f,</div><div class="line"><a name="l02565"></a><span class="lineno"> 2565</span>&#160; 2.f, 2.f,</div><div class="line"><a name="l02566"></a><span class="lineno"> 2566</span>&#160;</div><div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>&#160; 3.f, 3.f,</div><div class="line"><a name="l02568"></a><span class="lineno"> 2568</span>&#160; 3.f, 3.f,</div><div class="line"><a name="l02569"></a><span class="lineno"> 2569</span>&#160;</div><div class="line"><a name="l02570"></a><span class="lineno"> 2570</span>&#160; 23.f, 24.f,</div><div class="line"><a name="l02571"></a><span class="lineno"> 2571</span>&#160; 26.f, 27.f,</div><div class="line"><a name="l02572"></a><span class="lineno"> 2572</span>&#160;</div><div class="line"><a name="l02573"></a><span class="lineno"> 2573</span>&#160; 2.5f, 2.6000001f,</div><div class="line"><a name="l02574"></a><span class="lineno"> 2574</span>&#160; 2.8f, 2.9f,</div><div class="line"><a name="l02575"></a><span class="lineno"> 2575</span>&#160;</div><div class="line"><a name="l02576"></a><span class="lineno"> 2576</span>&#160; 4.2000003f, 4.4f,</div><div class="line"><a name="l02577"></a><span class="lineno"> 2577</span>&#160; 4.8f, 5.f,</div><div class="line"><a name="l02578"></a><span class="lineno"> 2578</span>&#160;</div><div class="line"><a name="l02579"></a><span class="lineno"> 2579</span>&#160; 6.6000004f, 6.9f,</div><div class="line"><a name="l02580"></a><span class="lineno"> 2580</span>&#160; 7.5000005f, 7.8f</div><div class="line"><a name="l02581"></a><span class="lineno"> 2581</span>&#160; };</div><div class="line"><a name="l02582"></a><span class="lineno"> 2582</span>&#160;</div><div class="line"><a name="l02583"></a><span class="lineno"> 2583</span>&#160;</div><div class="line"><a name="l02584"></a><span class="lineno"> 2584</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2d3x3DilationTestCommon&lt;ArmnnType, ArmnnBType&gt;(</div><div class="line"><a name="l02585"></a><span class="lineno"> 2585</span>&#160; workloadFactory,</div><div class="line"><a name="l02586"></a><span class="lineno"> 2586</span>&#160; memoryManager,</div><div class="line"><a name="l02587"></a><span class="lineno"> 2587</span>&#160; inputNoQuantizedValues,</div><div class="line"><a name="l02588"></a><span class="lineno"> 2588</span>&#160; inputTensorInfo,</div><div class="line"><a name="l02589"></a><span class="lineno"> 2589</span>&#160; kernelNoQuantizedValues,</div><div class="line"><a name="l02590"></a><span class="lineno"> 2590</span>&#160; kernelTensorInfo,</div><div class="line"><a name="l02591"></a><span class="lineno"> 2591</span>&#160; outputExpectedNoQuantizedValues,</div><div class="line"><a name="l02592"></a><span class="lineno"> 2592</span>&#160; outputTensorInfo,</div><div class="line"><a name="l02593"></a><span class="lineno"> 2593</span>&#160; 1,</div><div class="line"><a name="l02594"></a><span class="lineno"> 2594</span>&#160; 1,</div><div class="line"><a name="l02595"></a><span class="lineno"> 2595</span>&#160; layout,</div><div class="line"><a name="l02596"></a><span class="lineno"> 2596</span>&#160; biasEnabled);</div><div class="line"><a name="l02597"></a><span class="lineno"> 2597</span>&#160;}</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>
1145</div><!-- fragment -->
1146</div>
1147</div>
1148<a id="a8a51827c480f827c1e29f9347d7433c3"></a>
1149<h2 class="memtitle"><span class="permalink"><a href="#a8a51827c480f827c1e29f9347d7433c3">&#9670;&nbsp;</a></span>DepthwiseConvolution2dPerAxisQuantTest()</h2>
1150
1151<div class="memitem">
1152<div class="memproto">
1153 <table class="memname">
1154 <tr>
1155 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; DepthwiseConvolution2dPerAxisQuantTest </td>
1156 <td>(</td>
1157 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1158 <td class="paramname"><em>workloadFactory</em>, </td>
1159 </tr>
1160 <tr>
1161 <td class="paramkey"></td>
1162 <td></td>
1163 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1164 <td class="paramname"><em>memoryManager</em>, </td>
1165 </tr>
1166 <tr>
1167 <td class="paramkey"></td>
1168 <td></td>
1169 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1170 <td class="paramname"><em>layout</em>&#160;</td>
1171 </tr>
1172 <tr>
1173 <td></td>
1174 <td>)</td>
1175 <td></td><td></td>
1176 </tr>
1177 </table>
1178</div><div class="memdoc">
1179
1180<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03316">3316</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1181
1182<p class="reference">References <a class="el" href="_tensor_copy_utils_8cpp_source.xhtml#l00019">AllocateAndCopyDataToITensorHandle()</a>, <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#l01177">IWorkloadFactory::CreateDepthwiseConvolution2d()</a>, <a class="el" href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">IWorkloadFactory::CreateTensorHandle()</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00490">DepthwiseConvolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00492">DepthwiseConvolution2dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00486">DepthwiseConvolution2dDescriptor::m_DilationX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00488">DepthwiseConvolution2dDescriptor::m_DilationY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00480">DepthwiseConvolution2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00474">DepthwiseConvolution2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00476">DepthwiseConvolution2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00478">DepthwiseConvolution2dDescriptor::m_PadTop</a>, <a class="el" href="_workload_data_8hpp_source.xhtml#l00049">QueueDescriptorWithParameters&lt; LayerDescriptor &gt;::m_Parameters</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00482">DepthwiseConvolution2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00484">DepthwiseConvolution2dDescriptor::m_StrideY</a>, <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::NCHW</a>, <a class="el" href="_layer_test_result_8hpp_source.xhtml#l00040">LayerTestResult&lt; T, n &gt;::output</a>, <a class="el" href="_layer_test_result_8hpp_source.xhtml#l00041">LayerTestResult&lt; T, n &gt;::outputExpected</a>, and <a class="el" href="_data_layout_utils_8hpp_source.xhtml#l00026">PermuteTensorNhwcToNchw()</a>.</p>
1183<div class="fragment"><div class="line"><a name="l03320"></a><span class="lineno"> 3320</span>&#160;{</div><div class="line"><a name="l03321"></a><span class="lineno"> 3321</span>&#160; <span class="keyword">using namespace </span><a class="code" href="namespacearmnn.xhtml">armnn</a>;</div><div class="line"><a name="l03322"></a><span class="lineno"> 3322</span>&#160;</div><div class="line"><a name="l03323"></a><span class="lineno"> 3323</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> inputType = <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a0a3f57c876f5a230244c38e1453a8a6e">DataType::QAsymmU8</a>;</div><div class="line"><a name="l03324"></a><span class="lineno"> 3324</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> kernelType = <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a9945327825b115e93a3b89f4302e76db">DataType::QSymmS8</a>;</div><div class="line"><a name="l03325"></a><span class="lineno"> 3325</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> biasType = <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6accedffbc6e5308e33d3843e8bdc0dad7">DataType::Signed32</a>;</div><div class="line"><a name="l03326"></a><span class="lineno"> 3326</span>&#160;</div><div class="line"><a name="l03327"></a><span class="lineno"> 3327</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> inputInfo ({ 1, 3, 3, 2 }, inputType, 0.5f, 128); <span class="comment">// N H W C</span></div><div class="line"><a name="l03328"></a><span class="lineno"> 3328</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> outputInfo({ 1, 2, 2, 4 }, inputType, 1.0f, 128); <span class="comment">// N H W C</span></div><div class="line"><a name="l03329"></a><span class="lineno"> 3329</span>&#160;</div><div class="line"><a name="l03330"></a><span class="lineno"> 3330</span>&#160; <span class="keyword">const</span> std::vector&lt;float&gt; quantScales{ 1.0f, 0.5f, 1.0f, 0.5f };</div><div class="line"><a name="l03331"></a><span class="lineno"> 3331</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> quantDimension = 0;</div><div class="line"><a name="l03332"></a><span class="lineno"> 3332</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> kernelInfo({ 2, 2, 2, 2 }, kernelType, quantScales, quantDimension); <span class="comment">// M I H W</span></div><div class="line"><a name="l03333"></a><span class="lineno"> 3333</span>&#160;</div><div class="line"><a name="l03334"></a><span class="lineno"> 3334</span>&#160; <span class="keyword">const</span> std::vector&lt;float&gt; biasQuantScales{ 0.5f, 0.25f, 0.5f, 0.25f };</div><div class="line"><a name="l03335"></a><span class="lineno"> 3335</span>&#160; constexpr <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> biasQuantDimension = 0;</div><div class="line"><a name="l03336"></a><span class="lineno"> 3336</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> biasInfo({ 4 }, biasType, biasQuantScales, biasQuantDimension);</div><div class="line"><a name="l03337"></a><span class="lineno"> 3337</span>&#160;</div><div class="line"><a name="l03338"></a><span class="lineno"> 3338</span>&#160; std::vector&lt;uint8_t&gt; inputData =</div><div class="line"><a name="l03339"></a><span class="lineno"> 3339</span>&#160; {</div><div class="line"><a name="l03340"></a><span class="lineno"> 3340</span>&#160; 129, 130,</div><div class="line"><a name="l03341"></a><span class="lineno"> 3341</span>&#160; 129, 130,</div><div class="line"><a name="l03342"></a><span class="lineno"> 3342</span>&#160; 129, 130,</div><div class="line"><a name="l03343"></a><span class="lineno"> 3343</span>&#160; 129, 130,</div><div class="line"><a name="l03344"></a><span class="lineno"> 3344</span>&#160; 129, 130,</div><div class="line"><a name="l03345"></a><span class="lineno"> 3345</span>&#160; 129, 130,</div><div class="line"><a name="l03346"></a><span class="lineno"> 3346</span>&#160; 129, 130,</div><div class="line"><a name="l03347"></a><span class="lineno"> 3347</span>&#160; 129, 130,</div><div class="line"><a name="l03348"></a><span class="lineno"> 3348</span>&#160; 129, 130</div><div class="line"><a name="l03349"></a><span class="lineno"> 3349</span>&#160; };</div><div class="line"><a name="l03350"></a><span class="lineno"> 3350</span>&#160;</div><div class="line"><a name="l03351"></a><span class="lineno"> 3351</span>&#160; std::vector&lt;int8_t&gt; kernelData =</div><div class="line"><a name="l03352"></a><span class="lineno"> 3352</span>&#160; {</div><div class="line"><a name="l03353"></a><span class="lineno"> 3353</span>&#160; 1, 1, 1, 1,</div><div class="line"><a name="l03354"></a><span class="lineno"> 3354</span>&#160; 1, 1, 1, 1,</div><div class="line"><a name="l03355"></a><span class="lineno"> 3355</span>&#160; 1, 1, 1, 1,</div><div class="line"><a name="l03356"></a><span class="lineno"> 3356</span>&#160; 1, 1, 1, 1</div><div class="line"><a name="l03357"></a><span class="lineno"> 3357</span>&#160; };</div><div class="line"><a name="l03358"></a><span class="lineno"> 3358</span>&#160;</div><div class="line"><a name="l03359"></a><span class="lineno"> 3359</span>&#160; std::vector&lt;int32_t&gt; biasData =</div><div class="line"><a name="l03360"></a><span class="lineno"> 3360</span>&#160; {</div><div class="line"><a name="l03361"></a><span class="lineno"> 3361</span>&#160; 4, 4, 4, 4</div><div class="line"><a name="l03362"></a><span class="lineno"> 3362</span>&#160; };</div><div class="line"><a name="l03363"></a><span class="lineno"> 3363</span>&#160;</div><div class="line"><a name="l03364"></a><span class="lineno"> 3364</span>&#160; std::vector&lt;uint8_t&gt; expectedOutputData =</div><div class="line"><a name="l03365"></a><span class="lineno"> 3365</span>&#160; {</div><div class="line"><a name="l03366"></a><span class="lineno"> 3366</span>&#160; 132, 130, 134, 131,</div><div class="line"><a name="l03367"></a><span class="lineno"> 3367</span>&#160; 132, 130, 134, 131,</div><div class="line"><a name="l03368"></a><span class="lineno"> 3368</span>&#160; 132, 130, 134, 131,</div><div class="line"><a name="l03369"></a><span class="lineno"> 3369</span>&#160; 132, 130, 134, 131</div><div class="line"><a name="l03370"></a><span class="lineno"> 3370</span>&#160; };</div><div class="line"><a name="l03371"></a><span class="lineno"> 3371</span>&#160;</div><div class="line"><a name="l03372"></a><span class="lineno"> 3372</span>&#160; <span class="keywordflow">if</span> (layout == <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">DataLayout::NCHW</a>)</div><div class="line"><a name="l03373"></a><span class="lineno"> 3373</span>&#160; {</div><div class="line"><a name="l03374"></a><span class="lineno"> 3374</span>&#160; <a class="code" href="_data_layout_utils_8hpp.xhtml#a1452f049aef30409b3b649af2be7ff82">PermuteTensorNhwcToNchw</a>(inputInfo, inputData);</div><div class="line"><a name="l03375"></a><span class="lineno"> 3375</span>&#160; <a class="code" href="_data_layout_utils_8hpp.xhtml#a1452f049aef30409b3b649af2be7ff82">PermuteTensorNhwcToNchw</a>(outputInfo, expectedOutputData);</div><div class="line"><a name="l03376"></a><span class="lineno"> 3376</span>&#160; }</div><div class="line"><a name="l03377"></a><span class="lineno"> 3377</span>&#160;</div><div class="line"><a name="l03378"></a><span class="lineno"> 3378</span>&#160; <a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml">DepthwiseConvolution2dDescriptor</a> descriptor;</div><div class="line"><a name="l03379"></a><span class="lineno"> 3379</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#afe6a3377c4531315354def9023c8fdda">m_StrideX</a> = 1;</div><div class="line"><a name="l03380"></a><span class="lineno"> 3380</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#ac1fe174bbadfb39a2b636940c2e647c8">m_StrideY</a> = 1;</div><div class="line"><a name="l03381"></a><span class="lineno"> 3381</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#ac18546ebbebbb32fe0a03baa9bf2c600">m_PadLeft</a> = 0;</div><div class="line"><a name="l03382"></a><span class="lineno"> 3382</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#a002bc30e590d78cbb4f4d12171055ca7">m_PadRight</a> = 0;</div><div class="line"><a name="l03383"></a><span class="lineno"> 3383</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#a56b51f56cef50cdfa554258eecdab046">m_PadTop</a> = 0;</div><div class="line"><a name="l03384"></a><span class="lineno"> 3384</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#aa9e49717ebdb741e8c767741647fc618">m_PadBottom</a> = 0;</div><div class="line"><a name="l03385"></a><span class="lineno"> 3385</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#aa3c6a77a963a98ccb8ea7b8fd008a8c1">m_DilationX</a> = 1;</div><div class="line"><a name="l03386"></a><span class="lineno"> 3386</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#a302b688d88dd73cde0fb1faef6679907">m_DilationY</a> = 1;</div><div class="line"><a name="l03387"></a><span class="lineno"> 3387</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#aea202e14d8874cefd9a0f778022b7e25">m_BiasEnabled</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l03388"></a><span class="lineno"> 3388</span>&#160; descriptor.<a class="code" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">m_DataLayout</a> = layout;</div><div class="line"><a name="l03389"></a><span class="lineno"> 3389</span>&#160;</div><div class="line"><a name="l03390"></a><span class="lineno"> 3390</span>&#160; std::unique_ptr&lt;ITensorHandle&gt; inputHandle = workloadFactory.<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">CreateTensorHandle</a>(inputInfo);</div><div class="line"><a name="l03391"></a><span class="lineno"> 3391</span>&#160; std::unique_ptr&lt;ITensorHandle&gt; outputHandle = workloadFactory.<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml#a15c140be4ddceffee16436f009d3ed94">CreateTensorHandle</a>(outputInfo);</div><div class="line"><a name="l03392"></a><span class="lineno"> 3392</span>&#160;</div><div class="line"><a name="l03393"></a><span class="lineno"> 3393</span>&#160; <a class="code" href="structarmnn_1_1_workload_info.xhtml">WorkloadInfo</a> workloadInfo;</div><div class="line"><a name="l03394"></a><span class="lineno"> 3394</span>&#160; <a class="code" href="classarmnn_1_1_scoped_cpu_tensor_handle.xhtml">ScopedCpuTensorHandle</a> weightTensor(kernelInfo);</div><div class="line"><a name="l03395"></a><span class="lineno"> 3395</span>&#160; <a class="code" href="classarmnn_1_1_scoped_cpu_tensor_handle.xhtml">ScopedCpuTensorHandle</a> biasTensor(biasInfo);</div><div class="line"><a name="l03396"></a><span class="lineno"> 3396</span>&#160;</div><div class="line"><a name="l03397"></a><span class="lineno"> 3397</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#afaaca8c3f3a467d124bba44067d2afa8">AllocateAndCopyDataToITensorHandle</a>(&amp;weightTensor, kernelData.data());</div><div class="line"><a name="l03398"></a><span class="lineno"> 3398</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#afaaca8c3f3a467d124bba44067d2afa8">AllocateAndCopyDataToITensorHandle</a>(&amp;biasTensor, biasData.data());</div><div class="line"><a name="l03399"></a><span class="lineno"> 3399</span>&#160;</div><div class="line"><a name="l03400"></a><span class="lineno"> 3400</span>&#160; <a class="code" href="structarmnn_1_1_depthwise_convolution2d_queue_descriptor.xhtml">DepthwiseConvolution2dQueueDescriptor</a> queueDescriptor;</div><div class="line"><a name="l03401"></a><span class="lineno"> 3401</span>&#160; queueDescriptor.<a class="code" href="structarmnn_1_1_queue_descriptor_with_parameters.xhtml#aad91b9bbf7aa365d304febe79a3d1333">m_Parameters</a> = descriptor;</div><div class="line"><a name="l03402"></a><span class="lineno"> 3402</span>&#160; queueDescriptor.m_Weight = &amp;weightTensor;</div><div class="line"><a name="l03403"></a><span class="lineno"> 3403</span>&#160; queueDescriptor.m_Bias = &amp;biasTensor;</div><div class="line"><a name="l03404"></a><span class="lineno"> 3404</span>&#160;</div><div class="line"><a name="l03405"></a><span class="lineno"> 3405</span>&#160; AddInputToWorkload(queueDescriptor, workloadInfo, inputInfo, inputHandle.get());</div><div class="line"><a name="l03406"></a><span class="lineno"> 3406</span>&#160; AddOutputToWorkload(queueDescriptor, workloadInfo, outputInfo, outputHandle.get());</div><div class="line"><a name="l03407"></a><span class="lineno"> 3407</span>&#160;</div><div class="line"><a name="l03408"></a><span class="lineno"> 3408</span>&#160; std::unique_ptr&lt;IWorkload&gt; workload = workloadFactory.<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml#accb9759dfd2880efe0f8d2705ddee448">CreateDepthwiseConvolution2d</a>(queueDescriptor, workloadInfo);</div><div class="line"><a name="l03409"></a><span class="lineno"> 3409</span>&#160; inputHandle-&gt;Allocate();</div><div class="line"><a name="l03410"></a><span class="lineno"> 3410</span>&#160; outputHandle-&gt;Allocate();</div><div class="line"><a name="l03411"></a><span class="lineno"> 3411</span>&#160;</div><div class="line"><a name="l03412"></a><span class="lineno"> 3412</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#ae15f1a3c55d2db87683577de9fa4437c">CopyDataToITensorHandle</a>(inputHandle.get(), inputData.data());</div><div class="line"><a name="l03413"></a><span class="lineno"> 3413</span>&#160;</div><div class="line"><a name="l03414"></a><span class="lineno"> 3414</span>&#160; ExecuteWorkload(*workload, memoryManager);</div><div class="line"><a name="l03415"></a><span class="lineno"> 3415</span>&#160;</div><div class="line"><a name="l03416"></a><span class="lineno"> 3416</span>&#160; <a class="code" href="struct_layer_test_result.xhtml">LayerTestResult&lt;uint8_t, 4&gt;</a> ret(outputInfo);</div><div class="line"><a name="l03417"></a><span class="lineno"> 3417</span>&#160;</div><div class="line"><a name="l03418"></a><span class="lineno"> 3418</span>&#160; <a class="code" href="_tensor_copy_utils_8cpp.xhtml#a99b626c58a926dc7d6df78d22ec186c8">CopyDataFromITensorHandle</a>(ret.output.origin(), outputHandle.get());</div><div class="line"><a name="l03419"></a><span class="lineno"> 3419</span>&#160; ret.outputExpected = MakeTensor&lt;uint8_t, 4&gt;(outputInfo, expectedOutputData);</div><div class="line"><a name="l03420"></a><span class="lineno"> 3420</span>&#160;</div><div class="line"><a name="l03421"></a><span class="lineno"> 3421</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l03422"></a><span class="lineno"> 3422</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_aea202e14d8874cefd9a0f778022b7e25"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#aea202e14d8874cefd9a0f778022b7e25">armnn::DepthwiseConvolution2dDescriptor::m_BiasEnabled</a></div><div class="ttdeci">bool m_BiasEnabled</div><div class="ttdoc">Enable/disable bias. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00490">Descriptors.hpp:490</a></div></div>
1184<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_aa9e49717ebdb741e8c767741647fc618"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#aa9e49717ebdb741e8c767741647fc618">armnn::DepthwiseConvolution2dDescriptor::m_PadBottom</a></div><div class="ttdeci">uint32_t m_PadBottom</div><div class="ttdoc">Padding bottom value in the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00480">Descriptors.hpp:480</a></div></div>
1185<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_a6089e1ca91914015777ea780a513131a"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">armnn::DepthwiseConvolution2dDescriptor::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#l00492">Descriptors.hpp:492</a></div></div>
1186<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>
1187<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6accedffbc6e5308e33d3843e8bdc0dad7"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6accedffbc6e5308e33d3843e8bdc0dad7">armnn::DataType::Signed32</a></div></div>
1188<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_ac18546ebbebbb32fe0a03baa9bf2c600"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#ac18546ebbebbb32fe0a03baa9bf2c600">armnn::DepthwiseConvolution2dDescriptor::m_PadLeft</a></div><div class="ttdeci">uint32_t m_PadLeft</div><div class="ttdoc">Padding left value in the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00474">Descriptors.hpp:474</a></div></div>
1189<div class="ttc" id="namespacearmnn_xhtml"><div class="ttname"><a href="namespacearmnn.xhtml">armnn</a></div><div class="ttdoc">Copyright (c) 2020 ARM Limited. </div><div class="ttdef"><b>Definition:</b> <a href="00__introduction_8dox_source.xhtml#l00025">00_introduction.dox:25</a></div></div>
1190<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>
1191<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_a302b688d88dd73cde0fb1faef6679907"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#a302b688d88dd73cde0fb1faef6679907">armnn::DepthwiseConvolution2dDescriptor::m_DilationY</a></div><div class="ttdeci">uint32_t m_DilationY</div><div class="ttdoc">Dilation factor value for height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00488">Descriptors.hpp:488</a></div></div>
1192<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_afe6a3377c4531315354def9023c8fdda"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#afe6a3377c4531315354def9023c8fdda">armnn::DepthwiseConvolution2dDescriptor::m_StrideX</a></div><div class="ttdeci">uint32_t m_StrideX</div><div class="ttdoc">Stride value when proceeding through input for the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00482">Descriptors.hpp:482</a></div></div>
1193<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">armnn::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdef"><b>Definition:</b> <a href="_types_8hpp_source.xhtml#l00032">Types.hpp:32</a></div></div>
1194<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_aa3c6a77a963a98ccb8ea7b8fd008a8c1"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#aa3c6a77a963a98ccb8ea7b8fd008a8c1">armnn::DepthwiseConvolution2dDescriptor::m_DilationX</a></div><div class="ttdeci">uint32_t m_DilationX</div><div class="ttdoc">Dilation factor value for width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00486">Descriptors.hpp:486</a></div></div>
1195<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_a56b51f56cef50cdfa554258eecdab046"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#a56b51f56cef50cdfa554258eecdab046">armnn::DepthwiseConvolution2dDescriptor::m_PadTop</a></div><div class="ttdeci">uint32_t m_PadTop</div><div class="ttdoc">Padding top value in the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00478">Descriptors.hpp:478</a></div></div>
1196<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a0a3f57c876f5a230244c38e1453a8a6e"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a0a3f57c876f5a230244c38e1453a8a6e">armnn::DataType::QAsymmU8</a></div></div>
1197<div class="ttc" id="_tensor_copy_utils_8cpp_xhtml_afaaca8c3f3a467d124bba44067d2afa8"><div class="ttname"><a href="_tensor_copy_utils_8cpp.xhtml#afaaca8c3f3a467d124bba44067d2afa8">AllocateAndCopyDataToITensorHandle</a></div><div class="ttdeci">void AllocateAndCopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_copy_utils_8cpp_source.xhtml#l00019">TensorCopyUtils.cpp:19</a></div></div>
1198<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>
1199<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>
1200<div class="ttc" id="classarmnn_1_1_scoped_cpu_tensor_handle_xhtml"><div class="ttname"><a href="classarmnn_1_1_scoped_cpu_tensor_handle.xhtml">armnn::ScopedCpuTensorHandle</a></div><div class="ttdef"><b>Definition:</b> <a href="_cpu_tensor_handle_8hpp_source.xhtml#l00106">CpuTensorHandle.hpp:106</a></div></div>
1201<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_ac1fe174bbadfb39a2b636940c2e647c8"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#ac1fe174bbadfb39a2b636940c2e647c8">armnn::DepthwiseConvolution2dDescriptor::m_StrideY</a></div><div class="ttdeci">uint32_t m_StrideY</div><div class="ttdoc">Stride value when proceeding through input for the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00484">Descriptors.hpp:484</a></div></div>
1202<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>
1203<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>
1204<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a9945327825b115e93a3b89f4302e76db"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a9945327825b115e93a3b89f4302e76db">armnn::DataType::QSymmS8</a></div></div>
1205<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::DataLayout::NCHW</a></div></div>
1206<div class="ttc" id="classarmnn_1_1_i_workload_factory_xhtml_accb9759dfd2880efe0f8d2705ddee448"><div class="ttname"><a href="classarmnn_1_1_i_workload_factory.xhtml#accb9759dfd2880efe0f8d2705ddee448">armnn::IWorkloadFactory::CreateDepthwiseConvolution2d</a></div><div class="ttdeci">virtual std::unique_ptr&lt; IWorkload &gt; CreateDepthwiseConvolution2d(const DepthwiseConvolution2dQueueDescriptor &amp;descriptor, const WorkloadInfo &amp;info) const</div><div class="ttdef"><b>Definition:</b> <a href="_workload_factory_8cpp_source.xhtml#l01177">WorkloadFactory.cpp:1177</a></div></div>
1207<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml">armnn::DepthwiseConvolution2dDescriptor</a></div><div class="ttdoc">A DepthwiseConvolution2dDescriptor for the DepthwiseConvolution2dLayer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00444">Descriptors.hpp:444</a></div></div>
1208<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_queue_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_queue_descriptor.xhtml">armnn::DepthwiseConvolution2dQueueDescriptor</a></div><div class="ttdef"><b>Definition:</b> <a href="_workload_data_8hpp_source.xhtml#l00183">WorkloadData.hpp:183</a></div></div>
1209<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>
1210<div class="ttc" id="structarmnn_1_1_depthwise_convolution2d_descriptor_xhtml_a002bc30e590d78cbb4f4d12171055ca7"><div class="ttname"><a href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml#a002bc30e590d78cbb4f4d12171055ca7">armnn::DepthwiseConvolution2dDescriptor::m_PadRight</a></div><div class="ttdeci">uint32_t m_PadRight</div><div class="ttdoc">Padding right value in the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00476">Descriptors.hpp:476</a></div></div>
1211<div class="ttc" id="_data_layout_utils_8hpp_xhtml_a1452f049aef30409b3b649af2be7ff82"><div class="ttname"><a href="_data_layout_utils_8hpp.xhtml#a1452f049aef30409b3b649af2be7ff82">PermuteTensorNhwcToNchw</a></div><div class="ttdeci">void PermuteTensorNhwcToNchw(armnn::TensorInfo &amp;tensorInfo, std::vector&lt; T &gt; &amp;tensorData)</div><div class="ttdef"><b>Definition:</b> <a href="_data_layout_utils_8hpp_source.xhtml#l00026">DataLayoutUtils.hpp:26</a></div></div>
1212</div><!-- fragment -->
1213</div>
1214</div>
1215<a id="a11fbd94028ab646528b42d0c8c55eee1"></a>
1216<h2 class="memtitle"><span class="permalink"><a href="#a11fbd94028ab646528b42d0c8c55eee1">&#9670;&nbsp;</a></span>DepthwiseConvolution2dTest()</h2>
1217
1218<div class="memitem">
1219<div class="memproto">
1220 <table class="memname">
1221 <tr>
1222 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; DepthwiseConvolution2dTest </td>
1223 <td>(</td>
1224 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1225 <td class="paramname"><em>workloadFactory</em>, </td>
1226 </tr>
1227 <tr>
1228 <td class="paramkey"></td>
1229 <td></td>
1230 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1231 <td class="paramname"><em>memoryManager</em>, </td>
1232 </tr>
1233 <tr>
1234 <td class="paramkey"></td>
1235 <td></td>
1236 <td class="paramtype">bool&#160;</td>
1237 <td class="paramname"><em>biasEnabled</em>, </td>
1238 </tr>
1239 <tr>
1240 <td class="paramkey"></td>
1241 <td></td>
1242 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1243 <td class="paramname"><em>layout</em>&#160;</td>
1244 </tr>
1245 <tr>
1246 <td></td>
1247 <td>)</td>
1248 <td></td><td></td>
1249 </tr>
1250 </table>
1251</div><div class="memdoc">
1252
1253<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03193">3193</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1254<div class="fragment"><div class="line"><a name="l03198"></a><span class="lineno"> 3198</span>&#160;{</div><div class="line"><a name="l03199"></a><span class="lineno"> 3199</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2dTestImpl&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03200"></a><span class="lineno"> 3200</span>&#160; workloadFactory, memoryManager, 0.0f, 0, biasEnabled, layout);</div><div class="line"><a name="l03201"></a><span class="lineno"> 3201</span>&#160;}</div></div><!-- fragment -->
1255</div>
1256</div>
1257<a id="a8076c31bd6e9eae629994a89a5fa18c3"></a>
1258<h2 class="memtitle"><span class="permalink"><a href="#a8076c31bd6e9eae629994a89a5fa18c3">&#9670;&nbsp;</a></span>DepthwiseConvolution2dUint8Test()</h2>
1259
1260<div class="memitem">
1261<div class="memproto">
1262 <table class="memname">
1263 <tr>
1264 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; DepthwiseConvolution2dUint8Test </td>
1265 <td>(</td>
1266 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1267 <td class="paramname"><em>workloadFactory</em>, </td>
1268 </tr>
1269 <tr>
1270 <td class="paramkey"></td>
1271 <td></td>
1272 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1273 <td class="paramname"><em>memoryManager</em>, </td>
1274 </tr>
1275 <tr>
1276 <td class="paramkey"></td>
1277 <td></td>
1278 <td class="paramtype">bool&#160;</td>
1279 <td class="paramname"><em>biasEnabled</em>, </td>
1280 </tr>
1281 <tr>
1282 <td class="paramkey"></td>
1283 <td></td>
1284 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1285 <td class="paramname"><em>layout</em>&#160;</td>
1286 </tr>
1287 <tr>
1288 <td></td>
1289 <td>)</td>
1290 <td></td><td></td>
1291 </tr>
1292 </table>
1293</div><div class="memdoc">
1294
1295<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03264">3264</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1296<div class="fragment"><div class="line"><a name="l03269"></a><span class="lineno"> 3269</span>&#160;{</div><div class="line"><a name="l03270"></a><span class="lineno"> 3270</span>&#160; <span class="keywordflow">return</span> DepthwiseConvolution2dTestImpl&lt;armnn::DataType::QAsymmU8, armnn::DataType::Signed32&gt;(</div><div class="line"><a name="l03271"></a><span class="lineno"> 3271</span>&#160; workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout);</div><div class="line"><a name="l03272"></a><span class="lineno"> 3272</span>&#160;}</div></div><!-- fragment -->
1297</div>
1298</div>
1299<a id="ac7bae01fdca8edac70cc9bc722426b17"></a>
1300<h2 class="memtitle"><span class="permalink"><a href="#ac7bae01fdca8edac70cc9bc722426b17">&#9670;&nbsp;</a></span>SimpleConvolution2d3x3NhwcTest()</h2>
1301
1302<div class="memitem">
1303<div class="memproto">
1304 <table class="memname">
1305 <tr>
1306 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; SimpleConvolution2d3x3NhwcTest </td>
1307 <td>(</td>
1308 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1309 <td class="paramname"><em>workloadFactory</em>, </td>
1310 </tr>
1311 <tr>
1312 <td class="paramkey"></td>
1313 <td></td>
1314 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1315 <td class="paramname"><em>memoryManager</em>, </td>
1316 </tr>
1317 <tr>
1318 <td class="paramkey"></td>
1319 <td></td>
1320 <td class="paramtype">bool&#160;</td>
1321 <td class="paramname"><em>biasEnabled</em>&#160;</td>
1322 </tr>
1323 <tr>
1324 <td></td>
1325 <td>)</td>
1326 <td></td><td></td>
1327 </tr>
1328 </table>
1329</div><div class="memdoc">
1330
1331<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l02996">2996</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1332
1333<p class="reference">References <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::NHWC</a>.</p>
1334<div class="fragment"><div class="line"><a name="l03000"></a><span class="lineno"> 3000</span>&#160;{</div><div class="line"><a name="l03001"></a><span class="lineno"> 3001</span>&#160; <span class="keywordflow">return</span> SimpleConvolution2d3x3NhwcTestCommon&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03002"></a><span class="lineno"> 3002</span>&#160; workloadFactory,</div><div class="line"><a name="l03003"></a><span class="lineno"> 3003</span>&#160; memoryManager,</div><div class="line"><a name="l03004"></a><span class="lineno"> 3004</span>&#160; 0.f,</div><div class="line"><a name="l03005"></a><span class="lineno"> 3005</span>&#160; 0,</div><div class="line"><a name="l03006"></a><span class="lineno"> 3006</span>&#160; biasEnabled,</div><div class="line"><a name="l03007"></a><span class="lineno"> 3007</span>&#160; <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::DataLayout::NHWC</a>);</div><div class="line"><a name="l03008"></a><span class="lineno"> 3008</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::DataLayout::NHWC</a></div></div>
1335</div><!-- fragment -->
1336</div>
1337</div>
1338<a id="abac8f73ae590a93fe91115371ae4ced3"></a>
1339<h2 class="memtitle"><span class="permalink"><a href="#abac8f73ae590a93fe91115371ae4ced3">&#9670;&nbsp;</a></span>SimpleConvolution2d3x3QSymm16Test()</h2>
1340
1341<div class="memitem">
1342<div class="memproto">
1343 <table class="memname">
1344 <tr>
1345 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;int16_t, 4&gt; SimpleConvolution2d3x3QSymm16Test </td>
1346 <td>(</td>
1347 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1348 <td class="paramname"><em>workloadFactory</em>, </td>
1349 </tr>
1350 <tr>
1351 <td class="paramkey"></td>
1352 <td></td>
1353 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1354 <td class="paramname"><em>memoryManager</em>, </td>
1355 </tr>
1356 <tr>
1357 <td class="paramkey"></td>
1358 <td></td>
1359 <td class="paramtype">bool&#160;</td>
1360 <td class="paramname"><em>biasEnabled</em>, </td>
1361 </tr>
1362 <tr>
1363 <td class="paramkey"></td>
1364 <td></td>
1365 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1366 <td class="paramname"><em>layout</em>&#160;</td>
1367 </tr>
1368 <tr>
1369 <td></td>
1370 <td>)</td>
1371 <td></td><td></td>
1372 </tr>
1373 </table>
1374</div><div class="memdoc">
1375
1376<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03045">3045</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1377<div class="fragment"><div class="line"><a name="l03050"></a><span class="lineno"> 3050</span>&#160;{</div><div class="line"><a name="l03051"></a><span class="lineno"> 3051</span>&#160; <span class="keywordflow">return</span> SimpleConvolution2d3x3TestCommon&lt;armnn::DataType::QSymmS16, armnn::DataType::Signed32&gt;(</div><div class="line"><a name="l03052"></a><span class="lineno"> 3052</span>&#160; workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout);</div><div class="line"><a name="l03053"></a><span class="lineno"> 3053</span>&#160;}</div></div><!-- fragment -->
1378</div>
1379</div>
1380<a id="af4ac6874d18e1cb59873a17073512873"></a>
1381<h2 class="memtitle"><span class="permalink"><a href="#af4ac6874d18e1cb59873a17073512873">&#9670;&nbsp;</a></span>SimpleConvolution2d3x3Stride2x2Test()</h2>
1382
1383<div class="memitem">
1384<div class="memproto">
1385 <table class="memname">
1386 <tr>
1387 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; SimpleConvolution2d3x3Stride2x2Test </td>
1388 <td>(</td>
1389 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1390 <td class="paramname"><em>workloadFactory</em>, </td>
1391 </tr>
1392 <tr>
1393 <td class="paramkey"></td>
1394 <td></td>
1395 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1396 <td class="paramname"><em>memoryManager</em>, </td>
1397 </tr>
1398 <tr>
1399 <td class="paramkey"></td>
1400 <td></td>
1401 <td class="paramtype">bool&#160;</td>
1402 <td class="paramname"><em>biasEnabled</em>, </td>
1403 </tr>
1404 <tr>
1405 <td class="paramkey"></td>
1406 <td></td>
1407 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1408 <td class="paramname"><em>layout</em>&#160;</td>
1409 </tr>
1410 <tr>
1411 <td></td>
1412 <td>)</td>
1413 <td></td><td></td>
1414 </tr>
1415 </table>
1416</div><div class="memdoc">
1417
1418<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03010">3010</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1419<div class="fragment"><div class="line"><a name="l03015"></a><span class="lineno"> 3015</span>&#160;{</div><div class="line"><a name="l03016"></a><span class="lineno"> 3016</span>&#160; <span class="keywordflow">return</span> SimpleConvolution2d3x3Stride2x2TestCommon&lt;armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03017"></a><span class="lineno"> 3017</span>&#160; workloadFactory,</div><div class="line"><a name="l03018"></a><span class="lineno"> 3018</span>&#160; memoryManager,</div><div class="line"><a name="l03019"></a><span class="lineno"> 3019</span>&#160; 0.f,</div><div class="line"><a name="l03020"></a><span class="lineno"> 3020</span>&#160; 0,</div><div class="line"><a name="l03021"></a><span class="lineno"> 3021</span>&#160; biasEnabled,</div><div class="line"><a name="l03022"></a><span class="lineno"> 3022</span>&#160; layout);</div><div class="line"><a name="l03023"></a><span class="lineno"> 3023</span>&#160;}</div></div><!-- fragment -->
1420</div>
1421</div>
1422<a id="acbe1a2adccd9e0aad14fc0ccb9266b0d"></a>
1423<h2 class="memtitle"><span class="permalink"><a href="#acbe1a2adccd9e0aad14fc0ccb9266b0d">&#9670;&nbsp;</a></span>SimpleConvolution2d3x3Test()</h2>
1424
1425<div class="memitem">
1426<div class="memproto">
1427 <table class="memname">
1428 <tr>
1429 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; SimpleConvolution2d3x3Test </td>
1430 <td>(</td>
1431 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1432 <td class="paramname"><em>workloadFactory</em>, </td>
1433 </tr>
1434 <tr>
1435 <td class="paramkey"></td>
1436 <td></td>
1437 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1438 <td class="paramname"><em>memoryManager</em>, </td>
1439 </tr>
1440 <tr>
1441 <td class="paramkey"></td>
1442 <td></td>
1443 <td class="paramtype">bool&#160;</td>
1444 <td class="paramname"><em>biasEnabled</em>, </td>
1445 </tr>
1446 <tr>
1447 <td class="paramkey"></td>
1448 <td></td>
1449 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1450 <td class="paramname"><em>layout</em>&#160;</td>
1451 </tr>
1452 <tr>
1453 <td></td>
1454 <td>)</td>
1455 <td></td><td></td>
1456 </tr>
1457 </table>
1458</div><div class="memdoc">
1459
1460<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l02986">2986</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1461<div class="fragment"><div class="line"><a name="l02991"></a><span class="lineno"> 2991</span>&#160;{</div><div class="line"><a name="l02992"></a><span class="lineno"> 2992</span>&#160; <span class="keywordflow">return</span> SimpleConvolution2d3x3TestCommon&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l02993"></a><span class="lineno"> 2993</span>&#160; workloadFactory, memoryManager, 0.f, 0, biasEnabled, layout);</div><div class="line"><a name="l02994"></a><span class="lineno"> 2994</span>&#160;}</div></div><!-- fragment -->
1462</div>
1463</div>
1464<a id="ad45f359d9d4bee360bee857faa79d292"></a>
1465<h2 class="memtitle"><span class="permalink"><a href="#ad45f359d9d4bee360bee857faa79d292">&#9670;&nbsp;</a></span>SimpleConvolution2d3x3Uint8Test()</h2>
1466
1467<div class="memitem">
1468<div class="memproto">
1469 <table class="memname">
1470 <tr>
1471 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; SimpleConvolution2d3x3Uint8Test </td>
1472 <td>(</td>
1473 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1474 <td class="paramname"><em>workloadFactory</em>, </td>
1475 </tr>
1476 <tr>
1477 <td class="paramkey"></td>
1478 <td></td>
1479 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1480 <td class="paramname"><em>memoryManager</em>, </td>
1481 </tr>
1482 <tr>
1483 <td class="paramkey"></td>
1484 <td></td>
1485 <td class="paramtype">bool&#160;</td>
1486 <td class="paramname"><em>biasEnabled</em>, </td>
1487 </tr>
1488 <tr>
1489 <td class="paramkey"></td>
1490 <td></td>
1491 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1492 <td class="paramname"><em>layout</em>&#160;</td>
1493 </tr>
1494 <tr>
1495 <td></td>
1496 <td>)</td>
1497 <td></td><td></td>
1498 </tr>
1499 </table>
1500</div><div class="memdoc">
1501
1502<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03025">3025</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1503<div class="fragment"><div class="line"><a name="l03030"></a><span class="lineno"> 3030</span>&#160;{</div><div class="line"><a name="l03031"></a><span class="lineno"> 3031</span>&#160; <span class="keywordflow">return</span> SimpleConvolution2d3x3TestCommon&lt;armnn::DataType::QAsymmU8, armnn::DataType::Signed32&gt;(</div><div class="line"><a name="l03032"></a><span class="lineno"> 3032</span>&#160; workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout);</div><div class="line"><a name="l03033"></a><span class="lineno"> 3033</span>&#160;}</div></div><!-- fragment -->
1504</div>
1505</div>
1506<a id="a9dcd2fb98f5c3284c74f65a7c7a69da1"></a>
1507<h2 class="memtitle"><span class="permalink"><a href="#a9dcd2fb98f5c3284c74f65a7c7a69da1">&#9670;&nbsp;</a></span>SimpleConvolution2d3x5QSymm16Test()</h2>
1508
1509<div class="memitem">
1510<div class="memproto">
1511 <table class="memname">
1512 <tr>
1513 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;int16_t, 4&gt; SimpleConvolution2d3x5QSymm16Test </td>
1514 <td>(</td>
1515 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1516 <td class="paramname"><em>workloadFactory</em>, </td>
1517 </tr>
1518 <tr>
1519 <td class="paramkey"></td>
1520 <td></td>
1521 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1522 <td class="paramname"><em>memoryManager</em>, </td>
1523 </tr>
1524 <tr>
1525 <td class="paramkey"></td>
1526 <td></td>
1527 <td class="paramtype">bool&#160;</td>
1528 <td class="paramname"><em>biasEnabled</em>, </td>
1529 </tr>
1530 <tr>
1531 <td class="paramkey"></td>
1532 <td></td>
1533 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1534 <td class="paramname"><em>layout</em>&#160;</td>
1535 </tr>
1536 <tr>
1537 <td></td>
1538 <td>)</td>
1539 <td></td><td></td>
1540 </tr>
1541 </table>
1542</div><div class="memdoc">
1543
1544<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03035">3035</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1545<div class="fragment"><div class="line"><a name="l03040"></a><span class="lineno"> 3040</span>&#160;{</div><div class="line"><a name="l03041"></a><span class="lineno"> 3041</span>&#160; <span class="keywordflow">return</span> SimpleConvolution2d3x5TestCommon&lt;armnn::DataType::QSymmS16, armnn::DataType::Signed32&gt;(</div><div class="line"><a name="l03042"></a><span class="lineno"> 3042</span>&#160; workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout);</div><div class="line"><a name="l03043"></a><span class="lineno"> 3043</span>&#160;}</div></div><!-- fragment -->
1546</div>
1547</div>
1548<a id="afb5e7d86e241292d9cb899b960da54af"></a>
1549<h2 class="memtitle"><span class="permalink"><a href="#afb5e7d86e241292d9cb899b960da54af">&#9670;&nbsp;</a></span>SimpleConvolution2d3x5Test()</h2>
1550
1551<div class="memitem">
1552<div class="memproto">
1553 <table class="memname">
1554 <tr>
1555 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; SimpleConvolution2d3x5Test </td>
1556 <td>(</td>
1557 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1558 <td class="paramname"><em>workloadFactory</em>, </td>
1559 </tr>
1560 <tr>
1561 <td class="paramkey"></td>
1562 <td></td>
1563 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1564 <td class="paramname"><em>memoryManager</em>, </td>
1565 </tr>
1566 <tr>
1567 <td class="paramkey"></td>
1568 <td></td>
1569 <td class="paramtype">bool&#160;</td>
1570 <td class="paramname"><em>biasEnabled</em>, </td>
1571 </tr>
1572 <tr>
1573 <td class="paramkey"></td>
1574 <td></td>
1575 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1576 <td class="paramname"><em>layout</em>&#160;</td>
1577 </tr>
1578 <tr>
1579 <td></td>
1580 <td>)</td>
1581 <td></td><td></td>
1582 </tr>
1583 </table>
1584</div><div class="memdoc">
1585
1586<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l02966">2966</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1587<div class="fragment"><div class="line"><a name="l02971"></a><span class="lineno"> 2971</span>&#160;{</div><div class="line"><a name="l02972"></a><span class="lineno"> 2972</span>&#160; <span class="keywordflow">return</span> SimpleConvolution2d3x5TestCommon&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l02973"></a><span class="lineno"> 2973</span>&#160; workloadFactory, memoryManager, 0.f, 0, biasEnabled, layout);</div><div class="line"><a name="l02974"></a><span class="lineno"> 2974</span>&#160;}</div></div><!-- fragment -->
1588</div>
1589</div>
1590<a id="a8ffca1c4b38a68b10ba06f4f1416660f"></a>
1591<h2 class="memtitle"><span class="permalink"><a href="#a8ffca1c4b38a68b10ba06f4f1416660f">&#9670;&nbsp;</a></span>SimpleConvolution2d3x5Uint8Test()</h2>
1592
1593<div class="memitem">
1594<div class="memproto">
1595 <table class="memname">
1596 <tr>
1597 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;uint8_t, 4&gt; SimpleConvolution2d3x5Uint8Test </td>
1598 <td>(</td>
1599 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1600 <td class="paramname"><em>workloadFactory</em>, </td>
1601 </tr>
1602 <tr>
1603 <td class="paramkey"></td>
1604 <td></td>
1605 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1606 <td class="paramname"><em>memoryManager</em>, </td>
1607 </tr>
1608 <tr>
1609 <td class="paramkey"></td>
1610 <td></td>
1611 <td class="paramtype">bool&#160;</td>
1612 <td class="paramname"><em>biasEnabled</em>, </td>
1613 </tr>
1614 <tr>
1615 <td class="paramkey"></td>
1616 <td></td>
1617 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">armnn::DataLayout</a>&#160;</td>
1618 <td class="paramname"><em>layout</em>&#160;</td>
1619 </tr>
1620 <tr>
1621 <td></td>
1622 <td>)</td>
1623 <td></td><td></td>
1624 </tr>
1625 </table>
1626</div><div class="memdoc">
1627
1628<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l02976">2976</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1629<div class="fragment"><div class="line"><a name="l02981"></a><span class="lineno"> 2981</span>&#160;{</div><div class="line"><a name="l02982"></a><span class="lineno"> 2982</span>&#160; <span class="keywordflow">return</span> SimpleConvolution2d3x5TestCommon&lt;armnn::DataType::QAsymmU8, armnn::DataType::Signed32&gt;(</div><div class="line"><a name="l02983"></a><span class="lineno"> 2983</span>&#160; workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout);</div><div class="line"><a name="l02984"></a><span class="lineno"> 2984</span>&#160;}</div></div><!-- fragment -->
1630</div>
1631</div>
1632<a id="a77a29527216d36bce78e88354462ede8"></a>
1633<h2 class="memtitle"><span class="permalink"><a href="#a77a29527216d36bce78e88354462ede8">&#9670;&nbsp;</a></span>SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTest()</h2>
1634
1635<div class="memitem">
1636<div class="memproto">
1637 <table class="memname">
1638 <tr>
1639 <td class="memname"><a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt;float, 4&gt; SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTest </td>
1640 <td>(</td>
1641 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> &amp;&#160;</td>
1642 <td class="paramname"><em>workloadFactory</em>, </td>
1643 </tr>
1644 <tr>
1645 <td class="paramkey"></td>
1646 <td></td>
1647 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_backend_internal.xhtml#a693b40e6b94e958836aeb0410ca186bd">armnn::IBackendInternal::IMemoryManagerSharedPtr</a> &amp;&#160;</td>
1648 <td class="paramname"><em>memoryManager</em>&#160;</td>
1649 </tr>
1650 <tr>
1651 <td></td>
1652 <td>)</td>
1653 <td></td><td></td>
1654 </tr>
1655 </table>
1656</div><div class="memdoc">
1657
1658<p class="definition">Definition at line <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml#l03284">3284</a> of file <a class="el" href="_conv2d_test_impl_8cpp_source.xhtml">Conv2dTestImpl.cpp</a>.</p>
1659<div class="fragment"><div class="line"><a name="l03287"></a><span class="lineno"> 3287</span>&#160;{</div><div class="line"><a name="l03288"></a><span class="lineno"> 3288</span>&#160; <span class="keywordflow">return</span> SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTestCommon&lt;armnn::DataType::Float32, armnn::DataType::Float32&gt;(</div><div class="line"><a name="l03289"></a><span class="lineno"> 3289</span>&#160; workloadFactory,</div><div class="line"><a name="l03290"></a><span class="lineno"> 3290</span>&#160; memoryManager,</div><div class="line"><a name="l03291"></a><span class="lineno"> 3291</span>&#160; 0.f,</div><div class="line"><a name="l03292"></a><span class="lineno"> 3292</span>&#160; 0,</div><div class="line"><a name="l03293"></a><span class="lineno"> 3293</span>&#160; <span class="keyword">false</span>);</div><div class="line"><a name="l03294"></a><span class="lineno"> 3294</span>&#160;}</div></div><!-- fragment -->
1660</div>
1661</div>
1662</div><!-- contents -->
1663</div><!-- doc-content -->
1664<!-- start footer part -->
1665<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
1666 <ul>
1667 <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="_conv2d_test_impl_8hpp.xhtml">Conv2dTestImpl.hpp</a></li>
1668 <li class="footer">Generated on Fri Mar 13 2020 16:09:14 for ArmNN by
1669 <a href="http://www.doxygen.org/index.html">
1670 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
1671 </ul>
1672</div>
1673</body>
1674</html>