Intel® Math Kernel Library for Deep Neural Networks (Intel® MKL-DNN)
The Android Neural Network Hardware Abstraction Layer(NN HAL) provides the hardware accelration for Android Neural Networks (NN) API. Intel NN-HAL takes the advantage of the Intel MKLD-DNN, enables high performance and low power implementation of Neural Networks API. Intel MKL-DNN https://github.com/intel/mkl-dnn & https://01.org/mkl-dnn Android NN API is on [Neural Networks API] (https://developer.android.com/ndk/guides/neuralnetworks/index.html). OpenVINO deep learning framework https://github.com/opencv/dldt & https://01.org/openvinotoolkit
Following operations are currently supported by Android Neural Networks HAL for Intel MKL-DNN.
- ANEURALNETWORKS_CONV_2D
- ANEURALNETWORKS_ADD
Support for Multiple Tensor inputs at runtime to model/network is ongoing
Android Neural Networks HAL is distributed under the Apache License, Version 2.0 You may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0 Intel® Math Kernel Library for Deep Neural Networks (Intel® MKL-DNN) is an open source performance library for Deep Learning (DL) applications intended for acceleration of DL frameworks on Intel® architecture.
By default, please submit an issue using native github.com interface: https://github.com/intel/nn-hal/issues
Create a pull request on github.com with your patch. Make sure your change is cleanly building and passing ULTs.
A maintainer will contact you if there are questions or concerns.
Before committing any changes, make sure the coding style and testing configs are correct. If not, the CI will fail.
Run the following command to ensure that the proper coding style is being followed:
find . -regex '.*\.\(cpp\|hpp\|cc\|cxx\|h\)' -exec clang-format -style=file -i {} \;
Update the BOARD value in build-test.sh as per your test requirement. If your BOARD is not supported, please contact the maintainer to get it added.
Currently, the CI builds the intel-nnhal package and runs the following tests:
- Functional tests that include ml_cmdline and a subset of cts and vts tests.