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