tensorflow gpu使用說明

2021-08-20 17:25:57 字數 1406 閱讀 8969

tensorflow gpu使用說明

由於tensorflow預設搶占伺服器所有gpu視訊記憶體,只允許乙個小記憶體的程式也會占用所有gpu資源。下面提出使用gpu執行tensorflow的幾點建議:

1.在執行之前先檢視gpu的使用情況:

$ nvidia-smi # 檢視gpu此時的使用情況

或者$ nvidia-smi -l # 實時返回gpu使用情況

2.目前實驗室伺服器有0,1,2,3四個gpu,找到空閒的gpu號,可以使用環境變數cuda_visible_devices:

環境變數的定義格式:

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

輸入以下命令執行程式:

$ export cuda_visible_devices=0 # 假設此時 gpu 0 空閒

為了防止新開終端忘記export,比較保險的做法是每次執行tensorflow之前定義使用的gpu:

$ cuda_visible_devices=0 python mnist.py # 假設此時 gpu 0 空閒, mnist.py為你想執行的程式。

3.這樣tensorflow此時只會在指定的gpu上執行,但是仍然會占用整個gpu的視訊記憶體,不過不和其他人公用gpu時也不會有影響,下面介紹兩種限定gpu占用的方法:

(1)在tensorflow中定義session時作如下設定,該設定會啟用最少的gpu視訊記憶體來執行程式。

config = tf.configproto()

config.gpu_options.allow_growth = true

session = tf.session(config=config)

(2)在tensorflow中定義session時作如下設定,該設定會強制程式只占用指定比例的gpu視訊記憶體。

config = tf.configproto()

config.gpu_options.per_process_gpu_memory_fraction = 0.4 # 占用gpu40%的視訊記憶體

session = tf.session(config=config)

注: - 在tensorflow**中with tf.device(『/gpu:0』):只會指定在gpu 0上計算,但仍然會預設占用所有gpu資源。

tensorflow gpu使用說明

tensorflow gpu記憶體使用問題

tensorflow對於gpu的使用是先佔住所有可用資源,然後使用某塊gpu進行計算,因此在 中需要對gpu的使用做一定的限定根據自己的需求。當你不想讓tensorflow占用你所有的gpu時,可限定tensorflow的可見gpu cuda visible devices 1 設定 1 為可見gp...

tensorflow GPU的使用命令

在使用gpu進行深度學習實驗,了解gpu的狀態非常重要 1 nvidia smi 顯示gpu當前的狀態和屬性 gpu gpu 編號 name gpu 型號 persistence m 持續模式的狀態。持續模式雖然耗能大,但是在新的gpu應用啟動時,花費的時間更少,這裡顯示的是off的狀態 fan 風...

離線安裝tensorflow gpu

前言 安裝前先確定電腦可以使用gpu執行tensorflow,否則浪費時間。nvidia 英偉達 官網官網檢視顯示卡是否支援gpu執行,compute capability需要在3.0及以上,否則安裝後,不能用gpu執行程式,會自動呼叫cpu執行。nvidia官網 密碼 0pmq 檔案列表 anac...