@Frank Thank you for replying.
I measured the score values on Coral TPU and VIM3 NPU for a MobileNetv2 classifier model.
VIM3 - NPU:
Inference time: 36ms
Score value: 53.45%
Coral USB accelerator
Inference time: 10ms
Score value: 96.24%
Can you please tell me why is there a loss in the accuracy of the model on the NPU?
How can it be improved?
Frank
September 7, 2021, 12:53am
26
@Akkisony I will test it today, I think it not true
Frank
September 7, 2021, 2:58am
27
@Akkisony This is my test with mobilenet v1
khadas@Khadas:~/nbg_unify_mobilenet_tf/bin_r_cv4$ ./mobilenet_tf ../mobilenet_tf.nb ~/ksnn-examples/pytorch/data/goldfish_224x224.jpg
Create Neural Network: 94ms or 94594us
Verify...
Verify Graph: 1ms or 1058us
Start run graph [1] times...
Run the 1 time: 18.00ms or 18688.00us
vxProcessGraph execution time:
Total 18.00ms or 18738.00us
Average 18.74ms or 18738.00us
--- Top5 ---
2: 0.999023
141: 0.000336
121: 0.000160
120: 0.000132
116: 0.000093
@Frank Thank you for verifying.
Can you please check my edge_tpu_tflite model on your PC? Please find the model in the below link.
https://drive.google.com/drive/folders/1RIxQ34wz44mzxODUqy9VIEFaHDWKa3r0?usp=sharing
Thanks again.
Frank
September 7, 2021, 6:56am
29
@Akkisony Sorry, I don’t have a USB Coral. I think you can test it by yourself
@Frank I am trying to use the NPU Pytho API for conversion. But, I am facing some issues. I cannot generate the .so file.
I think there is problem with the shell scripts, because the script creates a directory named - “yolov3-5” but it searches for “nbg_unify_yolov3-5” to place the .so file.
Can you please check and let me know.
Thanks.
Frank
September 7, 2021, 8:42am
32
@Akkisony You lose the gcc compile, you need to install it . I remember I already replied to you in the previous post
@Frank Just for confirmation. I have downloaded the ml_npu_sdk on my PC.
So do I have to install gcc tool chain on my PC? As I convert the model on my PC and then copy it to the board.
Frank
September 7, 2021, 8:50am
34
@Akkisony Yes, you convet with pc then copy it to board
@Frank I just confirmed. The gcc tool chain is already installed.
If you can see this, I think the script is not able to create a nbg_unify_yolov3-5 directory. Instead it is creating just ‘yolov3-5’ directory.
Please find the image - Missing .so file while converting the model using Python API - #31 by Akkisony
@Frank Along with the previous post, also please also check my model (MobileNet v2).
Frank
September 8, 2021, 1:07am
38
@Akkisony OK. I can arrange it in my plan, but it will take some time to wait
Okay. Thank you for making time to check my model.
Do you have an idea about this Python API SDK? Why is the convert tool not able to create a directory - “nbg_unify_yolov3-5 ” ?
Thanks again!
Frank
September 8, 2021, 7:19am
40
@Akkisony I have already explained this problem. Look at the picture you provided, and it clearly says “aarch64-linux-gnu-gcc command not found”.
@Frank I follwed your procudure you explained and added the PATH.
echo $PATH
/home/learningtime/anaconda3/condabin:/home/learningtime/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/toolchains/gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu /bin
@Frank Please find the screenshot of my bashrc file.
Frank
September 8, 2021, 7:51am
43
@Akkisony Run this to check $ aarch64-linux-gnu-gcc -v
Frank:
aarch64-linux-gnu-gcc -v
learningtime@learningtime:~$ aarch64-linux-gnu-gcc -v
Using built-in specs.
COLLECT_GCC=aarch64-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/opt/toolchains/gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu/bin/…/libexec/gcc/aarch64-linux-gnu/6.3.1/lto-wrapper
Target: aarch64-linux-gnu
Configured with: /home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/snapshots/gcc-linaro-6.3-2017.02/configure SHELL=/bin/bash --with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu --with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu --with-gmp=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu --with-gnu-as --with-gnu-ld --disable-libmudflap --enable-lto --enable-objc-gc --enable-shared --without-included-gettext --enable-nls --disable-sjlj-exceptions --enable-gnu-unique-object --enable-linker-build-id --disable-libstdcxx-pch --enable-c99 --enable-clocale=gnu --enable-libstdcxx-debug --enable-long-long --with-cloog=no --with-ppl=no --with-isl=no --disable-multilib --enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419 --with-arch=armv8-a --enable-threads=posix --enable-multiarch --enable-libstdcxx-time=yes --enable-gnu-indirect-function --with-build-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/sysroots/aarch64-linux-gnu --with-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu/aarch64-linux-gnu/libc --enable-checking=release --disable-bootstrap --enable-languages=c,c++,fortran,lto --build=x86_64-unknown-linux-gnu --host=x86_64-unknown-linux-gnu --target=aarch64-linux-gnu --prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu
Thread model: posix
gcc version 6.3.1 20170109 (Linaro GCC 6.3-2017.02)
@Frank This time it could generate the .so file.
Thanks