Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
105 changes: 99 additions & 6 deletions docs/api/paddle/static/BuildStrategy_cn.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,15 @@ COPY-FROM: paddle.static.BuildStrategy

属性
::::::::::::
build_cinn_pass
'''''''''

str 类型。表示是否将计算图中的一些算子降级(lowering)为 CINN 算子来执行,这可以加速执行过程。默认值为 False。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.build_cinn_pass

debug_graphviz_path
'''''''''

Expand All @@ -28,14 +37,41 @@ str 类型。表示以 graphviz 格式向文件中写入计算图的路径,有
COPY-FROM: paddle.static.BuildStrategy.debug_graphviz_path


enable_sequential_execution
enable_auto_fusion
'''''''''

bool 类型。是否将子图(subgraph)融合成一个融合组(fusion_group)。目前我们仅支持融合由逐元素类(elementwise-like)算子组成的子图,例如无广播(broadcast)机制的 elementwise_add/mul 以及激活函数(activations)。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.enable_auto_fusion

fuse_adamw
'''''''''

bool 类型。表示是否将所有的 adamw 优化器与 multi_tensor_adam 进行融合,该操作可能会提升执行速度。默认值为 False。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.fuse_adamw

fuse_bn_act_ops
'''''''''

bool 类型。表示是否融合批量归一化(batch_norm)和激活算子(activation_op),该操作可提升执行速度。默认值为 False。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.fuse_bn_act_ops

fuse_bn_add_act_ops
'''''''''

bool 类型。如果设置为 True,则算子的执行顺序将与算子定义的执行顺序相同。默认为 False
bool 类型。表示是否融合批量归一化(batch_norm)、逐元素加法(elementwise_add)和激活算子(activation_op),该操作可提升执行速度。默认值为 True

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.enable_sequential_execution
COPY-FROM: paddle.static.BuildStrategy.fuse_bn_add_act_ops

fuse_broadcast_ops
'''''''''
Expand All @@ -46,6 +82,15 @@ bool 类型。表明是否融合(fuse) broadcast ops。该选项指在 Reduce

COPY-FROM: paddle.static.BuildStrategy.fuse_broadcast_ops

fuse_dot_product_attention
'''''''''

bool 类型。表示是否融合点积注意力(dot product attention),该操作可以提升执行速度。默认值为 False。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.fuse_dot_product_attention

fuse_elewise_add_act_ops
'''''''''

Expand All @@ -55,6 +100,15 @@ bool 类型。表明是否融合(fuse) elementwise_add_op 和 activation_op。

COPY-FROM: paddle.static.BuildStrategy.fuse_elewise_add_act_ops

fuse_gemm_epilogue
'''''''''

bool 类型。表示是否融合矩阵乘法算子(matmul_op)、逐元素加法算子(elementwise_add_op)和激活算子(activation_op),该操作可提升执行速度。默认值为 False。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.fuse_gemm_epilogue

fuse_relu_depthwise_conv
'''''''''

Expand All @@ -64,25 +118,64 @@ bool 类型。表明是否融合(fuse) relu 和 depthwise_conv2d,节省 GPU

COPY-FROM: paddle.static.BuildStrategy.fuse_relu_depthwise_conv

fuse_resunit
'''''''''

bool 类型。默认为 False。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.fuse_resunit

fused_attention
'''''''''

bool 类型。表示是否将整个多头注意力(multi-head attention)部分融合成一个算子(op),该操作可提升执行速度。默认值为 False。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.fused_attention

fused_feedforward
'''''''''

bool 类型。表示是否将整个前馈网络(feed_forward)部分融合成一个算子(op),该操作可提升执行速度。默认值为 False。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.fused_feedforward

memory_optimize
'''''''''

bool 类型或 None。设为 True 时可用于减少总内存消耗,False 表示不使用,None 表示框架会自动选择使用或者不使用优化策略。当前,None 意味着当 GC 不能使用时,优化策略将被使用。默认为 None。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.memory_optimize

reduce_strategy
'''''''''

``static.BuildStrategy.ReduceStrategy`` 类型。在 ``ParallelExecutor`` 中,存在两种参数梯度聚合策略,即 ``AllReduce`` 和 ``Reduce`` 。如果用户需要在所有执行设备上独立地进行参数更新,可以使用 ``AllReduce`` 。如果使用 ``Reduce`` 策略,所有参数的优化将均匀地分配给不同的执行设备,随之将优化后的参数广播给其他执行设备。
默认值为 ``AllReduce`` 。
``static.BuildStrategy.ReduceStrategy`` 类型。在 ``ParallelExecutor`` 中,存在两种参数梯度聚合策略,即 ``AllReduce`` 和 ``Reduce`` 。如果用户需要在所有执行设备上独立地进行参数更新,可以使用 ``AllReduce`` 。如果使用 ``Reduce`` 策略,所有参数的优化将均匀地分配给不同的执行设备,随之将优化后的参数广播给其他执行设备。默认值为 ``AllReduce`` 。

**代码示例**

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

这里还麻烦同学改一下~
可能是 static.BuildStrategy.ReduceStrategy 前面多了一个空格,需要删一下,以及 “默认值为 AllReduce 。” 这句话可以不用换行,其他部分没意见了~

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

好的好的

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image 这里还麻烦同学改一下~ 可能是 `static.BuildStrategy.ReduceStrategy` 前面多了一个空格,需要删一下,以及 **“默认值为 `AllReduce` 。”** 这句话可以不用换行,其他部分没意见了~

修改完了,可以再review一下吗

COPY-FROM: paddle.static.BuildStrategy.reduce_strategy

sequential_run
'''''''''

bool 类型。该参数用于控制 StandaloneExecutor 是否按照 ProgramDesc 中定义的顺序来执行算子(ops)。默认值为 False。

**代码示例**

COPY-FROM: paddle.static.BuildStrategy.sequential_run

sync_batch_norm
'''''''''

bool 类型。表示是否使用同步的批正则化,即在训练阶段通过多个设备同步均值和方差。当前的实现不支持 FP16 训练和 CPU。并且目前**仅支持**仅在一台机器上进行同步式批正则。默认为 False。
bool 类型。表示是否使用同步的批正则化,即在训练阶段通过多个设备同步均值和方差。当前的实现不支持 FP16 训练和 CPU。并且目前 **仅支持** 仅在一台机器上进行同步式批正则。默认为 False。

**代码示例**

Expand Down