4分钟
数据并行(选读)
Authors: Sung Kim and Jenny Kang
在这个教程里,我们将学习如何使用 DataParallel 来使用多GPU。
PyTorch非常容易就可以使用多GPU,用如下方式把一个模型放到GPU上:
device = torch.device("cuda:0")
model.to(device)GPU: 然后复制所有的张量到GPU上:
mytensor = my_tensor.to(device)请注意,只调用my_tensor.to(device)并没有复制张量到GPU上,而是返回了一个copy。所以你需要把它赋值给一个新的张量并在GPU上使用这个张量。
在多GPU上执行前向和反向传播是自然而然的事。 但是PyTorch默认将只使用一个GPU。
使用DataParallel可以轻易的让模型并行运行在多个GPU上。
model = nn.DataParallel(model)这才是这篇教程的核心,接下来我们将更详细的介绍它。
学员评价