译者:univeryinli

后端

torch.distributed 支持三个后端,每个后端具有不同的功能。下表显示哪些功能可用于CPU/CUDA张量。仅当用于构建PyTorch的实现支持时,MPI才支持CUDA。

后端 gloo mpi nccl
设备 CPU GPU CPU
发送
接收
广播
all_reduce
reduce
all_gather
收集
分散
屏障

PyTorch附带的后端

目前PyTorch分发版仅支持Linux。默认情况下,Gloo和NCCL后端构建并包含在PyTorch的分布之中(仅在使用CUDA构建时为NCCL)。MPI是一个可选的后端,只有从源代码构建PyTorch时才能包含它。(例如,在安装了MPI的主机上构建PyTorch)

哪个后端使用?

在过去,我们经常被问到:“我应该使用哪个后端?”。

  • 经验法则

    • 使用NCCL后端进行分布式 GPU 训练。
    • 使用Gloo后端进行分布式 CPU 训练。
  • 具有InfiniBand互连的GPU主机
    • 使用NCCL,因为它是目前唯一支持InfiniBand和GPUDirect的后端。
  • GPU主机与以太网互连
    • 使用NCCL,因为它目前提供最佳的分布式GPU训练性能,特别是对于多进程单节点或多节点分布式训练。如果您遇到NCCL的任何问题,请使用Gloo作为后备选项。(请注意,Gloo目前运行速度比GPU的NCCL慢。)

阅读全文/改进本文

PyTorch 1.0 中文文档:torch.distributed相关推荐

  1. PyTorch 1.0 中文文档:torch.sparse

    译者:hijkzzz 警告 这个API目前还处于试验阶段,可能在不久的将来会发生变化. Torch支持COO(rdinate )格式的稀疏张量,这可以有效地存储和处理大多数元素为零的张量. 稀疏张量表 ...

  2. PyTorch 1.0 中文文档正式接受校对 | ApacheCN

    参与方式:https://github.com/apachecn/pytorch-doc-zh/blob/master/CONTRIBUTING.md 整体进度:https://github.com/ ...

  3. PyTorch 1.0 中文文档:torch.onnx

    译者:guobaoyo 示例:从Pytorch到Caffe2的端对端AlexNet模型 这里是一个简单的脚本程序,它将一个在 torchvision 中已经定义的预训练 AlexNet 模型导出到 O ...

  4. PyTorch 1.0 中文文档:torch.hub

    译者:kunwuz torch.hub.load(github, model, force_reload=False, *args, **kwargs) 从github上加载一个带有预训练权重的模型. ...

  5. PyTorch 1.0 中文文档:torch.utils.bottleneck

    译者: belonHan torch.utils.bottleneck是 调试瓶颈bottleneck时首先用到的工具.它总结了python分析工具与PyTorch自动梯度分析工具在脚本运行中情况. ...

  6. PyTorch 1.0 中文文档:Torch 脚本

    译者:keyianpai 创建 Torch 脚本代码 将追踪和脚本化结合起来 Torch 脚本语言参考 类型 表达式 语句 变量解析 python值的使用 调试 内置函数 Torch脚本是一种从PyT ...

  7. PyTorch 1.0 中文文档:torch.autograd

    译者:gfjiangly torch.autograd 提供类和函数,实现任意标量值函数的自动微分. 它要求对已有代码的最小改变-你仅需要用requires_grad=True关键字为需要计算梯度的声 ...

  8. PyTorch 1.0 中文文档:torch.nn.init

    译者:GeneZC torch.nn.init.calculate_gain(nonlinearity, param=None) 返回给定非线性函数的推荐的增益值.对应关系如下表: 非线性函数 增益 ...

  9. PyTorch 1.0 中文文档:torch.utils.model_zoo

    译者:BXuan694 torch.utils.model_zoo.load_url(url, model_dir=None, map_location=None, progress=True) 由给 ...

最新文章

  1. 互联网高薪的原因、现状、未来,还值不值得进来?
  2. python爬虫项目实例-Python爬虫实例项目
  3. 解决无法将类型为“System.Web.UI.WebControls.HiddenField”的对象强制转换为类型的错误...
  4. ubuntu下部署eclipse集成hadoop\android\web\GCC开发环境小记
  5. MongoDB安装和启动
  6. Linux系统\Centos没有网卡eth0配置文件怎么办?
  7. elasticsearch 6.x.x 获取客户端方法
  8. 判断上三角矩阵_线性代数15——矩阵空间\对角矩阵\和秩1矩阵
  9. 带有毫秒 转换日期_【Java学习笔记(七)】之日期类的介绍
  10. Eclipse学习笔记——快捷键
  11. 原生Android开发自学过程(二)之TextView基础属性
  12. 使用scrapy爬取dota2贴吧数据并进行分析
  13. element-UI中分页组件显示英文的解决方案
  14. 1133_SICP开发环境搭建
  15. 行人属性识别 PETA数据集
  16. 按关键词搜索商品 淘宝API
  17. 火焰识别python_五行属火的字大全
  18. IL2CPP 构建大小优化
  19. 如何打开一个嵌在PC端应用的web窗口的控制台?
  20. matlab将图片转成eps,【MATLAB】论文图片处理(各种数据图转换成eps格式)

热门文章

  1. (03)FPGA发展前景
  2. (81)Verilog HDL:状态机一段式
  3. (35)FPGA面试题FPGA工程师努力的方向
  4. linux下dds软件,【数据库】Linux 单实例环境下实现Oracle数据库和DDS软件的开机自动重启...
  5. java sql 排序_JAVA像SQL一样对List对象集合进行排序
  6. linux创建虚拟账号,linux vsftpd 创建虚拟用户 过程记录
  7. IP协议(RFC791)-IP包格式
  8. 从程序员到项目经理(五):程序员加油站 -- 不是人人都懂的学习要点
  9. pthread_cond_signal函数《代码》--生产者与消费者
  10. 线程控制、如何给面试官描述线程不安全的情况?模拟黄牛抢票展现不安全的情况及解决方式、互斥锁加锁解锁