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. .gitignore
  2. 1.0/
  3. 1.1/
  4. 1.2/
  5. 1.3/
  6. Android.bp
  7. Android.mk
  8. ArmnnDevice.cpp
  9. ArmnnDevice.hpp
  10. ArmnnDriver.hpp
  11. ArmnnDriverImpl.cpp
  12. ArmnnDriverImpl.hpp
  13. ArmnnPreparedModel.cpp
  14. ArmnnPreparedModel.hpp
  15. ArmnnPreparedModel_1_2.cpp
  16. ArmnnPreparedModel_1_2.hpp
  17. ArmnnPreparedModel_1_3.cpp
  18. ArmnnPreparedModel_1_3.hpp
  19. ConversionUtils.cpp
  20. ConversionUtils.hpp
  21. ConversionUtils_1_2.hpp
  22. ConversionUtils_1_3.hpp
  23. DriverOptions.cpp
  24. DriverOptions.hpp
  25. LICENSE
  26. ModelToINetworkConverter.cpp
  27. ModelToINetworkConverter.hpp
  28. NnapiSupport.txt
  29. README.md
  30. RequestThread.cpp
  31. RequestThread.hpp
  32. RequestThread_1_3.cpp
  33. RequestThread_1_3.hpp
  34. SystemPropertiesUtils.hpp
  35. Utils.cpp
  36. Utils.hpp
  37. android.hardware.neuralnetworks@1.0-service-armnn.rc
  38. android.hardware.neuralnetworks@1.1-service-armnn.rc
  39. android.hardware.neuralnetworks@1.2-service-armnn.rc
  40. android.hardware.neuralnetworks@1.3-service-armnn.rc
  41. docs/
  42. service.cpp
  43. setup.sh
  44. test/
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/