PyTorch 使用指定的 GPU 的方法

好久没写 PyTorch 了,记录一下在 PyTorch 中如何让程序使用指定的 GPU,这样能有效的避免多人共用一台服务器的时候互相抢占 GPU 资源。如果不指定,PyTorch 默认会占用所有 GPU,这样是非常不友好的,建议大家都在写代码的时候指定一下 GPU。

一、PyTorch 指定 GPU 的方法

下面的内容转载自 cnblogs,原文链接在下方给出,觉得写得很完善了。

PyTorch 默认使用从 0 开始的 GPU,如果 GPU 0 正在运行程序,需要指定其他 GPU。

有如下两种方法来指定需要使用的 GPU。

1. 类似 TensorFlow 指定 GPU 的方式,使用 CUDA_VISIBLE_DEVICES

1.1 直接终端中设定:

CUDA_VISIBLE_DEVICES=1 python my_script.py

1.2 Python 代码中设定:

import os
os.environ["CUDA_VISIBLE_DEVICES"] = "2"

见网址:http://www.cnblogs.com/darkknightzh/p/6591923.html

2. 使用函数 set_device

import torch
torch.cuda.set_device(id)

该函数见 pytorch-master\torch\cuda\__init__.py

不过官方建议使用 CUDA_VISIBLE_DEVICES,不建议使用 set_device 函数。

二、参考文献和结语

原文链接:https://www.cnblogs.com/darkknightzh/p/6836568.html

PyTorch 还是非常好用的,老唐本人一直用的都是 PyTorch,推荐大家使用。PyTorch 官网:https://pytorch.org


【AD】炭云:768元/年/1GB内存/20GB SSD空间/2TB流量/500Mbps-1Gbps端口/独立IPv4/KVM/广州移动

【AD】美国洛杉矶CN2 VPS/香港CN2 VPS/日本CN2 VPS推荐,延迟低、稳定性高、免费备份_搬瓦工vps