IVGCVSW-4931 Update NN Driver to support dynamic tensors

 * Change NN Driver m_Network to now have ShapeInferenceMethod::InferAndValidate
 * Implement dynamic tensor support for:
    - ArgMinMax layer
    - Pooling2d layer
    - Activation layer
 * Skip dynamic tensor tests for any HAL other than 1.3

Change-Id: Icf66c968e49cdd4822b8c79c5f18b3f9e97dc53f
Signed-off-by: Finn Williams <Finn.Williams@Arm.com>
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
8 files changed
tree: 0a09be7cdad7ad5c15bb24c67abf0f4cd4d6e47e
  1. 1.0/
  2. 1.1/
  3. 1.2/
  4. 1.3/
  5. docs/
  6. test/
  7. .gitignore
  8. Android.bp
  9. android.hardware.neuralnetworks@1.0-service-armnn.rc
  10. android.hardware.neuralnetworks@1.1-service-armnn.rc
  11. android.hardware.neuralnetworks@1.2-service-armnn.rc
  12. android.hardware.neuralnetworks@1.3-service-armnn.rc
  13. Android.mk
  14. ArmnnDevice.cpp
  15. ArmnnDevice.hpp
  16. ArmnnDriver.hpp
  17. ArmnnDriverImpl.cpp
  18. ArmnnDriverImpl.hpp
  19. ArmnnPreparedModel.cpp
  20. ArmnnPreparedModel.hpp
  21. ArmnnPreparedModel_1_2.cpp
  22. ArmnnPreparedModel_1_2.hpp
  23. ArmnnPreparedModel_1_3.cpp
  24. ArmnnPreparedModel_1_3.hpp
  25. ConversionUtils.cpp
  26. ConversionUtils.hpp
  27. ConversionUtils_1_2.hpp
  28. ConversionUtils_1_3.hpp
  29. DriverOptions.cpp
  30. DriverOptions.hpp
  31. LICENSE
  32. ModelToINetworkConverter.cpp
  33. ModelToINetworkConverter.hpp
  34. NnapiSupport.txt
  35. README.md
  36. RequestThread.cpp
  37. RequestThread.hpp
  38. RequestThread_1_3.cpp
  39. RequestThread_1_3.hpp
  40. service.cpp
  41. setup.sh
  42. SystemPropertiesUtils.hpp
  43. Utils.cpp
  44. Utils.hpp
README.md

ArmNN Android Neural Networks driver

This directory contains the ArmNN driver for the Android Neural Networks API, implementing the android.hardware.neuralnetworks@1.0, android.hardware.neuralnetworks@1.1, android.hardware.neuralnetworks@1.2 and android.hardware.neuralnetworks@1.3 HALs.

Please Note: ArmNN Neural Networks driver does not currently support Mali OpenCL driver for android.hardware.neuralnetworks@1.3 HAL.

For more information about supported operations and configurations, see NnapiSupport.txt

For documentation about integrating this driver into an Android tree, see Integrator Guide

For FAQs and troubleshooting advice, see FAQ.md

License

The android-nn-driver 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/