Skip to content

Commit d4b445a

Browse files
authored
Merge pull request #266 from PaddlePaddle/fix-programguide
Fix deadlink in Developer's_Guide_to_Paddle_Fluid.md
2 parents f54c5df + 2259a25 commit d4b445a

File tree

1 file changed

+44
-44
lines changed

1 file changed

+44
-44
lines changed

doc/fluid/getstarted/Developer's_Guide_to_Paddle_Fluid.md

Lines changed: 44 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -82,11 +82,11 @@
8282

8383
# Fluid: 系统形态
8484

85-
- <span style="background-color:#ACD6FF;">[编译器式的执行流程,区分编译时和运行时](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/fluid/design/motivation/fluid_compiler.md)</span>
85+
- <span style="background-color:#ACD6FF;">[编译器式的执行流程,区分编译时和运行时](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/fluid/design/motivation/fluid_compiler.md)</span>
8686
<br>
8787

8888
<p align="center">
89-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/fluid-compiler.png" width=100%>
89+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/fluid-compiler.png" width=100%>
9090
</p>
9191

9292
---
@@ -125,7 +125,7 @@
125125
- 在科学计算领域,计算图是一种描述计算的经典方式。下图展示了从前向计算图(蓝色)开始,通过添加反向(红色)和优化算法相关(绿色)操作,构建出整个计算图的过程:
126126
-
127127
<p align="center">
128-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/graph_construction_example_all.png" width=60%>
128+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/graph_construction_example_all.png" width=60%>
129129
</p>
130130

131131

@@ -224,7 +224,7 @@
224224
1. 创建`Block`,依次执行`Block`
225225

226226
<p align="center">
227-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/compile_run_time.png" width=50%><br>
227+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/compile_run_time.png" width=50%><br>
228228
<font size=3> Figure. 编译时运行时概览</font>
229229
</p>
230230

@@ -246,7 +246,7 @@
246246
cost = fluid.layers.square_error_cost(input=y_predict, label=y)
247247
```
248248

249-
- 条件分支: [swith](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/fluid/design/execution/switch.md)、[ifelse](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/fluid/design/execution/if_else_op.md)
249+
- 条件分支: [swith](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/fluid/design/execution/switch.md)、[ifelse](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/fluid/design/execution/if_else_op.md)
250250

251251
```python
252252
a = fluid.Var(10)
@@ -330,7 +330,7 @@
330330

331331
---
332332

333-
### 编译时概念 :==**[Transpiler](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/fluid/design/motivation/fluid_compiler.md)**==
333+
### 编译时概念 :==**[Transpiler](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/fluid/design/motivation/fluid_compiler.md)**==
334334
<font size=5>
335335

336336
1. 接受一段`ProgramDesc`作为输入,生成一段新的`ProgramDesc`
@@ -349,15 +349,15 @@
349349
### Transplier
350350

351351
<p align="center">
352-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/transpiler.png" width=70%>
352+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/transpiler.png" width=70%>
353353
</p>
354354

355355
---
356356

357357
### 打印 `ProgramDesc`
358358

359359
<p align="center">
360-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/print_fluid_program.png" width=70%>
360+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/print_fluid_program.png" width=70%>
361361
</p>
362362

363363
<font size=5>
@@ -384,8 +384,8 @@
384384
</thead>
385385
<tbody>
386386
<tr>
387-
<td><img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/program_desc1.png" width=70%></td>
388-
<td><img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/program_desc2.png" width=70%></td>
387+
<td><img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/program_desc1.png" width=70%></td>
388+
<td><img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/program_desc2.png" width=70%></td>
389389
</tr>
390390
</tbody>
391391
</table>
@@ -501,7 +501,7 @@
501501
<font size=4>
502502

503503
<p align="center">
504-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/LoDTensor.png" width=43%>
504+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/LoDTensor.png" width=43%>
505505
</p>
506506

507507
- 图(a)的LoD 信息
@@ -518,7 +518,7 @@
518518
#### Tensor, Variable, Scope 之间的关系
519519

520520
<p align="center">
521-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/scope_variable_tensor.png" width=40%>
521+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/scope_variable_tensor.png" width=40%>
522522
</p>
523523
<font size=5>
524524

