<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ArmNN: TensorFlow operators that the Arm NN SDK supports</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.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;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">ArmNN
   &#160;<span id="projectnumber">NotReleased</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('md_src_armnn_tf_parser__tensor_flow_support.html','');});
</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="headertitle">
<div class="title">TensorFlow operators that the Arm NN SDK supports </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>This reference guide provides a list of TensorFlow operators the Arm NN SDK currently supports.</p>
<p>The Arm NN SDK TensorFlow parser currently only supports fp32 operators.</p>
<h2>Fully supported</h2>
<p><b>avg_pool</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/avg_pool">avg_pool documentation</a> for more information.</p>
<p><b>bias_add</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/bias_add">bias_add documentation</a> for more information.</p>
<p><b>conv2d</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/conv2d">conv2d documentation</a> for more information.</p>
<p><b>expand_dims</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/expand_dims">expand_dims documentation</a> for more information.</p>
<p><b>gather</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/gather">gather documentation</a> for more information.</p>
<p><b>identity</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/identity">identity documentation</a> for more information.</p>
<p><b>local_response_normalization</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/local_response_normalization">local_response_normalization documentation</a> for more information.</p>
<p><b>max_pool</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/max_pool">max_pool documentation</a> for more information.</p>
<p><b>placeholder</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/placeholder">placeholder documentation</a> for more information.</p>
<p><b>reduce_mean</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/reduce_mean">reduce_mean documentation</a> for more information.</p>
<p><b>relu</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/relu">relu documentation</a> for more information.</p>
<p><b>relu6</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/relu6">relu6 documentation</a> for more information.</p>
<p><b>rsqrt</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/math/rsqrt">rsqrt documentation</a> for more information.</p>
<p><b>shape</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/shape">shape documentation</a> for more information.</p>
<p><b>sigmoid</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/sigmoid">sigmoid documentation</a> for more information.</p>
<p><b>softplus</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/softplus">softplus documentation</a> for more information.</p>
<p><b>squeeze</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/squeeze">squeeze documentation</a> for more information.</p>
<p><b>tanh</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/tanh">tanh documentation</a> for more information.</p>
<h2>Partially supported</h2>
<p><b>add</b></p>
<p>The parser does not support all forms of <a href="https://www.tensorflow.org/performance/xla/broadcasting">broadcast composition</a>, only broadcasting of scalars and 1D tensors. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/add">add operator documentation</a> for more information.</p>
<p><b>add_n</b></p>
<p>The parser does not support all forms of <a href="https://www.tensorflow.org/performance/xla/broadcasting">broadcast composition</a>, only broadcasting of scalars and 1D tensors. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/add_n">add operator documentation</a> for more information.</p>
<p><b>concat</b></p>
<p>Arm NN supports concatenation along the channel dimension for data formats NHWC and NCHW.</p>
<p><b>constant</b></p>
<p>The parser does not support the optional <code>shape</code> argument. It always infers the shape of the output tensor from <code>value</code>. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/constant">constant documentation</a> for further information.</p>
<p><b>depthwise_conv2d_native</b></p>
<p>The parser only supports a dilation rate of (1,1,1,1). See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/depthwise_conv2d_native">depthwise_conv2d_native documentation</a> for more information.</p>
<p><b>equal</b></p>
<p>The parser does not support all forms of <a href="https://www.tensorflow.org/performance/xla/broadcasting">broadcast composition</a>, only broadcasting of 4D and 1D tensors. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/math/equal">equal operator documentation</a> for more information.</p>
<p><b>fused_batch_norm</b></p>
<p>The parser does not support training outputs. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/fused_batch_norm">fused_batch_norm documentation</a> for more information.</p>
<p><b>greater</b></p>
<p>The parser does not support all forms of <a href="https://www.tensorflow.org/performance/xla/broadcasting">broadcast composition</a>, only broadcasting of 4D and 1D tensors. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/math/greater">greater operator documentation</a> for more information.</p>
<p><b>matmul</b></p>
<p>The parser only supports constant weights in a fully connected layer. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/matmul">matmul documentation</a> for more information.</p>
<p><b>maximum</b></p>
<p>where maximum is used in one of the following ways</p>
<ul>
<li>max(mul(a, x), x)</li>
<li>max(mul(x, a), x)</li>
<li>max(x, mul(a, x))</li>
<li>max(x, mul(x, a)</li>
</ul>
<p>This is interpreted as a ActivationLayer with a LeakyRelu activation function. Any other usage of max will result in the insertion of a simple maximum layer. The parser does not support all forms of <a href="https://www.tensorflow.org/performance/xla/broadcasting">broadcast composition</a>. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/maximum">maximum documentation</a> for more information.</p>
<p><b>minimum</b></p>
<p>The parser does not support all forms of <a href="https://www.tensorflow.org/performance/xla/broadcasting">broadcast composition</a>, only broadcasting of 4D and 1D tensors. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/math/minimum">minimum operator documentation</a> for more information.</p>
<p><b>multiply</b></p>
<p>The parser does not support all forms of <a href="https://www.tensorflow.org/performance/xla/broadcasting">broadcast composition</a>, only broadcasting of scalars and 1D tensors. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/multiply">multiply documentation</a> for more information.</p>
<p><b>pad</b></p>
<p>Only supports tf.pad function with mode = 'CONSTANT' and constant_values = 0. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/pad">pad documentation</a> for more information.</p>
<p><b>realdiv</b></p>
<p>The parser does not support all forms of <a href="https://www.tensorflow.org/performance/xla/broadcasting">broadcast composition</a>, only broadcasting of scalars and 1D tensors. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/realdiv">realdiv documentation</a> for more information.</p>
<p><b>reshape</b></p>
<p>The parser does not support reshaping to or from 4D. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/reshape">reshape documentation</a> for more information.</p>
<p><b>resize_images</b></p>
<p>The parser only supports <code>ResizeMethod.BILINEAR</code> with <code>align_corners=False</code>. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/image/resize_images">resize_images documentation</a> for more information.</p>
<p><b>softmax</b></p>
<p>The parser only supports 2D inputs and does not support selecting the <code>softmax</code> dimension. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/nn/softmax">softmax documentation</a> for more information.</p>
<p><b>split</b></p>
<p>Arm NN supports split along the channel dimension for data formats NHWC and NCHW.</p>
<p><b>subtract</b></p>
<p>The parser does not support all forms of broadcasting <a href="https://www.tensorflow.org/performance/xla/broadcasting">broadcast composition</a>, only broadcasting of scalars and 1D tensors. See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/math/subtract">subtract documentation</a> for more information.</p>
<p><b>pack/stack</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/stack">stack documentation</a> for more information.</p>
<p><b>strided_slice</b></p>
<p>See the TensorFlow <a href="https://www.tensorflow.org/api_docs/python/tf/strided_slice">strided_slice documentation</a> for more information.</p>
<h2>Tested networks</h2>
<p>Arm tests these operators with the following TensorFlow fp32 neural networks:</p>
<ul>
<li>Cifar10</li>
<li>Lenet</li>
<li>Simple MNIST. For more information check out the <a href="https://developer.arm.com/technologies/machine-learning-on-arm/developer-material/how-to-guides/deploying-a-tensorflow-mnist-model-on-arm-nn">tutorial</a> on the Arm Developer portal.</li>
<li>mobilenet_v1_1.0_224. The Arm NN SDK only supports the non-quantized version of the network. See the https://github.com/tensorflow/models/blob/master/research/slim/nets/mobilenet_v1.md "MobileNet_v1 documentation" for more information on quantized networks.</li>
<li>inception_v3. The Arm NN SDK only supports the official inception_v3 transformed model. See the TensorFlow documentation on <a href="https://www.tensorflow.org/mobile/prepare_models">preparing models for mobile deployment</a> for more information on how to transform the inception_v3 network.</li>
</ul>
<p>More machine learning operators will be supported in future releases. </p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Fri Mar 13 2020 16:07:01 for ArmNN by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
