paddle.distributed¶
paddle.distributed目录包含的API支撑飞桨框架大规模分布式训练能力。具体如下:
Fleet分布式高层API¶
paddle.distributed.fleet是分布式训练的统一入口API,用于配置分布式训练。
API名称  |  
           API功能  |  
          
|---|---|
| 
             |  
           设置和获取用户自定义的集群信息,支持集合通信(Collective)及参数服务器(ParameterServer)两种训练架构的初始化  |  
          
| 
             |  
           设置和获取paddlecloud集群信息(百度内部集群使用),支持集合通信(Collective)及参数服务器(ParameterServer)两种训练架构的初始化  |  
          
| 
             |  
           配置分布式通信、计算和内存优化等策略  |  
          
| 
             |  
           进行分布式训练配置并初始化  |  
          
| 
             |  
           集合通信架构下,worker节点初始化  |  
          
| 
             |  
           集合通信架构下,停止正在运行的worker节点  |  
          
| 
             |  
           集合通信架构下,强制要求所有的worker在此处相互等待一次,保持同步  |  
          
| 
             |  
           参数服务器架构下,server节点的初始化  |  
          
| 
             |  
           参数服务器架构下的进程启动  |  
          
| 
             |  
           保存用于预测的模型  |  
          
| 
             |  
           保存全量模型参数  |  
          
| 
             |  
           基于分布式并行策略进行模型拆分和优化计算  |  
          
| 
             |  
           分布式训练工具的基类,用户集合通信、文件系统操作  |  
          
| 
             |  
           Hadoop文件系统查看和管理  |  
          
| 
             |  
           本地文件系统查看和管理  |  
          
环境配置和训练启动管理¶
API名称  |  
           API功能  |  
          
|---|---|
| 
             |  
           初始化并行训练环境,支持动态图模式  |  
          
            
  |  
           启动分布式训练进程,支持集合通信及参数服务器架构  |  
          
| 
             |  
           启动分布式训练进程,仅支持集合通信架构  |  
          
| 
             |  
           获取当前进程的rank值  |  
          
| 
             |  
           获取当前进程数  |  
          
数据加载¶
API名称  |  
           API功能  |  
          
|---|---|
| 
             |  
           数据加载到内存中,在训练前随机整理数据  |  
          
| 
             |  
           流式数据加载  |  
          
集合通信算法API¶
在集群上,对多设备的进程组的参数数据tensor进行计算处理。
API名称  |  
           API功能  |  
          
|---|---|
| 
             |  
           规约,规约进程组内的tensor,返回结果至指定进程  |  
          
| 
             |  
           规约,指定逐元素规约操作  |  
          
| 
             |  
           组规约,规约进程组内的tensor,结果广播至每个进程  |  
          
| 
             |  
           组聚合,聚合进程组内的tensor,结果广播至每个进程  |  
          
| 
             |  
           广播一个tensor到每个进程  |  
          
| 
             |  
           分发tensor到每个进程  |  
          
| 
             |  
           切分参数到多个设备  |  
          
| 
             |  
           同步路障,进行阻塞操作,实现组内所有进程的同步  |  
          
