pytorch在多显卡下运行一定占用少部分cuda0的解决方法

本文介绍了在拥有两块显卡的环境下,如何通过设置CUDA_VISIBLE_DEVICES变量确保代码仅在CUDA1上运行,同时解决了CUDA0显存不足导致的运行问题。通过设置CUDA_VISIBLE_DEVICES=1,限制程序只使用第二张显卡,并在代码中将设备设置为'cuda:0'。然而,即使在CUDA0未被主动使用时,它仍会被占用约2GB显存。因此,有效管理GPU资源对于高性能计算至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

情况

有两个显卡,但是指定运行在cuda1上时候,一定会占用cuda0显卡大约2GB显存。当cuda0在正常运行,没有显存时候,运行代码在cuda1上时候,会因为第一个卡显存不够跑不起来。

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 510.85.02    Driver Version: 510.85.02    CUDA Version: 11.6     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA TITAN Xp     Off  | 00000000:27:00.0  On |                  N/A |
| 29%   42C    P5    23W / 250W |    548MiB / 12288MiB |      1%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|   1  NVIDIA GeForce ...  Off  | 00000000:28:00.0 Off |                  N/A |
| 21%   45C    P2    63W / 130W |   4600MiB /  6144MiB |     70%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

解决方法

运行代码时候

CUDA_VISIBLE_DEVICES=1 python run.py

然后在代码中,注意设置cuda:0

device = torch.device('cuda:0')
解释

CUDA_VISIBLE_DEVICES=1代表了电脑只有GPU FAN = 1的这个第二张显卡,程序只“看得见”GPU FAN = 1这块显卡。
torch.device('cuda:0'),因为只有第二张显卡了,所以它变成了下标是0的显卡。即:GPU FAN = 1显卡在程序的眼里就变成了第0块显卡

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值