Tensorflow全域性設定可見GPU編號

2021-08-21 23:42:23 字數 677 閱讀 7906

筆者需要tensorflow僅執行在乙個gpu上(機器本身有多gpu),而且需要依據系統引數動態調節,故無法簡單使用cuda_visible_devices

一種方式是全域性使用tf.device函式生成的域,但裝置號需要在繪製graph前指定,仍然不夠靈活。

查閱文件發現configgpuoptions中的visible_device_list可以定義gpu編號從visible到virtual的對映,即可以設定tensorflow可見的gpu device,從而全域性設定了tensorflow可見的gpu編號。**如下:

config = tf.configproto()

config.gpu_options.visible_device_list = str(device_num)

sess = tf.session(config=config)

參考 多卡伺服器下隱藏部分 gpu 和 tensorflow 的視訊記憶體使用設定,還可以通過os包設定全域性變數cuda_visible_devices,**如下:

os.environ["cuda_visible_devices"] = "2"

Tensorflow全域性設定可見GPU編號操作

筆者需要tensorflow僅執行在乙個gpu上 機器本身有多gpu 而且需要依據系統引數動態調節,故無法簡單使用cuda visible devices。一種方式是全域性使用tf.device函式生成的域,但裝置號需要在繪製graph前指定,仍然不夠靈活。查閱文件發現config的gpuoptio...

python設定全域性可訪問的driver物件方法

最近專案要用python來寫自動化,我根據之前現有的ruby框架來重寫。發現乙個最大的區別,全域性變數,ruby是可以全工程可見,而python只能在當前py檔案內可見。其實在開發中我們都會要求盡量少用全域性變數,以避免帶來的不可預見的問題。但是在做selenium框架時,driver物件的必須全工...

tensorflow結果可重複

最近在學吳恩達的深度學習課程,在參考別人的 的時候,發現在cpu多執行緒情況下和gpu執行的情況下,同樣的 資料,每次訓練出來的結果都不一樣,這還怎麼調參,於是stackoverflow走起。windows10 64位 python 3.6 tensorflow 1.14 keras 2.2.5 c...