pytorch分布式 RuntimeError: module must have its parameters and buffers on device cuda:0 (device_ids[0]
发布时间
阅读量:
阅读量
出现错误提示:RuntimeError: 模块的参数和缓冲区必须位于设备 cuda:0(device_ids[0])上,但发现其中一个位于设备 cuda:1。
应对措施:将 DP 调整为 DDP 后,该问题得以解决。
引发错误的代码段如下:
# DP模式, module_a是一个分类器
module_a = torch.nn.DataParallel(module_a)
AI写代码python
完成修改后的代码:
local_rank = 0
# DDP模式
module_a = torch.nn.parallel.DistributedDataParallel(module=module_a, broadcast_buffers=False, device_ids=[local_rank])
module_a.train()
AI写代码python
全部评论 (0)
还没有任何评论哟~
