mindspore.parallel
mindspore.parallel提供了大量的自动并行接口,包括并行基础配置、模型加载与转换、函数式并行切分等。
模块导入方法如下:
from mindspore import parallel
并行基础配置
| 对顶层Cell或函数进行封装,实现单个网络的静态图并行。 | |
| 分布式数据并行封装类。 | |
| 实现静态图并行梯度累加功能。 | |
| 实现静态图并行多副本拆分功能,使得计算及通信能并发。 | |
| 指定流水线并行的micro_batch个数、stage和segment的划分规则。 | |
| 函数式训练场景下,实现流水线并行的梯度规约及累加。 | 
模型加载与转换
| 将一个分布式网络的Checkpoint由源切分策略转换到目标切分策略。 | |
| 将一个分布式网络的Checkpoint由源切分策略转换到目标切分策略,对特定一个rank进行转换。 | |
| 加载分布式checkpoint参数到网络,用于分布式推理。 | |
| 加载指定路径下所有checkpoint文件。 | |
| 在对分布式Checkpoint转换的过程中,获取目标rank的Checkpoint文件所需的源Checkpoint文件rank列表。 | |
| 将多个safetensors文件合并为一系列统一的safetensors文件。 | 
函数式并行切分
| 将张量从一种分布式排布转换成另一种分布式排布。 | |
| 描述集群设备的拓扑抽象,用于张量分片在集群上的放置。 | |
| 指定一个Cell或函数的输入、输出切分策略。 | 
其他
| 从策略文件中提取网络中每个参数的切分策略,用于分布式推理的场景。 | |
| 汇聚所有流水线并行子图的切分策略文件到目的文件。 | |
| 在数据并行维度,将参数广播到其他卡上。 | |
| 从通信域文件中提取rank list信息。 | |
| 在流水线并行推理场景下,对stage间的共享权重进行同步。 | |
| 开启在线策略信息保存。 | |
| 获取当前网络的所有卡的在线策略信息。 | |
| 获取当前网络的当前卡的在线策略信息。 | |
| 清理C++侧策略信息缓存。 |