本文作者:StubbornHuang
版权声明:本文为站长原创文章,如果转载请注明原文链接!
原文标题:Pytorch – .to()和.cuda()的区别
原文链接:https://www.stubbornhuang.com/2202/
发布于:2022年07月11日 9:49:45
修改于:2022年07月11日 9:49:45

1 Pytorch中.to()和.cuda()的区别
如果需要指定的设备是GPU则.to()和.cuda()没有区别,如果设备是cpu,则不能使用.cuda()。也就是说.to()既可以指定CPU也可以指定GPU,而.cuda()只能指定GPU。
1.1 .cuda()
1.单GPU
os.environ['CUDA_VISIBLE_DEVICE']='0'
model.cuda()
2.多GPU
os.environment['CUDA_VISIBLE_DEVICES'] = '0,1,2,3'
device_ids = [0,1,2,3]
model = torch.nn.Dataparallel(model, device_ids =device_ids)
model = model.cuda()
1.2 .to()
1.CPU或者单GPU
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
model.to(device)
2.多GPU
device_ids = [0,1,2,3]
output_device = 0
model = nn.DataParallel(model,device_ids=device_ids)
model.to(output_device)
可以将上述代码进行封装
class DataParallel(Module):
def __init__(self, module, device_ids=None, output_device=None, dim=0):
super(DataParallel, self).__init__()
if not torch.cuda.is_available():
self.module = module
self.device_ids = []
return
if device_ids is None:
device_ids = list(range(torch.cuda.device_count()))
if output_device is None:
output_device = device_ids[0]
当前分类随机文章推荐
- Pytorch - 为什么要设置随机数种子? 阅读335次,点赞0次
- Pytorch - 没有使用with torch.no_grad()造成测试网络时显存爆炸的问题 阅读288次,点赞0次
- Pytorch - 使用torch.onnx.export将Pytorch模型导出为ONNX模型 阅读5358次,点赞0次
- Pytorch - torch.nn.Conv2d参数详解与使用 阅读114次,点赞0次
- Pytorch - 使用Pyav解码视频文件并将视频帧转换为Pytorch tensor作为网络模型输入数据 阅读3479次,点赞0次
- Pytorch - transpose和permute函数的区别和用法 阅读965次,点赞0次
- Pytorch - RuntimeError: No rendezvous handler for env://错误 阅读525次,点赞0次
- Pytorch - 训练网络时出现_pickle.UnpicklingError: pickle data was truncated错误 阅读430次,点赞0次
- Python - list/numpy/pytorch tensor相互转换 阅读1458次,点赞0次
- Pytorch – 使用torch.matmul()替换torch.einsum('bhxyd,md->bhxym',(a,b))算子模式 阅读779次,点赞0次
全站随机文章推荐
- C++ - Jni中的GetByteArrayElements和GetByteArrayRegion的区别和使用示例 阅读2263次,点赞0次
- C++ - std::numeric_limits
简介与使用,用于获取指定数据类型的最大值与最小值 阅读67次,点赞0次 - 资源分享 - Physics for Game Developers(First Edition) 英文高清PDF下载 阅读1746次,点赞0次
- 矩阵 - 行主序矩阵与列主序矩阵 阅读3663次,点赞0次
- Python - 使用Opencv-Python库获取本机摄像头视频并保存为视频文件 阅读2383次,点赞0次
- 如何正确的选择深度学习模型工业化部署的方式 阅读1142次,点赞0次
- 资源分享 - 3D游戏与计算机图形学中的数学方法 第3版 , Mathematics for 3D Game Programming and Computer Graphics, Third Edition 中文版PDF下载 阅读1041次,点赞0次
- 资源分享 - GPU Gems 3英文高清PDF下载 阅读2931次,点赞0次
- 资源分享 - ShaderX3 - Advanced Rendering with DirectX and OpenGL 英文高清PDF下载 阅读1984次,点赞0次
- Python - 使用with open as 读写文件 阅读1360次,点赞0次
评论
164