2017/12/15

try Qualcomm NPE SDK

就是照著 snapdragon-neural-processing-engine
另外,forume 有一篇問到 625 - Forums - Snapdragon 625 (MSM8953) is available for using GPU?
I'd like to know that Snapdragon 625 is available for GPU.
 
On this URL, SnapDragon 625(MSM8953) supports SNPE.
 
https://developer.qualcomm.com/software/snapdragon-neural-processing-engine
 
Supported devices: 
SnapDragon 820, 835, 625, 626, 650, 652, 653, 660 and 630
 
So I measured to Qualcomm's SNPE demo app(alexnet) on MSM8953 device.
Then I changed device CPU to GPU on demo app, But it seems not to work GPU.
 
MSM8953
   CPU
      ave: 0.209[sec]
      max: 0.150[sec]
      min: 0.163[sec]
   
   GPU
      ave: 0.182[sec]
      max: 0.170[sec]
      min: 0.172[sec]
 
On MSM8953 device, libOpenCL.so is allocated here:
 
    /system/vendor/lib/libOpenCL.so
 
 
And on this document, it looks that SnapDragon 625(MSM8953) is not supported device.
 
snpe-1.2.2/doc/html/overview.html
Supported devices: 
SnapDragon 835, 821, 820, 660, 652
 
I'd like to know Snapdragon 625 (MSM8953) is not supported or not.
Or what is needed to check this device is available for GPU ?
(OpenCL's version or other infomation?)
 
FYI, other device's perfomance that I tried on Qualcomm's SNPE demo app(alexnet).
 
Snapdragon 820(MSM8996)
   CPU 
      ave: 1.777[sec]
      max: 1.947[sec]
      min: 1.671[sec]
 
   GPU
      ave: 0.035[sec]
      max: 0.033[sec]
      min: 0.034[sec]
 
Snapdragon 810(MSM8994)
 
   CPU
      ave: 0.216[sec]
      max: 0.167[sec]
      min: 0.187[sec]
 
   GPU
      ave: 0.077[sec]
      max: 0.048[sec]
      min: 0.059[sec]
看起來625 的 gpu 似乎無作用。


follow : getting start

要先註冊,所以用公司的 email 註冊。
password:AKB48hellokitty

登入,下載..snpe-1.8.0

為了跟 getting start 一樣,所以從 android studio 的 android sdk manager 安裝 ndk:install ndk from sdk manager
Download tensorflow model 時,要先active tensorflow (因為是裝在virtualenv):
source ~/tensorflow/bin/activate
python ./models/inception_v3/scripts/setup_inceptionv3.py -a ./temp-assets-cache -d
需要 Android-26 版本的 Sdk
用androidstudio build fail,說他不認識,沒辦法讀取 raw_alexnet.zip.flat 的 metadta.
用 command build 說找不到 gradlw-3.0.1

follow debug message,到 https://jcenter.bintray.com/com/android/tools/build/gradle/ 去看,只有 2.3.3,所以改 build.gradle:
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'
    }
    
然後出現找不到 tools.jar..
apt-get install default-jdk..
build 成功。

adb install app-debug.apk 到 APQ8053EVB
要記得 adb remount,然後 安裝 3 次才成功,前兩次都是download 到一半 no response。
執行..
因為解析度的關係,影像幾乎看不到,但是一樣可以測試。
發現 使用 CPU 和 GPU 的差異不大(和論壇內容一致)

使用 alex 的 zenfone ? (625) 的手機測試:

sample program 內建5張圖:
分別可以選擇使用 cpu , gpu 辨識。

沒有留言:

張貼留言