Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
Paddle-Lite
提交
0bbc6f2b
P
Paddle-Lite
项目概览
PaddlePaddle
/
Paddle-Lite
通知
331
Star
4
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
271
列表
看板
标记
里程碑
合并请求
78
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Paddle-Lite
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
271
Issue
271
列表
看板
标记
里程碑
合并请求
78
合并请求
78
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
0bbc6f2b
编写于
12月 30, 2019
作者:
H
hong19860320
提交者:
GitHub
12月 30, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[LITE][Doc] Fix build commands in NPU doc (#2699)
上级
55706ee8
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
14 addition
and
14 deletion
+14
-14
_all_pages/develop/npu.md
_all_pages/develop/npu.md
+7
-7
_all_pages/v2.2.0/npu.md
_all_pages/v2.2.0/npu.md
+7
-7
未找到文件。
_all_pages/develop/npu.md
浏览文件 @
0bbc6f2b
...
...
@@ -54,9 +54,9 @@ Paddle Lite是首款支持华为自研达芬奇架构NPU(Kirin 810/990 SoC搭
# 编译支持NPU的Paddle Lite库
-
从https://developer.huawei.com/consumer/cn/hiai/下载华为HiAI DDK后解压到任意路径(注意:华为提供了多个版本的DDK,我们需要下载针对麒麟810/990芯片HiAI Foundation开发套件,例如最新的
[
DDK V310版本
](
https://obs.cn-north-2.myhwclouds.com/hms-ds-wf/sdk/hwhiai-ddk-100.310.011.010.zip
)
)。
-
在Paddle Lite源码目录下
使用
[
NPU编译脚本
](
https://github.com/PaddlePaddle/Paddle-Lite/blob/develop/lite/tools/build_npu.sh
)
编译full_publish和tiny_publish。
-
将HiAI DDK中的ai_ddk_lib目录拷贝至Paddle Lite源码根目录后,
使用
[
NPU编译脚本
](
https://github.com/PaddlePaddle/Paddle-Lite/blob/develop/lite/tools/build_npu.sh
)
编译full_publish和tiny_publish。
注意:
必须将--ddk_root参数设置为HiAI DDK根目录,以下是HiAI DDK V310版解压后的目录结构,--ddk_root应当设置为ai_ddk_lib
目录。
注意:
以下是HiAI DDK V310版解压后的目录结构,需要将ai_ddk_lib目录拷贝至Paddle Lite源码根
目录。
```
shell
- app_sample
- ddk
...
...
@@ -70,14 +70,14 @@ Paddle Lite是首款支持华为自研达芬奇架构NPU(Kirin 810/990 SoC搭
-
full_publish and tiny_publish for armv8,由于HiAI DDK的armv7和armv8的so库均基于c++_shared构建,因此,建议使用c++_shared编译Paddle Lite。
```
shell
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv8
--arm_lang
=
gcc
--android_stl
=
c++_shared
--ddk_root
=
/to/your/ai_ddk_lib
full_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv8
--arm_lang
=
gcc
--android_stl
=
c++_shared
--ddk_root
=
/to/your/ai_ddk_lib
tiny_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv8
--arm_lang
=
gcc
--android_stl
=
c++_shared full_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv8
--arm_lang
=
gcc
--android_stl
=
c++_shared tiny_publish
```
-
full_publish and tiny_publish for armv7
```
shell
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv7
--arm_lang
=
gcc
--android_stl
=
c++_shared
--ddk_root
=
/to/your/ai_ddk_lib
full_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv7
--arm_lang
=
gcc
--android_stl
=
c++_shared
--ddk_root
=
/to/your/ai_ddk_lib
tiny_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv7
--arm_lang
=
gcc
--android_stl
=
c++_shared full_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv7
--arm_lang
=
gcc
--android_stl
=
c++_shared tiny_publish
```
注意:为了保证编译环境一致,建议参考
[
源码编译指南
](
../source_compile
)
中的Docker开发环境进行配置,然后再执行上述命令。
...
...
@@ -95,7 +95,7 @@ $ ./lite/tools/build_npu.sh --arm_os=android --arm_abi=armv7 --arm_lang=gcc --an
--prefer_int8_kernel
=(
true
|false
)
\
--record_tailoring_info
=(
true
|false
)
```
-
model_optimize_tool生成的模型只是标记了NPU支持的Paddle算子,并没有真正生成
了
NPU HiAI模型,只有在执行时才会将标记的Paddle算子转成HiAI IR,最终生成并执行HiAI模型,具体实现参考PR
[
2576
](
https://github.com/PaddlePaddle/Paddle-Lite/pull/2576
)
。
-
model_optimize_tool生成的模型只是标记了NPU支持的Paddle算子,并没有真正生成NPU HiAI模型,只有在执行时才会将标记的Paddle算子转成HiAI IR,最终生成并执行HiAI模型,具体实现参考PR
[
2576
](
https://github.com/PaddlePaddle/Paddle-Lite/pull/2576
)
。
-
不同模型,不同型号(ROM版本)的华为手机,在执行阶段,由于某些Paddle算子无法完全转成HiAI IR,或目标手机的HiAI版本过低等原因,可能导致HiAI模型无法成功生成,在这种情况下,Paddle Lite会调用CPU版算子进行运算完成整个预测任务。
# 通过JAVA接口加载并执行NPU模型
...
...
_all_pages/v2.2.0/npu.md
浏览文件 @
0bbc6f2b
...
...
@@ -54,9 +54,9 @@ Paddle Lite是首款支持华为自研达芬奇架构NPU(Kirin 810/990 SoC搭
# 编译支持NPU的Paddle Lite库
-
从https://developer.huawei.com/consumer/cn/hiai/下载华为HiAI DDK后解压到任意路径(注意:华为提供了多个版本的DDK,我们需要下载针对麒麟810/990芯片HiAI Foundation开发套件,例如最新的
[
DDK V310版本
](
https://obs.cn-north-2.myhwclouds.com/hms-ds-wf/sdk/hwhiai-ddk-100.310.011.010.zip
)
)。
-
在Paddle Lite源码目录下
使用
[
NPU编译脚本
](
https://github.com/PaddlePaddle/Paddle-Lite/blob/develop/lite/tools/build_npu.sh
)
编译full_publish和tiny_publish。
-
将HiAI DDK中的ai_ddk_lib目录拷贝至Paddle Lite源码根目录后,
使用
[
NPU编译脚本
](
https://github.com/PaddlePaddle/Paddle-Lite/blob/develop/lite/tools/build_npu.sh
)
编译full_publish和tiny_publish。
注意:
必须将--ddk_root参数设置为HiAI DDK根目录,以下是HiAI DDK V310版解压后的目录结构,--ddk_root应当设置为ai_ddk_lib
目录。
注意:
以下是HiAI DDK V310版解压后的目录结构,需要将ai_ddk_lib目录拷贝至Paddle Lite源码根
目录。
```
shell
- app_sample
- ddk
...
...
@@ -70,14 +70,14 @@ Paddle Lite是首款支持华为自研达芬奇架构NPU(Kirin 810/990 SoC搭
-
full_publish and tiny_publish for armv8,由于HiAI DDK的armv7和armv8的so库均基于c++_shared构建,因此,建议使用c++_shared编译Paddle Lite。
```
shell
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv8
--arm_lang
=
gcc
--android_stl
=
c++_shared
--ddk_root
=
/to/your/ai_ddk_lib
full_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv8
--arm_lang
=
gcc
--android_stl
=
c++_shared
--ddk_root
=
/to/your/ai_ddk_lib
tiny_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv8
--arm_lang
=
gcc
--android_stl
=
c++_shared full_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv8
--arm_lang
=
gcc
--android_stl
=
c++_shared tiny_publish
```
-
full_publish and tiny_publish for armv7
```
shell
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv7
--arm_lang
=
gcc
--android_stl
=
c++_shared
--ddk_root
=
/to/your/ai_ddk_lib
full_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv7
--arm_lang
=
gcc
--android_stl
=
c++_shared
--ddk_root
=
/to/your/ai_ddk_lib
tiny_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv7
--arm_lang
=
gcc
--android_stl
=
c++_shared full_publish
$
./lite/tools/build_npu.sh
--arm_os
=
android
--arm_abi
=
armv7
--arm_lang
=
gcc
--android_stl
=
c++_shared tiny_publish
```
注意:为了保证编译环境一致,建议参考
[
源码编译指南
](
../source_compile
)
中的Docker开发环境进行配置,然后再执行上述命令。
...
...
@@ -95,7 +95,7 @@ $ ./lite/tools/build_npu.sh --arm_os=android --arm_abi=armv7 --arm_lang=gcc --an
--prefer_int8_kernel
=(
true
|false
)
\
--record_tailoring_info
=(
true
|false
)
```
-
model_optimize_tool生成的模型只是标记了NPU支持的Paddle算子,并没有真正生成
了
NPU HiAI模型,只有在执行时才会将标记的Paddle算子转成HiAI IR,最终生成并执行HiAI模型,具体实现参考PR
[
2576
](
https://github.com/PaddlePaddle/Paddle-Lite/pull/2576
)
。
-
model_optimize_tool生成的模型只是标记了NPU支持的Paddle算子,并没有真正生成NPU HiAI模型,只有在执行时才会将标记的Paddle算子转成HiAI IR,最终生成并执行HiAI模型,具体实现参考PR
[
2576
](
https://github.com/PaddlePaddle/Paddle-Lite/pull/2576
)
。
-
不同模型,不同型号(ROM版本)的华为手机,在执行阶段,由于某些Paddle算子无法完全转成HiAI IR,或目标手机的HiAI版本过低等原因,可能导致HiAI模型无法成功生成,在这种情况下,Paddle Lite会调用CPU版算子进行运算完成整个预测任务。
# 通过JAVA接口加载并执行NPU模型
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录