2016-08-17 15 views
1

TensorFlowを初めて使用し、TensorFlowのWebサイトの手順に従ってCUDA-7.5とcudnn-v4をインストールしました。 TensorFlow設定ファイルを調整し、ウェブサイトから次の例を実行しようとした後:TensorFlow複数のGPUから使用するGPUを選択

python -m tensorflow.models.image.mnist.convolutional 

私はTensorFlowではなく、他のGPUのいずれかを使用している、しかし、私はそれを使用したいのですがかなり確信していますより速いもの。私は、このサンプルコードが最初に見つかった最初のGPUを使用するかどうかを疑問に思っていました。もしそうなら、どのように私のTensorFlowコードで使うべきGPUをPythonで選ぶことができますか?例のコードを実行しているときに私が取得

メッセージは以下のとおりです。

ldt-tesla:~$ python -m tensorflow.models.image.mnist.convolutional 
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcublas.so locally 
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcudnn.so locally 
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcufft.so locally 
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcuda.so locally 
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcurand.so locally 
Extracting data/train-images-idx3-ubyte.gz 
Extracting data/train-labels-idx1-ubyte.gz 
Extracting data/t10k-images-idx3-ubyte.gz 
Extracting data/t10k-labels-idx1-ubyte.gz 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:102] Found device 0 with properties: 
name: Tesla K20c 
major: 3 minor: 5 memoryClockRate (GHz) 0.7055 
pciBusID 0000:03:00.0 
Total memory: 4.63GiB 
Free memory: 4.57GiB 
W tensorflow/stream_executor/cuda/cuda_driver.cc:572] creating context when one is currently active; existing: 0x2f27390 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:102] Found device 1 with properties: 
name: Quadro K2200 
major: 5 minor: 0 memoryClockRate (GHz) 1.124 
pciBusID 0000:02:00.0 
Total memory: 3.95GiB 
Free memory: 3.62GiB 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:59] cannot enable peer access from device ordinal 0 to device ordinal 1 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:59] cannot enable peer access from device ordinal 1 to device ordinal 0 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:126] DMA: 0 1 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:136] 0: Y N 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:136] 1: N Y 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:806] Creating TensorFlow device (/gpu:0) -> (device: 0, name: Tesla K20c, pci bus id: 0000:03:00.0) 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:793] Ignoring gpu device (device: 1, name: Quadro K2200, pci bus id: 0000:02:00.0) with Cuda multiprocessor count: 5. The minimum required count is 8. You can adjust this requirement with the env var TF_MIN_GPU_MULTIPROCESSOR_COUNT. 
Initialized! 

答えて

6

あなたはmasking gpusにこの例を引用し、必要なものだけを公開する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 
+0

ありがとう!それは仕事をして、そのエラーを取り除くようだ:)。私はまた、「cudaマルチプロセッサ数でgpuデバイスを無視している」というメッセージが表示されます。5.必要な最小数は8です。この要件は...で調整できます。あなたが提案したのと同じことをして、私は数を変更するために環境変数を使うことができますが、私はこれが何を意味するのか分かりません。カウント/最小カウントは何を意味しますか?ありがとうございました! –

+0

その他のオプション - https://stackoverflow.com/questions/40069883/how-to-set-specific-gpu-in-tensorflow/44848050#44848050 – Nandeesh

関連する問題