| <!-- HTML header for doxygen 1.8.15--> |
| <!-- Remember to use version doxygen 1.8.15 +--> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> |
| <meta http-equiv="X-UA-Compatible" content="IE=9"/> |
| <meta name="generator" content="Doxygen 1.8.15"/> |
| <meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines --> |
| <title>Compute Library: CLConvolutionKernel< matrix_size > Class Template Reference</title> |
| <link href="tabs.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="jquery.js"></script> |
| <script type="text/javascript" src="dynsections.js"></script> |
| <link href="navtree.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="resize.js"></script> |
| <script type="text/javascript" src="navtreedata.js"></script> |
| <script type="text/javascript" src="navtree.js"></script> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| $(document).ready(initResizable); |
| /* @license-end */</script> |
| <link href="search/search.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="search/searchdata.js"></script> |
| <script type="text/javascript" src="search/search.js"></script> |
| <script type="text/x-mathjax-config"> |
| MathJax.Hub.Config({ |
| extensions: ["tex2jax.js"], |
| jax: ["input/TeX","output/HTML-CSS"], |
| }); |
| </script><script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script> |
| <link href="doxygen.css" rel="stylesheet" type="text/css" /> |
| <link href="stylesheet.css" rel="stylesheet" type="text/css"/> |
| </head> |
| <body> |
| <div id="top"><!-- do not remove this div, it is closed by doxygen! --> |
| <div id="titlearea"> |
| <table cellspacing="0" cellpadding="0"> |
| <tbody> |
| <tr style="height: 56px;"> |
| <img alt="Compute Library" src="https://raw.githubusercontent.com/ARM-software/ComputeLibrary/gh-pages/ACL_logo.png" style="max-width: 100%;margin-top: 15px;margin-left: 10px"/> |
| <td style="padding-left: 0.5em;"> |
| <div id="projectname"> |
|  <span id="projectnumber">20.02.1</span> |
| </div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <!-- end header part --> |
| <!-- Generated by Doxygen 1.8.15 --> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| var searchBox = new SearchBox("searchBox", "search",false,'Search'); |
| /* @license-end */ |
| </script> |
| <script type="text/javascript" src="menudata.js"></script> |
| <script type="text/javascript" src="menu.js"></script> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| $(function() { |
| initMenu('',true,false,'search.php','Search'); |
| $(document).ready(function() { init_search(); }); |
| }); |
| /* @license-end */</script> |
| <div id="main-nav"></div> |
| </div><!-- top --> |
| <div id="side-nav" class="ui-resizable side-nav-resizable"> |
| <div id="nav-tree"> |
| <div id="nav-tree-contents"> |
| <div id="nav-sync" class="sync"></div> |
| </div> |
| </div> |
| <div id="splitbar" style="-moz-user-select:none;" |
| class="ui-resizable-handle"> |
| </div> |
| </div> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| $(document).ready(function(){initNavTree('classarm__compute_1_1_c_l_convolution_kernel.xhtml','');}); |
| /* @license-end */ |
| </script> |
| <div id="doc-content"> |
| <!-- window showing the filter options --> |
| <div id="MSearchSelectWindow" |
| onmouseover="return searchBox.OnSearchSelectShow()" |
| onmouseout="return searchBox.OnSearchSelectHide()" |
| onkeydown="return searchBox.OnSearchSelectKey(event)"> |
| </div> |
| |
| <!-- iframe showing the search results (closed by default) --> |
| <div id="MSearchResultsWindow"> |
| <iframe src="javascript:void(0)" frameborder="0" |
| name="MSearchResults" id="MSearchResults"> |
| </iframe> |
| </div> |
| |
| <div class="header"> |
| <div class="summary"> |
| <a href="#pub-methods">Public Member Functions</a> </div> |
| <div class="headertitle"> |
| <div class="title">CLConvolutionKernel< matrix_size > Class Template Reference</div> </div> |
| </div><!--header--> |
| <div class="contents"> |
| |
| <p>Interface for the kernel to run an arbitrary size convolution on a tensor. |
| <a href="classarm__compute_1_1_c_l_convolution_kernel.xhtml#details">More...</a></p> |
| |
| <p><code>#include <<a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>></code></p> |
| <div class="dynheader"> |
| Collaboration diagram for CLConvolutionKernel< matrix_size >:</div> |
| <div class="dyncontent"> |
| <div class="center"><iframe scrolling="no" frameborder="0" src="classarm__compute_1_1_c_l_convolution_kernel__coll__graph.svg" width="163" height="351"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> |
| </div> |
| <center><span class="legend">[<a target="top" href="graph_legend.xhtml">legend</a>]</span></center></div> |
| <table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> |
| Public Member Functions</h2></td></tr> |
| <tr class="memitem:a07e35fa34ecbbc82d848fa3997cc6fdb"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml#a07e35fa34ecbbc82d848fa3997cc6fdb">configure</a> (const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *input, <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *output, const int16_t *conv, uint32_t scale, bool border_undefined)</td></tr> |
| <tr class="memdesc:a07e35fa34ecbbc82d848fa3997cc6fdb"><td class="mdescLeft"> </td><td class="mdescRight">Initialise the kernel's input, output and border mode. <a href="#a07e35fa34ecbbc82d848fa3997cc6fdb">More...</a><br /></td></tr> |
| <tr class="separator:a07e35fa34ecbbc82d848fa3997cc6fdb"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a423f9a45a52983b4de5e2b347f4369c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml#a423f9a45a52983b4de5e2b347f4369c7">border_size</a> () const override</td></tr> |
| <tr class="memdesc:a423f9a45a52983b4de5e2b347f4369c7"><td class="mdescLeft"> </td><td class="mdescRight">The size of the border for that kernel. <a href="#a423f9a45a52983b4de5e2b347f4369c7">More...</a><br /></td></tr> |
| <tr class="separator:a423f9a45a52983b4de5e2b347f4369c7"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="inherit_header pub_methods_classarm__compute_1_1_i_c_l_simple2_d_kernel"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarm__compute_1_1_i_c_l_simple2_d_kernel')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classarm__compute_1_1_i_c_l_simple2_d_kernel.xhtml">ICLSimple2DKernel</a></td></tr> |
| <tr class="memitem:a493987e85723a8000eb26d1f00e2ad0e inherit pub_methods_classarm__compute_1_1_i_c_l_simple2_d_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple2_d_kernel.xhtml#a493987e85723a8000eb26d1f00e2ad0e">run</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>, cl::CommandQueue &queue) override</td></tr> |
| <tr class="memdesc:a493987e85723a8000eb26d1f00e2ad0e inherit pub_methods_classarm__compute_1_1_i_c_l_simple2_d_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Enqueue the OpenCL kernel to process the given window on the passed OpenCL command queue. <a href="classarm__compute_1_1_i_c_l_simple2_d_kernel.xhtml#a493987e85723a8000eb26d1f00e2ad0e">More...</a><br /></td></tr> |
| <tr class="separator:a493987e85723a8000eb26d1f00e2ad0e inherit pub_methods_classarm__compute_1_1_i_c_l_simple2_d_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="inherit_header pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarm__compute_1_1_i_c_l_simple_kernel')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml">ICLSimpleKernel</a></td></tr> |
| <tr class="memitem:a71b19222a7962c5b951b2ed9a752bd9f inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a71b19222a7962c5b951b2ed9a752bd9f">ICLSimpleKernel</a> ()</td></tr> |
| <tr class="memdesc:a71b19222a7962c5b951b2ed9a752bd9f inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a71b19222a7962c5b951b2ed9a752bd9f">More...</a><br /></td></tr> |
| <tr class="separator:a71b19222a7962c5b951b2ed9a752bd9f inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aeb0435149b582dcab0c75477c83f8cc0 inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#aeb0435149b582dcab0c75477c83f8cc0">ICLSimpleKernel</a> (const <a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml">ICLSimpleKernel</a> &)=delete</td></tr> |
| <tr class="memdesc:aeb0435149b582dcab0c75477c83f8cc0 inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Prevent instances of this class from being copied (As this class contains pointers) <a href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#aeb0435149b582dcab0c75477c83f8cc0">More...</a><br /></td></tr> |
| <tr class="separator:aeb0435149b582dcab0c75477c83f8cc0 inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a8bc8fdf1a67fbaaa3270fd5eeecfc6cf inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml">ICLSimpleKernel</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a8bc8fdf1a67fbaaa3270fd5eeecfc6cf">operator=</a> (const <a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml">ICLSimpleKernel</a> &)=delete</td></tr> |
| <tr class="memdesc:a8bc8fdf1a67fbaaa3270fd5eeecfc6cf inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Prevent instances of this class from being copied (As this class contains pointers) <a href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a8bc8fdf1a67fbaaa3270fd5eeecfc6cf">More...</a><br /></td></tr> |
| <tr class="separator:a8bc8fdf1a67fbaaa3270fd5eeecfc6cf inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a39b0093ec5f1344ffa4ac15a2c6f19e6 inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a39b0093ec5f1344ffa4ac15a2c6f19e6">ICLSimpleKernel</a> (<a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml">ICLSimpleKernel</a> &&)=default</td></tr> |
| <tr class="memdesc:a39b0093ec5f1344ffa4ac15a2c6f19e6 inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Allow instances of this class to be moved. <a href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a39b0093ec5f1344ffa4ac15a2c6f19e6">More...</a><br /></td></tr> |
| <tr class="separator:a39b0093ec5f1344ffa4ac15a2c6f19e6 inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:affc101ff7826063a907b73a062e80216 inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml">ICLSimpleKernel</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#affc101ff7826063a907b73a062e80216">operator=</a> (<a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml">ICLSimpleKernel</a> &&)=default</td></tr> |
| <tr class="memdesc:affc101ff7826063a907b73a062e80216 inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Allow instances of this class to be moved. <a href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#affc101ff7826063a907b73a062e80216">More...</a><br /></td></tr> |
| <tr class="separator:affc101ff7826063a907b73a062e80216 inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a0038fc9fcfaba0b247991f74395ef0fa inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a0038fc9fcfaba0b247991f74395ef0fa">~ICLSimpleKernel</a> ()=default</td></tr> |
| <tr class="memdesc:a0038fc9fcfaba0b247991f74395ef0fa inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Default destructor. <a href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a0038fc9fcfaba0b247991f74395ef0fa">More...</a><br /></td></tr> |
| <tr class="separator:a0038fc9fcfaba0b247991f74395ef0fa inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a1a4031af60bf9aff1b58a3acf3c95fae inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a1a4031af60bf9aff1b58a3acf3c95fae">configure</a> (const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *input, <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *output, unsigned int <a class="el" href="_c_l_im2_col_kernel_8cpp.xhtml#a4e45c1f5e4280813a78a77dda71d8799">num_elems_processed_per_iteration</a>, bool border_undefined=false, const <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#a4b3a97ba5dded504a2f2261c078493dd">border_size</a>=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr> |
| <tr class="memdesc:a1a4031af60bf9aff1b58a3acf3c95fae inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Configure the kernel. <a href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#a1a4031af60bf9aff1b58a3acf3c95fae">More...</a><br /></td></tr> |
| <tr class="separator:a1a4031af60bf9aff1b58a3acf3c95fae inherit pub_methods_classarm__compute_1_1_i_c_l_simple_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="inherit_header pub_methods_classarm__compute_1_1_i_c_l_kernel"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarm__compute_1_1_i_c_l_kernel')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml">ICLKernel</a></td></tr> |
| <tr class="memitem:a6b10e96ce90bf901d17def86b874b019 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a6b10e96ce90bf901d17def86b874b019">ICLKernel</a> ()</td></tr> |
| <tr class="memdesc:a6b10e96ce90bf901d17def86b874b019 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a6b10e96ce90bf901d17def86b874b019">More...</a><br /></td></tr> |
| <tr class="separator:a6b10e96ce90bf901d17def86b874b019 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ae5121015ab09ece4d470f50c7ffe198e inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">cl::Kernel & </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ae5121015ab09ece4d470f50c7ffe198e">kernel</a> ()</td></tr> |
| <tr class="memdesc:ae5121015ab09ece4d470f50c7ffe198e inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Returns a reference to the OpenCL kernel of this object. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#ae5121015ab09ece4d470f50c7ffe198e">More...</a><br /></td></tr> |
| <tr class="separator:ae5121015ab09ece4d470f50c7ffe198e inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a9331d385192a50adf74d3af40ce0fa20 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memTemplParams" colspan="2">template<typename T > </td></tr> |
| <tr class="memitem:a9331d385192a50adf74d3af40ce0fa20 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a9331d385192a50adf74d3af40ce0fa20">add_1D_array_argument</a> (unsigned int &idx, const <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>< T > *array, const <a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a> &strides, unsigned int num_dimensions, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="memdesc:a9331d385192a50adf74d3af40ce0fa20 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Add the passed 1D array's parameters to the object's kernel's arguments starting from the index idx. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a9331d385192a50adf74d3af40ce0fa20">More...</a><br /></td></tr> |
| <tr class="separator:a9331d385192a50adf74d3af40ce0fa20 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a479e7043e65dc87de35d374e108510f7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a479e7043e65dc87de35d374e108510f7">add_1D_tensor_argument</a> (unsigned int &idx, const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *tensor, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="memdesc:a479e7043e65dc87de35d374e108510f7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Add the passed 1D tensor's parameters to the object's kernel's arguments starting from the index idx. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a479e7043e65dc87de35d374e108510f7">More...</a><br /></td></tr> |
| <tr class="separator:a479e7043e65dc87de35d374e108510f7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a25965a58d98e44856da286925792a2f7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a25965a58d98e44856da286925792a2f7">add_1D_tensor_argument_if</a> (bool cond, unsigned int &idx, const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *tensor, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="memdesc:a25965a58d98e44856da286925792a2f7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Add the passed 1D tensor's parameters to the object's kernel's arguments starting from the index idx if the condition is true. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a25965a58d98e44856da286925792a2f7">More...</a><br /></td></tr> |
| <tr class="separator:a25965a58d98e44856da286925792a2f7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ac74dad3e61f79334f5e73f3c3ac603cb inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ac74dad3e61f79334f5e73f3c3ac603cb">add_2D_tensor_argument</a> (unsigned int &idx, const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *tensor, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="memdesc:ac74dad3e61f79334f5e73f3c3ac603cb inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Add the passed 2D tensor's parameters to the object's kernel's arguments starting from the index idx. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#ac74dad3e61f79334f5e73f3c3ac603cb">More...</a><br /></td></tr> |
| <tr class="separator:ac74dad3e61f79334f5e73f3c3ac603cb inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a2ada6044648832c64532588f75303b44 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a2ada6044648832c64532588f75303b44">add_2D_tensor_argument_if</a> (bool cond, unsigned int &idx, const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *tensor, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="memdesc:a2ada6044648832c64532588f75303b44 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Add the passed 2D tensor's parameters to the object's kernel's arguments starting from the index idx if the condition is true. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a2ada6044648832c64532588f75303b44">More...</a><br /></td></tr> |
| <tr class="separator:a2ada6044648832c64532588f75303b44 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a28f5847162f352444c6ac1825d0e99c7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a28f5847162f352444c6ac1825d0e99c7">add_3D_tensor_argument</a> (unsigned int &idx, const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *tensor, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="memdesc:a28f5847162f352444c6ac1825d0e99c7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Add the passed 3D tensor's parameters to the object's kernel's arguments starting from the index idx. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a28f5847162f352444c6ac1825d0e99c7">More...</a><br /></td></tr> |
| <tr class="separator:a28f5847162f352444c6ac1825d0e99c7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a33e09c946b338fbfc780a9d1c66e68ad inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a33e09c946b338fbfc780a9d1c66e68ad">add_4D_tensor_argument</a> (unsigned int &idx, const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *tensor, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="memdesc:a33e09c946b338fbfc780a9d1c66e68ad inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Add the passed 4D tensor's parameters to the object's kernel's arguments starting from the index idx. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a33e09c946b338fbfc780a9d1c66e68ad">More...</a><br /></td></tr> |
| <tr class="separator:a33e09c946b338fbfc780a9d1c66e68ad inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a50f427a1d9419800972b9e03c4034311 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memTemplParams" colspan="2">template<typename T > </td></tr> |
| <tr class="memitem:a50f427a1d9419800972b9e03c4034311 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a50f427a1d9419800972b9e03c4034311">add_argument</a> (unsigned int &idx, T value)</td></tr> |
| <tr class="memdesc:a50f427a1d9419800972b9e03c4034311 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Add the passed parameters to the object's kernel's arguments starting from the index idx. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a50f427a1d9419800972b9e03c4034311">More...</a><br /></td></tr> |
| <tr class="separator:a50f427a1d9419800972b9e03c4034311 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad356b88c8f61267d593d9ed99835bde9 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ad356b88c8f61267d593d9ed99835bde9">set_lws_hint</a> (const cl::NDRange &<a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ab9f813c25ed75ea7b7ac2fa3926a8f55">lws_hint</a>)</td></tr> |
| <tr class="memdesc:ad356b88c8f61267d593d9ed99835bde9 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Set the Local-Workgroup-Size hint. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#ad356b88c8f61267d593d9ed99835bde9">More...</a><br /></td></tr> |
| <tr class="separator:ad356b88c8f61267d593d9ed99835bde9 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ab9f813c25ed75ea7b7ac2fa3926a8f55 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">cl::NDRange </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ab9f813c25ed75ea7b7ac2fa3926a8f55">lws_hint</a> () const</td></tr> |
| <tr class="memdesc:ab9f813c25ed75ea7b7ac2fa3926a8f55 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Return the Local-Workgroup-Size hint. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#ab9f813c25ed75ea7b7ac2fa3926a8f55">More...</a><br /></td></tr> |
| <tr class="separator:ab9f813c25ed75ea7b7ac2fa3926a8f55 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a8f7f6ab59fc0e601d750b83e75a398eb inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">const std::string & </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a8f7f6ab59fc0e601d750b83e75a398eb">config_id</a> () const</td></tr> |
| <tr class="memdesc:a8f7f6ab59fc0e601d750b83e75a398eb inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Get the configuration ID. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a8f7f6ab59fc0e601d750b83e75a398eb">More...</a><br /></td></tr> |
| <tr class="separator:a8f7f6ab59fc0e601d750b83e75a398eb inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad5ba9d34a3a855bf1dd2e36316ff550a inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ad5ba9d34a3a855bf1dd2e36316ff550a">set_target</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target)</td></tr> |
| <tr class="memdesc:ad5ba9d34a3a855bf1dd2e36316ff550a inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Set the targeted GPU architecture. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#ad5ba9d34a3a855bf1dd2e36316ff550a">More...</a><br /></td></tr> |
| <tr class="separator:ad5ba9d34a3a855bf1dd2e36316ff550a inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a57e5f498fcbfc25c28b8496dfa3fc33c inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a57e5f498fcbfc25c28b8496dfa3fc33c">set_target</a> (cl::Device &device)</td></tr> |
| <tr class="memdesc:a57e5f498fcbfc25c28b8496dfa3fc33c inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Set the targeted GPU architecture according to the CL device. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a57e5f498fcbfc25c28b8496dfa3fc33c">More...</a><br /></td></tr> |
| <tr class="separator:a57e5f498fcbfc25c28b8496dfa3fc33c inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aa550ff0352ff2388e02f7b0a41bf5fe7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#aa550ff0352ff2388e02f7b0a41bf5fe7">get_target</a> () const</td></tr> |
| <tr class="memdesc:aa550ff0352ff2388e02f7b0a41bf5fe7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Get the targeted GPU architecture. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#aa550ff0352ff2388e02f7b0a41bf5fe7">More...</a><br /></td></tr> |
| <tr class="separator:aa550ff0352ff2388e02f7b0a41bf5fe7 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:abca336f832d730e8494049bd714df60a inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#abca336f832d730e8494049bd714df60a">get_max_workgroup_size</a> ()</td></tr> |
| <tr class="memdesc:abca336f832d730e8494049bd714df60a inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Get the maximum workgroup size for the device the <a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml" title="CLKernelLibrary class.">CLKernelLibrary</a> uses. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#abca336f832d730e8494049bd714df60a">More...</a><br /></td></tr> |
| <tr class="separator:abca336f832d730e8494049bd714df60a inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a2d7c6b5f3332604ad6a637457f65c342 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memTemplParams" colspan="2">template<typename T , unsigned int dimension_size> </td></tr> |
| <tr class="memitem:a2d7c6b5f3332604ad6a637457f65c342 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a2d7c6b5f3332604ad6a637457f65c342">add_array_argument</a> (unsigned &idx, const <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>< T > *array, const <a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a> &strides, unsigned int num_dimensions, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="memdesc:a2d7c6b5f3332604ad6a637457f65c342 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Add the passed array's parameters to the object's kernel's arguments starting from the index idx. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a2d7c6b5f3332604ad6a637457f65c342">More...</a><br /></td></tr> |
| <tr class="separator:a2d7c6b5f3332604ad6a637457f65c342 inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aa0191633c258a30cc27e35b99b663aac inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memTemplParams" colspan="2">template<unsigned int dimension_size> </td></tr> |
| <tr class="memitem:aa0191633c258a30cc27e35b99b663aac inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#aa0191633c258a30cc27e35b99b663aac">add_tensor_argument</a> (unsigned &idx, const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> *tensor, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="separator:aa0191633c258a30cc27e35b99b663aac inherit pub_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="inherit_header pub_methods_classarm__compute_1_1_i_kernel"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarm__compute_1_1_i_kernel')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classarm__compute_1_1_i_kernel.xhtml">IKernel</a></td></tr> |
| <tr class="memitem:a7250cb8cbaa4104a93a2d77155085507 inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_kernel.xhtml#a7250cb8cbaa4104a93a2d77155085507">IKernel</a> ()</td></tr> |
| <tr class="memdesc:a7250cb8cbaa4104a93a2d77155085507 inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="classarm__compute_1_1_i_kernel.xhtml#a7250cb8cbaa4104a93a2d77155085507">More...</a><br /></td></tr> |
| <tr class="separator:a7250cb8cbaa4104a93a2d77155085507 inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a341b60d15a5e12a5b8f3825194dd3b12 inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_kernel.xhtml#a341b60d15a5e12a5b8f3825194dd3b12">~IKernel</a> ()=default</td></tr> |
| <tr class="memdesc:a341b60d15a5e12a5b8f3825194dd3b12 inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="classarm__compute_1_1_i_kernel.xhtml#a341b60d15a5e12a5b8f3825194dd3b12">More...</a><br /></td></tr> |
| <tr class="separator:a341b60d15a5e12a5b8f3825194dd3b12 inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a0466ee6ce6552c87595f0e88e73eeb1b inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_kernel.xhtml#a0466ee6ce6552c87595f0e88e73eeb1b">is_parallelisable</a> () const</td></tr> |
| <tr class="memdesc:a0466ee6ce6552c87595f0e88e73eeb1b inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Indicates whether or not the kernel is parallelisable. <a href="classarm__compute_1_1_i_kernel.xhtml#a0466ee6ce6552c87595f0e88e73eeb1b">More...</a><br /></td></tr> |
| <tr class="separator:a0466ee6ce6552c87595f0e88e73eeb1b inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad34a46f53686c12a5c5e717cc9617fb6 inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a> () const</td></tr> |
| <tr class="memdesc:ad34a46f53686c12a5c5e717cc9617fb6 inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="mdescLeft"> </td><td class="mdescRight">The maximum window the kernel can be executed on. <a href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">More...</a><br /></td></tr> |
| <tr class="separator:ad34a46f53686c12a5c5e717cc9617fb6 inherit pub_methods_classarm__compute_1_1_i_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a> |
| Additional Inherited Members</h2></td></tr> |
| <tr class="inherit_header pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classarm__compute_1_1_i_c_l_kernel')"><img src="closed.png" alt="-"/> Static Public Member Functions inherited from <a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml">ICLKernel</a></td></tr> |
| <tr class="memitem:a278f0e6c68ca17e71f4c4ff82f360aa0 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">static constexpr unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a278f0e6c68ca17e71f4c4ff82f360aa0">num_arguments_per_1D_array</a> ()</td></tr> |
| <tr class="memdesc:a278f0e6c68ca17e71f4c4ff82f360aa0 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Returns the number of arguments enqueued per 1D array object. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a278f0e6c68ca17e71f4c4ff82f360aa0">More...</a><br /></td></tr> |
| <tr class="separator:a278f0e6c68ca17e71f4c4ff82f360aa0 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a43b6c5e4b57069c5f61e96dff24c212d inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">static constexpr unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a43b6c5e4b57069c5f61e96dff24c212d">num_arguments_per_1D_tensor</a> ()</td></tr> |
| <tr class="memdesc:a43b6c5e4b57069c5f61e96dff24c212d inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Returns the number of arguments enqueued per 1D tensor object. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a43b6c5e4b57069c5f61e96dff24c212d">More...</a><br /></td></tr> |
| <tr class="separator:a43b6c5e4b57069c5f61e96dff24c212d inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a45601e0d46621a5b6f2e417d60e5c800 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">static constexpr unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a45601e0d46621a5b6f2e417d60e5c800">num_arguments_per_2D_tensor</a> ()</td></tr> |
| <tr class="memdesc:a45601e0d46621a5b6f2e417d60e5c800 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Returns the number of arguments enqueued per 2D tensor object. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a45601e0d46621a5b6f2e417d60e5c800">More...</a><br /></td></tr> |
| <tr class="separator:a45601e0d46621a5b6f2e417d60e5c800 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a6c9c1e7a7d96743375ca40847f0f12e2 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">static constexpr unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a6c9c1e7a7d96743375ca40847f0f12e2">num_arguments_per_3D_tensor</a> ()</td></tr> |
| <tr class="memdesc:a6c9c1e7a7d96743375ca40847f0f12e2 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Returns the number of arguments enqueued per 3D tensor object. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a6c9c1e7a7d96743375ca40847f0f12e2">More...</a><br /></td></tr> |
| <tr class="separator:a6c9c1e7a7d96743375ca40847f0f12e2 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a184fdf37587a9314cf12623accea6c73 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">static constexpr unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a184fdf37587a9314cf12623accea6c73">num_arguments_per_4D_tensor</a> ()</td></tr> |
| <tr class="memdesc:a184fdf37587a9314cf12623accea6c73 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Returns the number of arguments enqueued per 4D tensor object. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a184fdf37587a9314cf12623accea6c73">More...</a><br /></td></tr> |
| <tr class="separator:a184fdf37587a9314cf12623accea6c73 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a6c01790e4e3f22f70f69002f0cb1b913 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memItemLeft" align="right" valign="top">static cl::NDRange </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml#a6c01790e4e3f22f70f69002f0cb1b913">gws_from_window</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &<a class="el" href="classarm__compute_1_1_i_kernel.xhtml#ad34a46f53686c12a5c5e717cc9617fb6">window</a>)</td></tr> |
| <tr class="memdesc:a6c01790e4e3f22f70f69002f0cb1b913 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="mdescLeft"> </td><td class="mdescRight">Get the global work size given an execution window. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#a6c01790e4e3f22f70f69002f0cb1b913">More...</a><br /></td></tr> |
| <tr class="separator:a6c01790e4e3f22f70f69002f0cb1b913 inherit pub_static_methods_classarm__compute_1_1_i_c_l_kernel"><td class="memSeparator" colspan="2"> </td></tr> |
| </table> |
| <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> |
| <div class="textblock"><h3>template<unsigned int matrix_size><br /> |
| class arm_compute::CLConvolutionKernel< matrix_size ></h3> |
| |
| <p>Interface for the kernel to run an arbitrary size convolution on a tensor. </p> |
| <p>(Currently supports 3x3, 5x5, 7x7 and 9x9). The client can supply a convolution matrix \( C_{m,n} \). </p><p class="formulaDsp"> |
| \begin{eqnarray} k_0 &=& \frac{m}{2} \\ l_0 &=& \frac{n}{2} \\ sum &=& \sum_{k=0,l=0}^{k=m-1,l=n-1} input(x+k-k_0, y+l-l_0) C_{k,l} \end{eqnarray} |
| </p> |
| <dl class="section note"><dt>Note</dt><dd>The above equation for this function is similar to the default OpenCV Filter2D function, which actually computes a correlation and not a convolution. In case of a real convolution the convolution matrix should be flipped both horizontally and vertically. </dd></dl> |
| |
| <p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00052">52</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p> |
| </div><h2 class="groupheader">Member Function Documentation</h2> |
| <a id="a423f9a45a52983b4de5e2b347f4369c7"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a423f9a45a52983b4de5e2b347f4369c7">◆ </a></span>border_size()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>The size of the border for that kernel. </p> |
| <dl class="section return"><dt>Returns</dt><dd>The width in number of elements of the border. </dd></dl> |
| |
| <p>Reimplemented from <a class="el" href="classarm__compute_1_1_i_kernel.xhtml#a4b3a97ba5dded504a2f2261c078493dd">IKernel</a>.</p> |
| |
| <p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00054">54</a> of file <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml">CLConvolutionKernel.cpp</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00055"></a><span class="lineno"> 55</span> {</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="keywordflow">return</span> BorderSize(matrix_size / 2);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> }</div></div><!-- fragment --> |
| </div> |
| </div> |
| <a id="a07e35fa34ecbbc82d848fa3997cc6fdb"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a07e35fa34ecbbc82d848fa3997cc6fdb">◆ </a></span>configure()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void configure </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> * </td> |
| <td class="paramname"><em>input</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> * </td> |
| <td class="paramname"><em>output</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const int16_t * </td> |
| <td class="paramname"><em>conv</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">uint32_t </td> |
| <td class="paramname"><em>scale</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">bool </td> |
| <td class="paramname"><em>border_undefined</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Initialise the kernel's input, output and border mode. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Source tensor. Data types supported: U8. </td></tr> |
| <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Destination tensor, Data types supported: U8, S16. </td></tr> |
| <tr><td class="paramdir">[in]</td><td class="paramname">conv</td><td>Convolution matrix to apply to the input tensor. </td></tr> |
| <tr><td class="paramdir">[in]</td><td class="paramname">scale</td><td>Scale of the convolution matrix. If 0 is passed, it will be set to the sum of the coefficients of the convolution or 1 if they add up to 0. </td></tr> |
| <tr><td class="paramdir">[in]</td><td class="paramname">border_undefined</td><td>True if the border mode is undefined. False if it's replicate or constant. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| <p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00060">60</a> of file <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml">CLConvolutionKernel.cpp</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> {</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <a class="code" href="_validate_8h.xhtml#aadf5c9cff86327b96d88d04649d9715e">ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a8fcf2ddd9a1d58b1b280f5c0aed71845">input</a>, 1, <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">DataType::U8</a>);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <a class="code" href="_validate_8h.xhtml#aadf5c9cff86327b96d88d04649d9715e">ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN</a>(output, 1, <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">DataType::U8</a>, <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">DataType::S16</a>);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a006546051719c5fb4b20c966a26b9c76">conv</a> == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  _input = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a8fcf2ddd9a1d58b1b280f5c0aed71845">input</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  _output = output;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  std::stringstream <a class="code" href="_c_l_im2_col_kernel_8cpp.xhtml#a624a24e6d361fe7b8b8b2f6b375683a4">kernel_name</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  CLBuildOptions build_opts;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <a class="code" href="_c_l_im2_col_kernel_8cpp.xhtml#a624a24e6d361fe7b8b8b2f6b375683a4">kernel_name</a> << <span class="stringliteral">"convolution"</span> << matrix_size << <span class="stringliteral">"x"</span> << matrix_size << <span class="stringliteral">"_static"</span>;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a> == 0)</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a> = <a class="code" href="namespacearm__compute.xhtml#a0101a40c4a6acc2af3b55afa7632f16a">calculate_matrix_scale</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a006546051719c5fb4b20c966a26b9c76">conv</a>, matrix_size);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  }</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i < matrix_size * matrix_size; i++)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  std::stringstream mat_str;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  mat_str << <span class="stringliteral">"-DMAT"</span> << i << <span class="stringliteral">"="</span> << <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a006546051719c5fb4b20c966a26b9c76">conv</a>[i];</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  build_opts.add_option(mat_str.str());</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  }</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  build_opts.add_option(<span class="stringliteral">"-DSCALE="</span> + <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#acc5dddee1cbe93a4eaf0a9f74ee96bb7">support::cpp11::to_string</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a>));</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5f5b6c4337eac9e2e0046ca2304d80dc">data_type</a> = <a class="code" href="namespacearm__compute.xhtml#a3992df9e8723140a53e49dc194d89ef5">data_type_for_convolution_matrix</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a006546051719c5fb4b20c966a26b9c76">conv</a>, matrix_size * matrix_size);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  build_opts.add_option(<span class="stringliteral">"-DDATA_TYPE="</span> + <a class="code" href="namespacearm__compute.xhtml#a545eeda2eaa3f5a54345ce8169e21184">get_cl_type_from_data_type</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5f5b6c4337eac9e2e0046ca2304d80dc">data_type</a>));</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  std::stringstream out_type;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  out_type << <span class="stringliteral">"-DDATA_TYPE_OUT="</span> << <a class="code" href="namespacearm__compute.xhtml#a545eeda2eaa3f5a54345ce8169e21184">get_cl_type_from_data_type</a>(output->info()->data_type());</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  build_opts.add_option(out_type.str());</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  _kernel = static_cast<cl::Kernel>(<a class="code" href="classarm__compute_1_1_c_l_kernel_library.xhtml#acba005f5ce2c62cbf3f94d074d9007aa">CLKernelLibrary::get</a>().<a class="code" href="namespacearm__compute.xhtml#abc72c95941485d8a068fa38372308574">create_kernel</a>(<a class="code" href="_c_l_im2_col_kernel_8cpp.xhtml#a624a24e6d361fe7b8b8b2f6b375683a4">kernel_name</a>.str(), build_opts.options()));</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="comment">// Configure kernel window</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  constexpr <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="_c_l_im2_col_kernel_8cpp.xhtml#a4e45c1f5e4280813a78a77dda71d8799">num_elems_processed_per_iteration</a> = 8;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  constexpr <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> num_elems_written_per_iteration = 8;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  constexpr <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> num_elems_read_per_iteration = 16;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  constexpr <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> num_rows_read_per_iteration = matrix_size;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  Window win = <a class="code" href="namespacearm__compute.xhtml#ab7980fa5ee693e3282a76da047a1c3b5">calculate_max_window</a>(*<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a8fcf2ddd9a1d58b1b280f5c0aed71845">input</a>->info(), Steps(<a class="code" href="_c_l_im2_col_kernel_8cpp.xhtml#a4e45c1f5e4280813a78a77dda71d8799">num_elems_processed_per_iteration</a>), border_undefined, <a class="code" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml#a423f9a45a52983b4de5e2b347f4369c7">border_size</a>());</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  AccessWindowRectangle input_access(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a8fcf2ddd9a1d58b1b280f5c0aed71845">input</a>->info(), -<a class="code" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml#a423f9a45a52983b4de5e2b347f4369c7">border_size</a>().<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>, -<a class="code" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml#a423f9a45a52983b4de5e2b347f4369c7">border_size</a>().<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>, num_elems_read_per_iteration, num_rows_read_per_iteration);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  AccessWindowHorizontal output_access(output->info(), 0, num_elems_written_per_iteration);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <a class="code" href="namespacearm__compute.xhtml#afc4bd8e872567d9c4c57d89eb0bb3da1">update_window_and_padding</a>(win, input_access, output_access);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  output_access.set_valid_region(win, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a8fcf2ddd9a1d58b1b280f5c0aed71845">input</a>->info()->valid_region(), border_undefined, <a class="code" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml#a423f9a45a52983b4de5e2b347f4369c7">border_size</a>());</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  ICLKernel::configure_internal(win);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> }</div><div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a3fdd42ea34070a54e696b3adc28c4be3"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">arm_compute::BorderSize::top</a></div><div class="ttdeci">unsigned int top</div><div class="ttdoc">top of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00349">Types.h:349</a></div></div> |
| <div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">arm_compute::Format::U8</a></div><div class="ttdoc">1 channel, 1 U8 per channel</div></div> |
| <div class="ttc" id="namespacearm__compute_1_1support_1_1cpp11_xhtml_acc5dddee1cbe93a4eaf0a9f74ee96bb7"><div class="ttname"><a href="namespacearm__compute_1_1support_1_1cpp11.xhtml#acc5dddee1cbe93a4eaf0a9f74ee96bb7">arm_compute::support::cpp11::to_string</a></div><div class="ttdeci">std::string to_string(T &&value)</div><div class="ttdoc">Convert integer and float values to string.</div><div class="ttdef"><b>Definition:</b> <a href="_toolchain_support_8h_source.xhtml#l00272">ToolchainSupport.h:272</a></div></div> |
| <div class="ttc" id="classarm__compute_1_1_c_l_convolution_kernel_xhtml_a423f9a45a52983b4de5e2b347f4369c7"><div class="ttname"><a href="classarm__compute_1_1_c_l_convolution_kernel.xhtml#a423f9a45a52983b4de5e2b347f4369c7">arm_compute::CLConvolutionKernel::border_size</a></div><div class="ttdeci">BorderSize border_size() const override</div><div class="ttdoc">The size of the border for that kernel.</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_convolution_kernel_8cpp_source.xhtml#l00054">CLConvolutionKernel.cpp:54</a></div></div> |
| <div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00466">Error.h:466</a></div></div> |
| <div class="ttc" id="classarm__compute_1_1_c_l_kernel_library_xhtml_acba005f5ce2c62cbf3f94d074d9007aa"><div class="ttname"><a href="classarm__compute_1_1_c_l_kernel_library.xhtml#acba005f5ce2c62cbf3f94d074d9007aa">arm_compute::CLKernelLibrary::get</a></div><div class="ttdeci">static CLKernelLibrary & get()</div><div class="ttdoc">Access the KernelLibrary singleton.</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_kernel_library_8cpp_source.xhtml#l01072">CLKernelLibrary.cpp:1072</a></div></div> |
| <div class="ttc" id="namespacearm__compute_xhtml_a0101a40c4a6acc2af3b55afa7632f16a"><div class="ttname"><a href="namespacearm__compute.xhtml#a0101a40c4a6acc2af3b55afa7632f16a">arm_compute::calculate_matrix_scale</a></div><div class="ttdeci">uint32_t calculate_matrix_scale(const int16_t *matrix, unsigned int matrix_size)</div><div class="ttdoc">Calculate the scale of the given square matrix.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00709">Utils.h:709</a></div></div> |
| <div class="ttc" id="namespacearm__compute_xhtml_ab7980fa5ee693e3282a76da047a1c3b5"><div class="ttname"><a href="namespacearm__compute.xhtml#ab7980fa5ee693e3282a76da047a1c3b5">arm_compute::calculate_max_window</a></div><div class="ttdeci">Window calculate_max_window(const ValidRegion &valid_region, const Steps &steps=Steps(), bool skip_border=false, BorderSize border_size=BorderSize())</div><div class="ttdoc">Calculate the maximum window for a given tensor shape and border setting.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_helpers_8cpp_source.xhtml#l00028">Helpers.cpp:28</a></div></div> |
| <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a8fcf2ddd9a1d58b1b280f5c0aed71845"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a8fcf2ddd9a1d58b1b280f5c0aed71845">arm_compute::test::validation::input</a></div><div class="ttdeci">auto input</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_l_s_t_m_layer_quantized_8cpp_source.xhtml#l00487">LSTMLayerQuantized.cpp:487</a></div></div> |
| <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a006546051719c5fb4b20c966a26b9c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a006546051719c5fb4b20c966a26b9c76">arm_compute::test::validation::conv</a></div><div class="ttdeci">std::array< int16_t, 25 > conv</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_convolution_8cpp_source.xhtml#l00125">Convolution.cpp:125</a></div></div> |
| <div class="ttc" id="namespacearm__compute_xhtml_afc4bd8e872567d9c4c57d89eb0bb3da1"><div class="ttname"><a href="namespacearm__compute.xhtml#afc4bd8e872567d9c4c57d89eb0bb3da1">arm_compute::update_window_and_padding</a></div><div class="ttdeci">bool update_window_and_padding(Window &win, Ts &&... patterns)</div><div class="ttdoc">Update window and padding size for each of the access patterns.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00402">Helpers.h:402</a></div></div> |
| <div class="ttc" id="_c_l_im2_col_kernel_8cpp_xhtml_a624a24e6d361fe7b8b8b2f6b375683a4"><div class="ttname"><a href="_c_l_im2_col_kernel_8cpp.xhtml#a624a24e6d361fe7b8b8b2f6b375683a4">kernel_name</a></div><div class="ttdeci">std::string kernel_name</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00052">CLIm2ColKernel.cpp:52</a></div></div> |
| <div class="ttc" id="namespacearm__compute_xhtml_a545eeda2eaa3f5a54345ce8169e21184"><div class="ttname"><a href="namespacearm__compute.xhtml#a545eeda2eaa3f5a54345ce8169e21184">arm_compute::get_cl_type_from_data_type</a></div><div class="ttdeci">std::string get_cl_type_from_data_type(const DataType &dt)</div><div class="ttdoc">Translates a tensor data type to the appropriate OpenCL type.</div><div class="ttdef"><b>Definition:</b> <a href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00037">CLHelpers.cpp:37</a></div></div> |
| <div class="ttc" id="namespacearm__compute_xhtml_abc72c95941485d8a068fa38372308574"><div class="ttname"><a href="namespacearm__compute.xhtml#abc72c95941485d8a068fa38372308574">arm_compute::create_kernel</a></div><div class="ttdeci">std::unique_ptr< Kernel > create_kernel()</div><div class="ttdoc">Helper function to create and return a unique_ptr pointed to a CL/GLES kernel object.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00086">Helpers.h:86</a></div></div> |
| <div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a05374b750b0fc472c34ee61e6f028bba"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">arm_compute::BorderSize::left</a></div><div class="ttdeci">unsigned int left</div><div class="ttdoc">left of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00352">Types.h:352</a></div></div> |
| <div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">arm_compute::Format::S16</a></div><div class="ttdoc">1 channel, 1 S16 per channel</div></div> |
| <div class="ttc" id="_validate_8h_xhtml_aadf5c9cff86327b96d88d04649d9715e"><div class="ttname"><a href="_validate_8h.xhtml#aadf5c9cff86327b96d88d04649d9715e">ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(t, c,...)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00790">Validate.h:790</a></div></div> |
| <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_acec6d8ad52a28972fa74e071c1a63b6a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">arm_compute::test::validation::scale</a></div><div class="ttdeci">scale</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00375">PixelWiseMultiplication.cpp:375</a></div></div> |
| <div class="ttc" id="_c_l_im2_col_kernel_8cpp_xhtml_a4e45c1f5e4280813a78a77dda71d8799"><div class="ttname"><a href="_c_l_im2_col_kernel_8cpp.xhtml#a4e45c1f5e4280813a78a77dda71d8799">num_elems_processed_per_iteration</a></div><div class="ttdeci">unsigned int num_elems_processed_per_iteration</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00054">CLIm2ColKernel.cpp:54</a></div></div> |
| <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a5f5b6c4337eac9e2e0046ca2304d80dc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a5f5b6c4337eac9e2e0046ca2304d80dc">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_addition_8cpp_source.xhtml#l00138">ArithmeticAddition.cpp:138</a></div></div> |
| <div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00075">Types.h:75</a></div></div> |
| <div class="ttc" id="namespacearm__compute_xhtml_a3992df9e8723140a53e49dc194d89ef5"><div class="ttname"><a href="namespacearm__compute.xhtml#a3992df9e8723140a53e49dc194d89ef5">arm_compute::data_type_for_convolution_matrix</a></div><div class="ttdeci">DataType data_type_for_convolution_matrix(const int16_t *conv, size_t size)</div><div class="ttdoc">Calculate the accuracy required by the squared convolution calculation.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00844">Utils.h:844</a></div></div> |
| </div><!-- fragment --> |
| <p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00466">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_validate_8h_source.xhtml#l00790">ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN</a>, <a class="el" href="_c_l_2_convolution_8cpp_source.xhtml#l00125">arm_compute::test::validation::conv</a>, <a class="el" href="_c_l_2_l_s_t_m_layer_quantized_8cpp_source.xhtml#l00487">arm_compute::test::validation::input</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">arm_compute::S16</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">arm_compute::U8</a>.</p> |
| |
| </div> |
| </div> |
| <hr/>The documentation for this class was generated from the following files:<ul> |
| <li>arm_compute/core/CL/kernels/<a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a></li> |
| <li>src/core/CL/kernels/<a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml">CLConvolutionKernel.cpp</a></li> |
| </ul> |
| </div><!-- contents --> |
| </div><!-- doc-content --> |
| <!-- start footer part --> |
| <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> |
| <ul> |
| <li class="navelem"><a class="el" href="namespacearm__compute.xhtml">arm_compute</a></li><li class="navelem"><a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a></li> |
| <li class="footer">Generated on Thu Mar 5 2020 16:07:10 for Compute Library by |
| <a href="http://www.doxygen.org/index.html"> |
| <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li> |
| </ul> |
| </div> |
| </body> |
| </html> |