GPU在bash和python代码中的写法

1、bash中

## bash
设定GPU卡顺序:export CUDA_DEVICE_ORDER = "PCI_BUS_ID"
指定第1块和第2块GPU卡:export CUDA_VISIBLE_DEVICES="0,1" 

2、python代码中

## python

import os

os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"

os.environ["CUDA_VISIBLE_DEVICES"] = "0,2,3"  ,这样就指定了第1,3,4,张卡可见了

3、控制GPU使用上限

1、显示指定每个GPU进程中使用显存的上限,只均匀作用于所有GPU,无法对不同GPU设置不同的上限;
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.5
sess = tf.Session(config=config)

2、当allow_growth设置为True时,分配器将不会指定所有的GPU内存,而是根据需求增长
config = tf.ConfigProto()
config.gpu_options.allow_growth=True
sess = tf.Session(config=config)

3、如果想单独设置某几块GPU卡的内存使用上限,则可以先设置可见GPU,然后再设置显存上限。

 

你可能感兴趣的:(tensorflow,深度学习)