IVGCVSW-1888 Plumb data layout parameter for Convolution2D

	* Added the DataLayout parameter to the Convolution2dDescriptor
	* Added the DataLayout parameter the Convolution2dQueueDescriptor
	* Set the DataLayout on the Descriptor in CreateWorkload()
	* Added overloaded factory methods for CreateTensorHandle()
	* Updated BuildArmComputeTensorInfo() to take DataLayout parameter.
	* Updated handles to take DataLayout parameter
	* Updated (Cl/Neon)Convolution2dWorkloadValidate
	* Updated (Cl/Neon)Convolution2dFloatWorkload
	* Updated (Cl/Neon)Convolution2dUint8Workload

Change-Id: I8410668b3d727ca587bee66755cc4c4c78422f1f
20 files changed
tree: b9417a78336e3e1b4c7d8775a2b3fd5bce0d624a
  1. cmake/
  2. docs/
  3. include/
  4. samples/
  5. scripts/
  6. src/
  7. tests/
  8. third-party/
  9. Android.bp
  10. Android.mk
  11. BuildGuideAndroidNDK.md
  12. BuildGuideCrossCompilation.md
  13. CMakeLists.txt
  14. LICENSE
  15. README.md
README.md

Arm NN

For more information about Arm NN, see: https://developer.arm.com/products/processors/machine-learning/arm-nn

There is a getting started guide here using TensorFlow: https://developer.arm.com/technologies/machine-learning-on-arm/developer-material/how-to-guides/configuring-the-arm-nn-sdk-build-environment-for-tensorflow

There is a getting started guide here using TensorFlow Lite: TensorFlow Lite Support

There is a getting started guide here using Caffe: https://developer.arm.com/technologies/machine-learning-on-arm/developer-material/how-to-guides/configuring-the-arm-nn-sdk-build-environment-for-caffe

There is a getting started guide here using ONNX: ONNX Support

Build Instructions

Arm tests the build system of Arm NN with the following build environments:

Arm NN is written using portable C++14 and the build system uses CMake so it is possible to build for a wide variety of target platforms, from a wide variety of host environments.

The armnn/tests directory contains tests used during ArmNN development. Many of them depend on third-party IP, model protobufs and image files not distributed with ArmNN. The dependencies of some of the tests are available freely on the Internet, for those who wish to experiment.

The ‘ExecuteNetwork’ program, in armnn/tests/ExecuteNetwork, has no additional dependencies beyond those required by ArmNN and the model parsers. It takes any model and any input tensor, and simply prints out the output tensor. Run with no arguments to see command-line help.

The ‘armnn/samples’ directory contains SimpleSample.cpp. A very basic example of the ArmNN SDK API in use.

License

Arm NN is provided under the MIT license. See LICENSE for more information. Contributions to this project are accepted under the same license.

Individual files contain the following tag instead of the full license text.

SPDX-License-Identifier: MIT

This enables machine processing of license information based on the SPDX License Identifiers that are available here: http://spdx.org/licenses/