Git Product home page Git Product logo

oaid / mxnet-hrt Goto Github PK

View Code? Open in Web Editor NEW
72.0 12.0 30.0 27.57 MB

Heterogeneous Run Time version of MXNet. Added heterogeneous capabilities to the MXNet, uses heterogeneous computing infrastructure framework to speed up Deep Learning on Arm-based heterogeneous embedded platform. It also retains all the features of the original MXNet architecture which users deploy their applications seamlessly.

License: Apache License 2.0

CMake 0.49% Makefile 0.43% R 2.54% C++ 32.65% Python 28.11% Java 0.03% Shell 1.20% C 0.88% Jupyter Notebook 13.02% Cuda 5.19% Batchfile 0.11% MATLAB 0.32% Perl 6.28% Scala 8.71% Perl 6 0.04% Rebol 0.01%
arm arm-compute-library arm-neon arm-gpu machine-learning artificial-intelligence mxnet opencl dnn cnn

mxnet-hrt's Introduction

MXNet-HRT

GitHub license

MXNet-HRT is a project that is maintained by OPEN AI LAB, it uses Arm Compute Library (NEON+GPU) to speed up MXNet and provide utilities to debug, profile and tune application performance.

The release version is 0.3.1, is based on Rockchip RK3399 Platform, target OS is Ubuntu 16.04. Can download the source code from OAID/MXNet-HRT

  • The ARM Computer Vision and Machine Learning library is a set of functions optimised for both ARM CPUs and GPUs using SIMD technologies. See also Arm Compute Library.
  • MXNet is a Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, Javascript and more. See also MXNet.

Documents

Arm Compute Library Compatibility Issues :

There are some compatibility issues between ACL and MXNet Layers, we bypass it to MXNet's original layer class as the workaround solution for the below issues

  • Normalization in-channel issue
  • Tanh issue
  • Softmax supporting multi-dimension issue
  • Group issue

Performance need be fine turned in the future

Release History

The MXNet based version is 26b1cb9ad0bcde9206863a6f847455ff3ec3c266.

Version 0.3.1 - Feb 09, 2018

Support Arm Compute Library version 17.12

Version 0.3.0 - Jan 31, 2018

Support Arm Compute Library version 17.12

Version 0.2.0 - Aug 27, 2017

Support Arm Compute Library version 17.06 with 4 new layers added

  • Batch Normalization Layer
  • Direct convolution Layer
  • Concatenate layer

Version 0.1.0 - Jul 6, 2017

Initial version supports 10 Layers accelerated by Arm Compute Library version 17.05 :

  • Convolution Layer
  • Pooling Layer
  • LRN Layer
  • ReLU Layer
  • Sigmoid Layer
  • Softmax Layer
  • TanH Layer
  • AbsVal Layer
  • BNLL Layer
  • InnerProduct Layer

Issue Report

Encounter any issue, please report on issue report. Issue report should contain the following information :

  • The exact description of the steps that are needed to reproduce the issue
  • The exact description of what happens and what you think is wrong

mxnet-hrt's People

Contributors

antinucleon avatar hetong007 avatar hjk41 avatar hotpxl avatar howard0su avatar indhub avatar jermainewang avatar kevinthesun avatar ldpe2g avatar mavenlin avatar mli avatar nswamy avatar piiswrong avatar pluskid avatar qiaohaijun avatar roshrini avatar sandeep-krishnamurthy avatar sbodenstein avatar sneakerkg avatar sxjscience avatar terrytangyuan avatar tornadomeet avatar tqchen avatar vchuravy avatar winstywang avatar xhbdahai avatar yajiedesign avatar yanqingmen avatar yzhang87 avatar yzhliu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mxnet-hrt's Issues

Is it possible to disable OpenCL? only need NEON

For bugs or installation issues, please provide the following information.
The more information you provide, the more likely people will be able to help you.

Environment info

Operating System:

Compiler:

Package used (Python/R/Scala/Julia):

MXNet version:

Or if installed from source:

MXNet commit hash (git rev-parse HEAD):

If you are using python package, please provide

Python version and distribution:

