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