设置 CUDA_VISIBLE_DEVICES

本文最后更新于:2021年11月1日 中午

深度学习过程中需要配置可见的显卡设备,本文记录 CUDA_VISIBLE_DEVICES 配置方法。

简介

服务器中有多个GPU,选择特定的GPU运行程序可在程序运行命令前使用:CUDA_VISIBLE_DEVICES=0命令。0为服务器中的GPU编号,可以为0, 1, 2, 3等,表明对程序可见的GPU编号。

说明

命令 说明
CUDA_VISIBLE_DEVICES=1 只有编号为1的GPU对程序是可见的,在代码中gpu[0]指的就是这块GPU
CUDA_VISIBLE_DEVICES=0,2,3 只有编号为0,2,3的GPU对程序是可见的,在代码中gpu[0]指的是第0块,gpu[1]指的是第2块,gpu[2]指的是第3块
CUDA_VISIBLE_DEVICES=2,0,3 只有编号为0,2,3的GPU对程序是可见的,但是在代码中gpu[0]指的是第2块,gpu[1]指的是第0块,gpu[2]指的是第3块

使用

临时设置
1
2
Linux: export CUDA_VISIBLE_DEVICES=1
windows: set CUDA_VISIBLE_DEVICES=1
python 运行时设置
1
2
import os
os.environ["CUDA_VISIBLE_DEVICES"] = "1"

1
CUDA_VISIBLE_DEVICES=1 python **.py

注意:这种设置方法一定要在第一次使用 cuda 之前进行设置

永久设置
  • linux:
    在~/.bashrc 的最后加上export CUDA_VISIBLE_DEVICES=1,然后source ~/.bashrc
  • windows:
    打开我的电脑环境变量设置的地方,直接添加就行了。

参考资料