If you are using R package, please provide

R sessionInfo():

Error Message:

Please paste the full error message, including stack trace.

Minimum reproducible example

if you are using your own code, please provide a short script that reproduces the error.

Steps to reproduce

or if you are running standard examples, please provide the commands you have run that lead to the error.

What have you tried to solve it?

How to make MXNet-HRT support higher version mxnet? such as mxnet 1.0 or 1.1?

when i was testin insightface project(a mxnet deep network),i got these errors:
firefly@firefly:~/zzp/insightface/deploy$ python test.py
loading ../models/model-r34-amf/model 0
[02:10:23] /home/firefly/MXNet-HRT/dmlc-core/include/dmlc/./logging.h:304: [02:1 0:23] /home/firefly/MXNet-HRT/nnvm/dmlc-core/include/dmlc/././json.h:838: JSONRe ader: Unknown field attrs, candidates are:
"attr"
"backward_source_id"
"control_deps"
"inputs"
"name"
"op"
"param"

**I guess it's because the mxnet version too low

how can i make the MXNet-HRT to support mxnet of hihger versions?**

MXNet-HRT vs Caffe.

Hi,
I am using FaceDetection with MXNet. It is running good with caffe but not with MXNet-HRT.
Procedure i did-

  1. followed this link- https://github.com/OAID/MXNet-HRT/blob/master/acl_openailab/installation.md
  2. Changed the frame from image to live feed from camera.
  3. git status gives me -origin/master, but git status on submodules givre me different versions.

Any suggestion? Is there any specific versions for all needs to be there to work properly?
Thanks.

ssd

I follow the instruction of example/ssd and run python demo.py from example/ssd directory and got an error below. My platform is firefly 3399. Is there a reason which ssd example is not working?

[21:15:32] /home/firefly/2TB/src/firefly/mxnetOnACL/dmlc-core/include/dmlc/./logging.h:304: [21:15:32] src/core/symbolic.cc:72: Symbol.ComposeKeyword argument name anchors not found.
Candidate arguments:
[0]cls_prob
[1]loc_pred
[2]anchor

Stack trace returned 7 entries:
[bt] (0) /usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/libmxnet.so(_ZN4dmlc15LogMessageFatalD1Ev+0x44) [0x7f7a5b1cb4]
[bt] (1) /usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/libmxnet.so(_ZN4nnvm23KeywordArgumentMismatchEPKcRKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS8_EERKN4dmlc10array_viewIS8_EE+0x434) [0x7f7b095604]
[bt] (2) /usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/libmxnet.so(ZN4nnvm6Symbol7ComposeERKN4dmlc10array_viewIPKS0_EERKSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES4_St4hashISE_ESt8equal_toISE_ESaISt4pairIKSE_S4_EEERSK+0xcc4) [0x7f7b0922cc]
[bt] (3) /usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/libmxnet.so(NNSymbolCompose+0x238) [0x7f7b0a1188]
[bt] (4) /usr/lib/aarch64-linux-gnu/libffi.so.6(ffi_call_SYSV+0x64) [0x7f7bfd1e60]
[bt] (5) /usr/lib/aarch64-linux-gnu/libffi.so.6(ffi_call+0xc0) [0x7f7bfd27b8]
[bt] (6) /usr/lib/python2.7/lib-dynload/_ctypes.aarch64-linux-gnu.so(_ctypes_callproc+0x670) [0x7f7bff1b30]

Traceback (most recent call last):
File "demo.py", line 99, in
ctx, args.nms_thresh, args.force_nms)
File "demo.py", line 40, in get_detector
.get_symbol(len(CLASSES), nms_thresh, force_nms)
File "/home/firefly/2TB/src/mxnetOnACL/example/ssd/symbol/symbol_vgg16_ssd_300.py", line 179, in get_symbol
net = get_symbol_train(num_classes)
File "/home/firefly/2TB/src/mxnetOnACL/example/ssd/symbol/symbol_vgg16_ssd_300.py", line 150, in get_symbol_train
variances=(0.1, 0.1, 0.2, 0.2), nms_topk=nms_topk)
File "", line 47, in _contrib_MultiBoxDetection
File "/usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/_ctypes/symbol.py", line 136, in _symbol_creator
s._compose(name=name, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/symbol.py", line 419, in _compose
self.handle, name, num_args, keys, args))
File "/usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/base.py", line 85, in check_call
raise MXNetError(py_str(_LIB.MXGetLastError()))
mxnet.base.MXNetError: [21:15:32] src/core/symbolic.cc:72: Symbol.ComposeKeyword argument name anchors not found.
Candidate arguments:
[0]cls_prob
[1]loc_pred
[2]anchor

