tensorflow中使用指定的GPU及GPU顯存
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
本文目錄
- 1 終端執行程序時設置使用的GPU
- 2 python代碼中設置使用的GPU
- 3 設置tensorflow使用的顯存大小
- 3.1 定量設置顯存
- 3.2 按需設置顯存
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
轉載請註明出處:
http://www.cnblogs.com/darkknightzh/p/6591923.html
參考網址:
http://stackoverflow.com/questions/36668467/change-default-gpu-in-tensorflow
http://stackoverflow.com/questions/37893755/tensorflow-set-cuda-visible-devices-within-jupyter
回到頂部(go to top)1 終端執行程序時設置使用的GPU
如果電腦有多個GPU,tensorflow默認全部使用。如果想只使用部分GPU,可以設置CUDA_VISIBLE_DEVICES。在調用python程序時,可以使用(見第一個參考網址Franck Dernoncourt的回復):
CUDA_VISIBLE_DEVICES=1 python my_script.py
Environment Variable Syntax Results CUDA_VISIBLE_DEVICES=1 Only device 1 will be seen CUDA_VISIBLE_DEVICES=0,1 Devices 0 and 1 will be visible CUDA_VISIBLE_DEVICES="0,1" Same as above, quotation marks are optional CUDA_VISIBLE_DEVICES=0,2,3 Devices 0, 2, 3 will be visible; device 1 is masked CUDA_VISIBLE_DEVICES="" No GPU will be visible
2 python代碼中設置使用的GPU
如果要在python代碼中設置使用的GPU(如使用pycharm進行調試時),可以使用下面的代碼(見第二個參考網址中Yaroslav Bulatov的回復):
import os os.environ["CUDA_VISIBLE_DEVICES"] = "2"回到頂部(go to top)
3 設置tensorflow使用的顯存大小
3.1 定量設置顯存
默認tensorflow是使用GPU盡可能多的顯存。可以通過下面的方式,來設置使用的GPU顯存:
gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.7) sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
上面分配給tensorflow的GPU顯存大小為:GPU實際顯存*0.7。
可以按照需要,設置不同的值,來分配顯存。
========================================================================
170703更新:
3.2 按需設置顯存
上面的只能設置固定的大小。如果想按需分配,可以使用allow_growth
參數(參考網址:http://blog.csdn.net/cq361106306/article/details/52950081):
gpu_options = tf.GPUOptions(allow_growth=True) sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
170703更新結束
========================================================================
tensorflow中使用指定的GPU及GPU顯存