@@ -541,7 +541,7 @@
541541
<tbody>
542542
<tr>
543543
<td><p align="center">
544-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/executor.png" width=60%>
544+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/executor.png" width=60%>
545545
</p></td>
546546
<td><span style="background-color:#B3D9D9;">输入</span><br>1. `ProgramDesc`<br>2. `Scope`<br> 3.`block_id`<br><br><span style="background-color:#B3D9D9;">解释执行步骤</span><br>1. 创建所有 Variables<br> 2. 逐一创建 Operator 并运行
547547
</td>
@@ -554,7 +554,7 @@
554554
<font size=5>
555555

556556
<p align="center">
557-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/operator1.png" width=50%>
557+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/operator1.png" width=50%>
558558
</p>
559559

560560
- operator 无状态,Operator的核心是==Run==方法
@@ -575,10 +575,10 @@
575575
<tbody>
576576
<tr>
577577
<td><p align="center">
578-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/layer.png" width=70%>
578+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/layer.png" width=70%>
579579
</p></td>
580580
<td><p align="center">
581-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/operator2.png" width=73%>
581+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/operator2.png" width=73%>
582582
</p></td>
583583
</tr>
584584

@@ -800,7 +800,7 @@ class GPUAllocator : public SystemAllocator {
800800
- 可以将Place类型理解为一个整数加上一个枚举型,包括:设备号 + 设备类型
801801
802802
<p align="center">
803-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/place.png" width=40%>
803+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/place.png" width=40%>
804804
</p>
805805
- DeviceContext
806806
- 不同的Place会对应一个相应的DeviceContext,用于组织管理与设备相关的信息
@@ -938,7 +938,7 @@ void Run(const framework::Scope &scope,
938938
<font size=5>
939939

940940
<p align="center">
941-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/user_interface.png" width=75%>
941+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/user_interface.png" width=75%>
942942
</p>
943943

944944
- `dynamicRNN` 中的重要元素
@@ -1003,7 +1003,7 @@ void Run(const framework::Scope &scope,
10031003

10041004
- 以机器翻译的RNN encoder-decoder 模型(涉及了`dynamicRNN`的所有设计要素)为例,下图是 RNN encoder-decoder 的原始输入:
10051005
<p align="center">
1006-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/raw_input.png" width=100%><br><font size=3> Figure. RNN encoder-decoder 原始batch 输入数据</font>
1006+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/raw_input.png" width=100%><br><font size=3> Figure. RNN encoder-decoder 原始batch 输入数据</font>
10071007
</p>
10081008

10091009
- source word sequences 是encoder RNN的输出,是一个LoDTensor
@@ -1035,14 +1035,14 @@ void Run(const framework::Scope &scope,
10351035
### 运行实例
10361036

10371037
<p align="center">
1038-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/sorted_input.png" width=100%>
1038+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/sorted_input.png" width=100%>
10391039
</p>
10401040

10411041
---
10421042
### 运行实例
10431043

10441044
<p align="center">
1045-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/1.png" width=100%>
1045+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/1.png" width=100%>
10461046
</p>
10471047

10481048
<font size=5>
@@ -1055,7 +1055,7 @@ void Run(const framework::Scope &scope,
10551055
### 运行实例
10561056

10571057
<p align="center">
1058-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/1.png" width=80%>
1058+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/1.png" width=80%>
10591059
</p>
10601060

10611061
<font size=5>
@@ -1071,22 +1071,22 @@ void Run(const framework::Scope &scope,
10711071
### 运行实例:batch 1 ~ 2
10721072

10731073
<p align="center">
1074-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/2.png" width=70%><br><font size=4>Figure. 第1、2个batch输入dynamicRNN的batch输入</font>
1074+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/2.png" width=70%><br><font size=4>Figure. 第1、2个batch输入dynamicRNN的batch输入</font>
10751075
</p>
10761076

10771077
---
10781078
### 运行实例:batch 3 ~ 4
10791079

10801080
<p align="center">
1081-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/3.png" width=70%><br><font size=4>Figure. 第3、4个batch输入dynamicRNN的batch输入</font>
1081+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/3.png" width=70%><br><font size=4>Figure. 第3、4个batch输入dynamicRNN的batch输入</font>
10821082
</p>
10831083

10841084
---
10851085

10861086
### 运行实例:batch 5 ~ 7
10871087

10881088
<p align="center">
1089-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/4.png" width=70%><br><font size=4>Figure. 第5、6、7个batch输入dynamicRNN的batch输入</font>
1089+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/4.png" width=70%><br><font size=4>Figure. 第5、6、7个batch输入dynamicRNN的batch输入</font>
10901090
</p>
10911091

10921092
---
@@ -1106,12 +1106,12 @@ void Run(const framework::Scope &scope,
11061106
<tr>
11071107
<td>
11081108
<p align="center">
1109-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/fluid_module_1.png" width=60%>
1109+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/fluid_module_1.png" width=60%>
11101110
</p>
11111111
</td>
11121112
<td>
11131113
<p align="center">
1114-
<img src="https://raw.githubusercontent.com/PaddlePaddle/Paddle/develop/doc/fluid/images/fluid_module_2.png" width=60%>
1114+
<img src="https://raw.githubusercontent.com/PaddlePaddle/Fluiddoc/develop/doc/fluid/images/fluid_module_2.png" width=60%>
11151115
</p>
11161116
</td>
11171117
</tr>
@@ -1127,32 +1127,32 @@ void Run(const framework::Scope &scope,
11271127
<font size=5>
11281128

11291129
- 设计概览
1130-
- 重构概览 [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/refactorization.md)
1131-
- fluid [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/fluid.md)
1132-
- fluid_compiler [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/fluid/design/motivation/fluid_compiler.md)
1130+
- 重构概览 [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/refactorization.md)
1131+
- fluid [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/fluid.md)
1132+
- fluid_compiler [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/fluid/design/motivation/fluid_compiler.md)
11331133
- 核心概念
1134-
- variable 描述 [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/var_desc.md)
1134+
- variable 描述 [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/var_desc.md)
11351135
- Tensor [->](https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/framework/tensor.md)
11361136
- LoDTensor [->](https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/framework/lod_tensor.md)
1137-
- TensorArray [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/tensor_array.md)
1138-
- Program [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/program.md)
1139-
- Block [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/block.md)
1140-
- Scope [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/scope.md)
1137+
- TensorArray [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/tensor_array.md)
1138+
- Program [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/program.md)
1139+
- Block [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/block.md)
1140+
- Scope [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/scope.md)
11411141

11421142
---
11431143

11441144
- 重要功能模块
1145-
- backward [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/backward.md)
1146-
- 内存优化 [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/memory_optimization.md)
1147-
- evaluator [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/executor.md)
1148-
- python API [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/python_api.md)
1149-
- regularization [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/regularization.md)
1145+
- backward [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/backward.md)
1146+
- 内存优化 [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/memory_optimization.md)
1147+
- evaluator [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/executor.md)
1148+
- python API [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/python_api.md)
1149+
- regularization [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/regularization.md)
11501150

11511151
- 开发指南
1152-
- 支持新设硬件设备库 [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/support_new_device.md)
1153-
- 添加新的Operator [->](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/howto/dev/new_op_cn.md)
1152+
- 支持新设硬件设备库 [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/design/support_new_device.md)
1153+
- 添加新的Operator [->](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/howto/dev/new_op_cn.md)
11541154
- 添加新的Kernel [->](
1155-
https://github.com/PaddlePaddle/Paddle/blob/develop/doc/howto/dev/new_op_kernel_en.md)
1155+
https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/howto/dev/new_op_kernel_en.md)
11561156

11571157
</font>
11581158

@@ -1487,7 +1487,7 @@ class ClipKernel : public framework::OpKernel<T> {
14871487

14881488
- 为了使`OpKernel`的计算过程书写更加简单,并且CPU、CUDA的代码可以复用, Fluid 使用 Eigen 作为基础的矩阵运算库
14891489
- Fluid对Eigen unsupported Tensor提供了一些基本的封装,可以在`Compute`接口中直接调用
1490-
- 关于在PaddlePaddle中如何使用Eigen库,请参考[使用文档](https://github.com/PaddlePaddle/Paddle/blob/develop/doc/fluid/dev/use_eigen_cn.md)。
1490+
- 关于在PaddlePaddle中如何使用Eigen库,请参考[使用文档](https://github.com/PaddlePaddle/Fluiddoc/blob/develop/doc/fluid/dev/use_eigen_cn.md)。
14911491

14921492
</font>
14931493

0 commit comments

Comments
 (0)