pytorch分布式训练
文章平均质量分 78
介绍基于pytorch的几种分布式训练方法和各自的特点
Tai Fook
高歌猛进!
展开
-
pytorch分布式训练(二):torch.nn.parallel.DistributedDataParallel
之前介绍了Pytorch的DataParallel方法来构建分布式训练模型,这种方法最简单但是并行加速效果很有限,并且只适用于单节点多gpu的硬件拓扑结构。除此之外Pytorch还提供了DistributedDataParallel来构建分布式模型,并行加速程度更高,且支持多节点多gpu的硬件拓扑结构。一、Overall Design 整体的系统方案设计intuition也非常直观:每个gpu上都有一个local的model和一个mini-batch的数据,进行数据分布式训练时,每个gpu进行当前原创 2020-12-24 11:54:55 · 2335 阅读 · 0 评论 -
pytorch分布式训练(一):torch.nn.DataParallel
本文介绍最简单的pytorch分布式训练方法:使用torch.nn.DataParallel这个API来实现分布式训练。环境为单机多gpu,不妨假设有4个可用的gpu。一、构建方法使用这个API实现分布式训练的步骤非常简单,总共分为3步骤:1、创建一个model,并将该model推到某个gpu上(这个gpu也将作为output_device,后面具体解释含义),不妨假设推到第0号gpu上,device = torch.device("cuda:0")model.to(device)2、将数原创 2020-12-18 18:44:08 · 4760 阅读 · 1 评论