Pytorch分布式(多GPU)

      从PyTorch 0.2版本开始,PyTorch新增分布式GPU支持

      注意分布式和并行的区别:分布式是指有多个GPU在多台服务器上,而并行一般指的是一台服务器上的多个GPU。分布式涉及了服务器之间的通信,因此比较复杂,PyTorch封装了相应的接口,可以用几句简单的代码实现分布式训练。

       分布式对普通用户来说比较遥远,因为搭建一个分布式集群的代价很大,使用也比较复杂。相比之下,一机多卡更现实

       如果服务器具有多个GPU,tensor.cuda()方法会将tensor保存到第一块GPU上,等价于tensor.cuda(0)。此时如果想使用第二块GPU,需手动指定tensor.cuda(1)

Pytorch中多GPU并行计算

我们主要谈论的是单主机多GPU训练

  • DataParallel实现简单,但速度较慢,且存在负载不均衡的问题。
  • DistributedDataParallel本身是实现多机多卡的,但单机多卡也可以使用,配置稍复杂

https://blog.csdn.net/qq_37541097/article/details/109736159

https://blog.csdn.net/qq_37541097/article/details/109736159

扫描二维码关注公众号,回复: 12882146 查看本文章

猜你喜欢

转载自blog.csdn.net/hxxjxw/article/details/113764305