tensorflow中使用指定的GPU及GPU显存 CUDA_VISIBLE_DEVICES

参考: https://blog.csdn.net/jyli2_11/article/details/73331126

https://blog.csdn.net/cfarmerreally/article/details/80321276

http://www.cnblogs.com/darkknightzh/p/6591923.html

场景:

有一台服务器,服务器上有多块儿GPU可以供使用,但此时只希望使用第2块和第4块GPU,但是我们希望代码能看到的仍然是有两块GPU,分别编号为0,1,这个时候我们可以使用环境变量CUDA_VISIBLE_DEVICES来解决这个问题。 
比如:

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块儿

设置示例: 在python程序中,

import os
os.environ["CUDA_VISIBLE_DEVICES"] = '1'
os.environ["CUDA_VISIBLE_DEVICES"] = '0,2,3'


原文地址:https://www.cnblogs.com/ying-chease/p/9473938.html