发布网友 发布时间:2022-04-20 05:40
共2个回答
热心网友 时间:2023-08-10 07:56
第一步是通过检查PyTorch是否能够找到CUDA(ComputeUnifiedDeviceArchitecture)库来确定GPU是否可用。如果CUDA库未安装或未配置正确,则PyTorch将无法使用GPU。如果我们在安装PyTorch时选择了与我们计算机上已安装的CUDA版本不兼容的版本,则也会出现此问题。点击学习大厂名师精品课热心网友 时间:2023-08-10 07:56
1、将已经实例化的模型在多个GPU上并行,只需要使用nn.DataParallel(model)方法即可,可用torch.cuda.device_count()检查GPU的个数。
2、nn.DataParallel中的参数有三个,第一个是需要并行的模型,第二个是并行所使用的GPU列表(默认使用所有可用GPU),第三个是模型输出所在的device编号(可以是cpu,默认是GPU0)。
3、为了验证并行效果,我们定义一个打印输入和输出大小的模型,我们使用了2个GPU并行该模型。
4、使用任意一个数据集,在模型输出结果后,我们再打印出输出结果的大小,与模型中的打印结果进行对比。
5、In Model是模型内打印的结果,Outside为模型外打印的结果。对比发现Outside的batch大小为所有In Model之和,代表一个batch的数据被平均分到每个并行的GPU进行计算,之后再合并输出结果。