4

Это связано с How to enable Keras with Theano to utilize multiple GPUs, но вместо использования нескольких графических процессоров, я заинтересован в определении того, какой графический процессор использует конкретную модель или работает.Как использовать другие графические процессоры в Keras с поддержкой TensorFlow?

Мой nvidia-smi вывод выглядит следующим образом:

+------------------------------------------------------+      
| NVIDIA-SMI 361.42  Driver Version: 361.42   |      
|-------------------------------+----------------------+----------------------+ 
| GPU Name  Persistence-M| Bus-Id  Disp.A | Volatile Uncorr. ECC | 
| Fan Temp Perf Pwr:Usage/Cap|   Memory-Usage | GPU-Util Compute M. | 
|===============================+======================+======================| 
| 0 Tesla K80   Off | 0000:03:00.0  Off |     0 | 
| N/A 38C P0 60W/149W | 11354MiB/11519MiB |  0%  Default | 
+-------------------------------+----------------------+----------------------+ 
| 1 Tesla K80   Off | 0000:04:00.0  Off |     0 | 
| N/A 37C P0 71W/149W | 224MiB/11519MiB |  0%  Default | 
+-------------------------------+----------------------+----------------------+ 
| 2 GeForce GTX 750 Ti Off | 0000:06:00.0  On |     N/A | 
| 40% 29C P8  1W/38W | 120MiB/2047MiB |  0%  Default | 
+-------------------------------+----------------------+----------------------+ 

Этот вывод, конечно, когда ничего не работает. Проблема в том, что я не уверен в Keras, как указать, на каком графическом процессоре работать. Конечно, с TensorFlow мы можем просто сделать парадигму with tf.device('/cpu:1'):, но я не уверен, как это будет интегрироваться с Keras.

Спасибо!

+0

FYI, FAQ здесь не сказал, если эта способность подвергается Keras API для случая с тензорным потоком (хотя он обеспечивает метод для Theano backend). https://keras.io/getting-started/faq/#how-can-i-run-keras-on-gpu –

ответ

4

Кроме того, чтобы указать tensorflow в вашем keras.json файла в качестве внутреннего интерфейса, вы можете ограничить количество графических процессоров, используемых и/или использовать конкретный GPU с использованием переменная среды CUDA_VISIBLE_DEVICES (http://acceleware.com/blog/cudavisibledevices-masking-gpus). Здесь вы можете указать, какой графический процессор использовать.

0

В основном два шага, вы должны следовать:

  1. Установите tensorflow версию, которая GPU включить. См. Это https://www.tensorflow.org/versions/r0.7/get_started/os_setup.html

  2. Keras использует Theano как бэкэнд по умолчанию. Вы должны изменить его tensorflow

vi ~/.keras/keras.json

содержимое файла: { "эпсилон": 1e-07, "floatx": "float32", "бэкенд": "Theano"}

изменить "theano" на "tensorflow"

Дело в том, что вам просто нужно установить версию endorflow с поддержкой gpu. Он автоматически будет использовать ваш сконфигурированный gpu.

Смотрите эту ссылку для процедуры установки и tensorflow CUDA http://www.nvidia.com/object/gpu-accelerated-applications-tensorflow-installation.html

Смежные вопросы