訓練前要用nvidia-smi來檢視一下當前gpu的使用情況,不要一下子就放上去跑把大家一起擠掛了,這是負責任的行為。之前在公司就遇到過訓練了好久,結果乙個新來的就把伺服器擠跪了。。。
如果機器上面的gpu之間不能夠通訊,那就先設定一塊要用的gpu吧,在終端上面輸入命令export cuda_visible_devices=0
(數字是gpu的編號)。
用tensorflow建立session的時候要注意設定記憶體使用情況,特別是記憶體資源不夠而且要和別人共享一塊gpu的時候(留一點給別人用):
gpu_options = tf.gpuoptions(per_process_gpu_memory_fraction=0.9)
with tf.session(config=tf.configproto(gpu_options=gpu_options)) as sess:
fraction設定使用記憶體的百分比。
如果要用with tf.device(『/gpu:0』):
,只能夠在所有運算都能在gpu上進行才可以,否則就會報錯。如果一定要這樣,則要指定哪些操作可以使用gpu,或者設定從gpu可以轉移到cpu上運算。
tensorflow中指定GPU及GPU視訊記憶體設定
檢視機器上gpu情況 命令 nvidia smi 功能 顯示機器上gpu的情況 命令 nvidia smi l 功能 定時更新顯示機器上gpu的情況 其中左上側有0 1 2 3的編號,表示gpu的編號,在後面指定gpu時需要使用這個編號。在終端執行程式時指定gpu cuda visible devi...
tensorflow設定gpu及gpu視訊記憶體使用
os.environ cuda visible devices 0 使用 gpu 0 os.environ cuda visible devices 0,1 使用 gpu 0,1 一是讓tensorflow在執行過程中動態申請視訊記憶體,需要多少就申請多少 第二種方式就是限制gpu的使用率。conf...
tensorflow使用GPU小記
import os os.envrion cuda visible devices 0,1 在cmd中輸入 nvidia smi 要想不斷重新整理記錄 nvidia smi l 報錯 failed to create cublas handle cublas status alloc failed原...