已合并
update readme #2173
wangyuansheng8创建于 2025年4月9日
update readme #2173
已合并
wangyuansheng8创建于 2025年4月9日
refs/pull/2173/head合入到core_r0.8.0
7 个文件变更+42-21
MREADME.md+18-2
@@ -346,7 +346,7 @@ MindSpeed 特性由七大模块组成,分别为:megetron特性支持、并
346 <td rowspan="5"> Ascend Norm重计算</td>346 <td rowspan="5"> Ascend Norm重计算</td>
347 <td><a href="docs/features/norm-recompute.md">link</a></td>347 <td><a href="docs/features/norm-recompute.md">link</a></td>
348 <td style="text-align: center; vertical-align: middle">✅</td>348 <td style="text-align: center; vertical-align: middle">✅</td>
349- <td style="text-align: center; vertical-align: middle"></td>349+ <td style="text-align: center; vertical-align: middle"></td>
350 <td style="text-align: center; vertical-align: middle">✅</td>350 <td style="text-align: center; vertical-align: middle">✅</td>
351 </tr>351 </tr>
352 <tbody>352 <tbody>
@@ -355,7 +355,7 @@ MindSpeed 特性由七大模块组成,分别为:megetron特性支持、并
355 <td><a href="docs/features/hccl-group-buffer-set.md">link</a></td>355 <td><a href="docs/features/hccl-group-buffer-set.md">link</a></td>
356 <td style="text-align: center; vertical-align: middle">✅</td>356 <td style="text-align: center; vertical-align: middle">✅</td>
357 <td style="text-align: center; vertical-align: middle">✅</td>357 <td style="text-align: center; vertical-align: middle">✅</td>
358- <td style="text-align: center; vertical-align: middle"></td>358+ <td style="text-align: center; vertical-align: middle"></td>
359 </tr>359 </tr>
360</table>360</table>
361 361 
@@ -688,6 +688,22 @@ MindSpeed 特性由七大模块组成,分别为:megetron特性支持、并
688 <td style="text-align: center; vertical-align: middle">✅</td>688 <td style="text-align: center; vertical-align: middle">✅</td>
689 <td style="text-align: center; vertical-align: middle">❌</td>689 <td style="text-align: center; vertical-align: middle">❌</td>
690 </tr>690 </tr>
691+<tbody>
692+ <tr>
693+ <td rowspan="5"> Ascend 非对齐线性层</td>
694+ <td><a href="docs/features/unaligned_linear.md">link</a></td>
695+ <td style="text-align: center; vertical-align: middle">✅</td>
696+ <td style="text-align: center; vertical-align: middle">❌</td>
697+ <td style="text-align: center; vertical-align: middle">✅</td>
698+ </tr>
699+<tbody>
700+ <tr>
701+ <td rowspan="5"> Ascend 非对齐Ulysses长序列并行</td>
702+ <td><a href="docs/features/unaligned-ulysses-context-parallel.md">link</a></td>
703+ <td style="text-align: center; vertical-align: middle">✅</td>
704+ <td style="text-align: center; vertical-align: middle">❌</td>
705+ <td style="text-align: center; vertical-align: middle">✅</td>
706+ </tr>
691</table>707</table>
692 708 
693## 其它特性709## 其它特性
Mdocs/features/eod-reset.md+1-1
@@ -30,7 +30,7 @@
30 return batch.values()30 return batch.values()
31 ```31 ```
32 32 
33-2. 在 Megatron-LM 目录下修改`pretrain_gpt.py`文件中的`get_batch`函数。33+2. 在 Megatron-LM 目录下修改`pretrain_gpt.py`文件中的`is_dataset_built_on_rank`函数。
34 34 
35 ```diff35 ```diff
36 def is_dataset_built_on_rank():36 def is_dataset_built_on_rank():
Mdocs/features/hccl-replace-gloo.md+1-1
@@ -36,4 +36,4 @@ net.core.netdev_max_backlog = 65536
36- 当切片大小为 $100 * 1024 * 1024$ 时,模型保存和加载效率有所提升。-->36- 当切片大小为 $100 * 1024 * 1024$ 时,模型保存和加载效率有所提升。-->
37 37 
38### 显存增量分析38### 显存增量分析
39-开启该特性后,显存的增加量为 `hccl-slice-size * (dp + 1) * 4B`。39+开启该特性后,显存的增加量为 `hccl-slice-size * (2 * dp + 1) * 4B`。
Mdocs/features/moe-token-permute-and-unpermute.md+5-6
@@ -12,12 +12,11 @@ Token路由:确定每个token应该由哪个专家处理。这可以通过专
12 12 
13## 使用方法13## 使用方法
14### 前提条件14### 前提条件
15-开启专家并行,并且`moe-token-dispatcher-type`设置为`alltoall`15+开启专家并行,并且`moe-token-dispatcher-type`设置为`alltoall`,即脚本中需包含以下参数:</br>
16-`--expert-model-parallel-size M \16+`--moe-token-dispatcher-type alltoall`</br>
17---num-experts N \17+`--expert-model-parallel-size M \`</br>
18---moe-token-dispatcher-type alltoall`18+`--num-experts N \`</br>
19- 19+满足以上前提时,设置`--use-fused-moe-token-permute-and-unpermute`即可调用Moe Token Permute和Unpermute融合算子。
20-设置`--use-fused-moe-token-permute-and-unpermute`即可调用Moe Token Permute和Unpermute融合算子。
21 20 
22## 使用效果 21## 使用效果
23启用融合算子后,不仅能够有效节省内存资源,还能提升模型训练性能。22启用融合算子后,不仅能够有效节省内存资源,还能提升模型训练性能。
Mdocs/features/norm-recompute.md+6-7
@@ -23,11 +23,10 @@
23 23 
24添加:`--recompute-norm-num-layers ${num}` 可指定Norm重计算的层数。24添加:`--recompute-norm-num-layers ${num}` 可指定Norm重计算的层数。
25 25 
26-Norm重计算兼容激活函数重计算、全重计算同时开启:26+## 注意事项
27- 27+1. Norm重计算特性仅支持mcore分支,不支持legacy分支,即仅支持在开启`--use-mcore-models`时,通过`--recompute-norm`使能。
28-1.同时开启时,仅支持 `--recompute-method` 为 `block`。28+2. Norm重计算兼容激活函数重计算、全重计算同时开启
29- 29+ - 同时开启时,仅支持 `--recompute-method` 为 `block`。
30-2.同时开启时,会按照指定的全重计算和Norm重计算的层数做各自类型的重计算,即不会有一层既做全重计算又做Norm重计算。30+ - 同时开启时,会按照指定的全重计算和Norm重计算的层数做各自类型的重计算,即不会有一层既做全重计算又做Norm重计算。
31- 31+ - 同时开启时,执行优先级是先计算全重计算层,后计算Norm重计算层。
32-(注意:执行优先级是先计算全重计算层,后Norm重计算层。)
33 32 
Mdocs/features/unaligned-ulysses-context-parallel.md+6-3
@@ -49,9 +49,12 @@ ulysses_attention = UlyssesContextAttention(core_attention, ps.get_context_paral
49 gather_size_calculator=calculator)49 gather_size_calculator=calculator)
50 50 
51```51```
52-*说明*
53-“非对齐 Ulysses”长序列并行暂不兼容Ulysses长序列并行KV缓存优化,即启动脚本设置了--context-parallel-kv-cache-policy为full或者half,系统将自动切换回使用对齐的Ulysses长序列并行机制。
54 52 
55## 使用效果53## 使用效果
56 54 
57-通过引入“非对齐 Ulysses”,系统提升了对不同输入长度的适应能力。这不仅解决了传统 Ulysses 在处理动态或不规则输入序列时遇到的问题,而且保持了良好的扩展能力。55+通过引入“非对齐 Ulysses”,系统提升了对不同输入长度的适应能力。这不仅解决了传统 Ulysses 在处理动态或不规则输入序列时遇到的问题,而且保持了良好的扩展能力。
56+ 
57+## 注意事项
58+ 
59+1. 非对齐Ulysses长序列并行不支持在legacy分支使用,即不支持和`--use-legacy-models`同时开启。
60+2. 非对齐Ulysses长序列并行暂不兼容Ulysses长序列并行KV缓存优化,即启动脚本设置了--context-parallel-kv-cache-policy为full或者half,系统将自动切换回使用对齐的Ulysses长序列并行机制。
Mdocs/features/unaligned_linear.md+5-1
@@ -32,4 +32,8 @@
32- **补充功能场景**:补充注意力头数、序列长度不能被TP整除的场景。32- **补充功能场景**:补充注意力头数、序列长度不能被TP整除的场景。
33- **潜在性能影响**:各TP处理的注意力头数、序列长度不一致,负载不均衡,建议模型结构设计时考虑该情况。33- **潜在性能影响**:各TP处理的注意力头数、序列长度不一致,负载不均衡,建议模型结构设计时考虑该情况。
34 34 
35-综上所述,该特性是为了完善TP(张量并行)场景下的限制约束,特性本身会带来负载不均衡的性能影响,所以在模型设计和超参优化时注意这一影响。35+综上所述,该特性是为了完善TP(张量并行)场景下的限制约束,特性本身会带来负载不均衡的性能影响,所以在模型设计和超参优化时注意这一影响。
36+ 
37+## 注意事项
38+ 
39+1. 非对齐线性层不支持在legacy分支使用,即不支持和`--use-legacy-models`同时开启。