J'ai installé la version GPU de tensorflow sur un Ubuntu 14.04.
Je suis sur un serveur GPU où tensorflow peut accéder aux GPU disponibles.
Je veux exécuter tensorflow sur les processeurs.
Normalement, je peux utiliser env CUDA_VISIBLE_DEVICES=0
pour exécuter le GPU no. 0.
Comment puis-je choisir entre les processeurs à la place?
Je ne suis pas intéressé à réécrire mon code avec with tf.device("/cpu:0"):
Vous pouvez appliquer un paramètre _device_count
_ par _tf.Session
_:
_config = tf.ConfigProto(
device_count = {'GPU': 0}
)
sess = tf.Session(config=config)
_
Voir aussi le fichier de configuration protobuf:
Vous pouvez également définir la variable d’environnement sur
CUDA_VISIBLE_DEVICES=""
sans avoir à modifier le code source.
Si les réponses ci-dessus ne fonctionnent pas, essayez:
os.environ['CUDA_VISIBLE_DEVICES'] = '-1'
Pour moi, seul le réglage de CUDA_VISIBLE_DEVICES
sur -1
fonctionne:
Travaux:
import os
import tensorflow as tf
os.environ['CUDA_VISIBLE_DEVICES'] = '-1'
if tf.test.gpu_device_name():
print('GPU found')
else:
print("No GPU found")
# No GPU found
Est-ce que pas fonctionne:
import os
import tensorflow as tf
os.environ['CUDA_VISIBLE_DEVICES'] = ''
if tf.test.gpu_device_name():
print('GPU found')
else:
print("No GPU found")
# GPU found
Juste en utilisant le code ci-dessous.
import os
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
os.environ['CUDA_VISIBLE_DEVICES'] = '-1'