Dies steht in Zusammenhang mit How to enable Keras with Theano to utilize multiple GPUs, aber anstatt mehrere GPUs zu verwenden, möchte ich angeben, auf welcher GPU das spezifische Modell trainiert oder ausgeführt wird.Wie kann man andere Grafikprozessoren in Keras mit einem TensorFlow-Backend verwenden?
Meine nvidia-smi
Ausgabe sieht wie folgt aus:
+------------------------------------------------------+
| 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 |
+-------------------------------+----------------------+----------------------+
Dieser Ausgang natürlich ist, wenn nichts läuft. Das Problem ist, dass ich in Keras nicht sicher bin, wie man spezifiziert, auf welcher GPU er läuft. Natürlich können wir mit TensorFlow nur das Paradigma with tf.device('/cpu:1'):
machen, aber ich bin mir nicht sicher, wie das mit Keras integriert werden würde.
Danke!
FYI, die FAQ hier hat nicht gesagt, ob diese Fähigkeit Keras API für den Tensorflow-Fall ausgesetzt ist (obwohl es eine Methode für das Theano-Backend bietet). https://keras.io/getting-started/faq/#how-can-i-run-keras-on-gpu –