Stack trace returned 7 entries:
[bt] (0) /usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/libmxnet.so(_ZN4dmlc15LogMessageFatalD1Ev+0x44) [0x7f7a5b1cb4]
[bt] (1) /usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/libmxnet.so(_ZN4nnvm23KeywordArgumentMismatchEPKcRKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS8_EERKN4dmlc10array_viewIS8_EE+0x434) [0x7f7b095604]
[bt] (2) /usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/libmxnet.so(ZN4nnvm6Symbol7ComposeERKN4dmlc10array_viewIPKS0_EERKSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES4_St4hashISE_ESt8equal_toISE_ESaISt4pairIKSE_S4_EEERSK+0xcc4) [0x7f7b0922cc]
[bt] (3) /usr/local/lib/python2.7/dist-packages/mxnet-0.10.1-py2.7.egg/mxnet/libmxnet.so(NNSymbolCompose+0x238) [0x7f7b0a1188]
[bt] (4) /usr/lib/aarch64-linux-gnu/libffi.so.6(ffi_call_SYSV+0x64) [0x7f7bfd1e60]
[bt] (5) /usr/lib/aarch64-linux-gnu/libffi.so.6(ffi_call+0xc0) [0x7f7bfd27b8]
[bt] (6) /usr/lib/python2.7/lib-dynload/_ctypes.aarch64-linux-gnu.so(_ctypes_callproc+0x670) [0x7f7bff1b30]

Thanks,

cannot make when build mxnet

I have followed the instruction.
However, it keeps failing during 3.2make mxnet "make" steps.
I have tried to compile computer library again but the library are still not compatible or missing.
Any help would be appreciated. Thanks

Environment info

Operating System: Ubtunu 16.04

Error Message:

/usr/lib/gcc-cross/aarch64-linux-gnu/5/../../../../aarch64-linux-gnu/bin/ld: 当搜索用于 /usr/lib/../lib/libopenblas.so 时跳过不兼容的 -lopenblas
/usr/lib/gcc-cross/aarch64-linux-gnu/5/../../../../aarch64-linux-gnu/bin/ld: 当搜索用于 /usr/lib/../lib/libopenblas.a 时跳过不兼容的 -lopenblas
/usr/lib/gcc-cross/aarch64-linux-gnu/5/../../../../aarch64-linux-gnu/bin/ld: 当搜索用于 //usr/lib/libopenblas.so 时跳过不兼容的 -lopenblas
/usr/lib/gcc-cross/aarch64-linux-gnu/5/../../../../aarch64-linux-gnu/bin/ld: 当搜索用于 //usr/lib/libopenblas.a 时跳过不兼容的 -lopenblas
/usr/lib/gcc-cross/aarch64-linux-gnu/5/../../../../aarch64-linux-gnu/bin/ld: 找不到 -lopenblas
/usr/lib/gcc-cross/aarch64-linux-gnu/5/../../../../aarch64-linux-gnu/bin/ld: 找不到 -lOpenCL
/usr/lib/gcc-cross/aarch64-linux-gnu/5/../../../../aarch64-linux-gnu/bin/ld: 找不到 -lopencv_core
/usr/lib/gcc-cross/aarch64-linux-gnu/5/../../../../aarch64-linux-gnu/bin/ld: 找不到 -lopencv_imgproc
collect2: error: ld returned 1 exit status
Makefile:256: recipe for target 'lib/libmxnet.so' failed
make: *** [lib/libmxnet.so] Error 1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.