Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
机器未来
Paddle
提交
68b2d097
P
Paddle
项目概览
机器未来
/
Paddle
与 Fork 源项目一致
Fork自
PaddlePaddle / Paddle
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
68b2d097
编写于
5月 23, 2018
作者:
W
weixing02
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
inference
上级
6cf6e252
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
14 addition
and
12 deletion
+14
-12
doc/fluid/howto/inference/inference_support_in_fluid.md
doc/fluid/howto/inference/inference_support_in_fluid.md
+14
-12
未找到文件。
doc/fluid/howto/inference/inference_support_in_fluid.md
浏览文件 @
68b2d097
# Fluid Inference使用指南
## 目录:
-
Python Inference API
-
编译Fluid Inference库
-
Inference C++ API
...
...
@@ -7,7 +9,7 @@
-
Inference计算优化
## Python Inference API **[改进中]**
-
[
保存Inference模型
](
https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/fluid/io.py#L295
)
-
保存Inference模型 (
[
链接
](
https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/fluid/io.py#L295
)
)
```
python
def
save_inference_model
(
dirname
,
...
...
@@ -43,7 +45,7 @@
$ ls
$ __model__ __params__
```
-
[
加载Inference模型
](
https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/fluid/io.py#L380
)
-
加载Inference模型(
[
链接
](
https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/fluid/io.py#L380
)
)
```
python
def
load_inference_model
(
dirname
,
executor
,
...
...
@@ -110,7 +112,7 @@
## 链接Fluid Inference库
-
[
示例项目
](
https://github.com/luotao1/fluid_inference_example.git
)
-
示例项目(
[
链接
](
https://github.com/luotao1/fluid_inference_example.git
)
)
-
GCC配置
```
bash
...
...
@@ -143,7 +145,7 @@
## C++ Inference API
-
[
推断流程
](
https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/fluid/inference/tests/test_helper.h#L91
)
-
推断流程(
[
链接
](
https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/fluid/inference/tests/test_helper.h#L91
)
)
-
1、 初始化设备
```
cpp
...
...
@@ -242,7 +244,7 @@
-
**
不在每次执行时创建和销毁变量
[
PR
](
https://github.com/PaddlePaddle/Paddle/pull/9301
)
**
(
[
PR
](
https://github.com/PaddlePaddle/Paddle/pull/9301
)
)
**
-
执行
`inference_program`
```
cpp
// Call once
...
...
@@ -259,7 +261,7 @@
-
在同一个
`Scope`
中,相同的变量名是公用同一块内存的,容易引起意想不到的错误
-
**不在每次执行时创建Op
[PR](https://github.com/PaddlePaddle/Paddle/pull/9630
)**
-
**不在每次执行时创建Op
([PR](https://github.com/PaddlePaddle/Paddle/pull/9630)
)**
-
执行
`inference_program`
```
cpp
// Call once
...
...
@@ -273,7 +275,7 @@
-
一旦修改了
`inference_program`
,则需要重新创建
`ctx`
-
**
[多线程共享Parameters](https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/fluid/inference/tests/test_multi_thread_helper.h
)**
-
**
多线程共享Parameters([链接](https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/fluid/inference/tests/test_multi_thread_helper.h)
)**
-
主线程
-
1、 初始化设备
-
2、 定义
`place`
,
`executor`
,
`scope`
...
...
@@ -310,9 +312,9 @@
-
CPUPlace,CPU设备
-
CUDAPlace,CUDA GPU设备
-
神经网络表示:
-
[
Program
](
https://github.com/PaddlePaddle/Paddle/blob/develop/doc/fluid/design/concepts/program.md
)
-
[
Program
](
https://github.com/PaddlePaddle/Paddle/blob/develop/doc/fluid/design/concepts/program.md
)
.
详细介绍请参考
[
**Paddle Fluid开发者指南**
](
https://github.com/lcy-seso/learning_notes/blob/master/Fluid/developer's_guid_for_Fluid/Developer's_Guide_to_Paddle_Fluid.md
)
详细介绍请参考[**Paddle Fluid开发者指南**](https://github.com/lcy-seso/learning_notes/blob/master/Fluid/developer's_guid_for_Fluid/Developer's_Guide_to_Paddle_Fluid.md)
...
...
@@ -328,7 +330,7 @@
## Inference计算优化
-
使用Python推理优化工具
[
inference_transpiler
](
https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/fluid/inference_transpiler.py
)
-
使用Python推理优化工具
(
[
inference_transpiler
](
https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/fluid/inference_transpiler.py
)
)
```
python
class
InferenceTranspiler
:
def
transpile
(
self
,
program
,
place
,
scope
=
None
):
...
...
@@ -341,7 +343,7 @@
-
使用
`InferenceTranspiler`
会修改参数的值,请确保
`program`
的参数在
`scope`
内。
-
支持的优化
-
融合batch_norm op的计算
-
[
使用示例
](
https://github.com/Xreki/Xreki.github.io/blob/master/fluid/inference/inference_transpiler.py
)
-
使用示例(
[
链接
](
https://github.com/Xreki/Xreki.github.io/blob/master/fluid/inference/inference_transpiler.py
)
)
```
python
import
paddle.fluid
as
fluid
# NOTE: Applying the inference transpiler will change the inference_program.
...
...
@@ -353,7 +355,7 @@
## 内存使用优化
-
使用Python内存优化工具
[
memory_optimization_transipiler
](
https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/fluid/memory_optimization_transpiler.py
)
-
使用Python内存优化工具
(
[
memory_optimization_transipiler
](
https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/fluid/memory_optimization_transpiler.py
)
)
```
python
fluid
.
memory_optimize
(
inference_program
)
```
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录