Torch 1.9.1 DDP 并行优化与多模块调用问题

DDP 基础实现

由于 DataParallel (DP) 采取的是多线程并行,出于其特性,会造成通信瓶颈 (GIL 限制),因此更高效的方式是使用 DistributedDataParallel 实现更高效的 GPU 使用。DDP 相关基础实现参考此处文章,亲测可以使用。

:目前使用 1.7+ pytorch nccl 初始化 DDP 会报错,亲测也有该问题,因此建议使用 ‘gloo’,虽然相对速度可能较慢。

多模块调用问题

假设考虑如下问题:

import torch

import torch.distributed as dist
from torch.nn.parallel import DistributedDataParallel as DDP

import torch.optim as optim
import torch.nn as nn

import argparse

parser = argparse.ArgumentParser()
parser.add_argument("--local_rank", default=-1, type=int)
FLAGS = parser.parse_args()
local_rank = FLAGS.local_rank

torch
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值