2017-04-02 117 views

回答

1

可以確保操作被操作的定義之前使用

with tf.device('/gpu:0'): 

特定的設備上運行(參見here瞭解更多信息)。

編輯:

每一個可用的GPU有自己的索引: '/ GPU:0', '/ GPU:1', '/ GPU:2' 等這樣你就可以綁定特定的操作具體的gpus。當你輸入tensorflow時,它會打印出哪個gpus可用以及它們被分配了哪個索引。

(例如它打印:創建TensorFlow設備(/ GPU:0) - >(設備:0,名稱:的GeForce GTX 1070,PCI總線ID:...))

+0

這將確保事情AREN不會意外地在CPU上運行,而不是在GPU上運行。問題是它不能確保你使用的是預期的GPU。例如,這不會在您的顯示器GPU上抓住您的訓練模型。 –

+0

@ sudo-nim在給定的鏈接中,第一段顯示如何分配不同的gpus。我編輯了我的答案,使其更清晰。 – BlueSun

+0

這很有幫助,唯一的問題是我仍然需要檢查日誌以查看設備映射是什麼。如果我在具有不同設備映射的其他機器上運行我的代碼,或者使用我的nvidia安裝程序更改某些內容,則不會自動捕獲它。 –

相關問題