La solution des variables d'environnement ne fonctionne pas pour moi avec tensorflow 2.3.1. Je suppose, d'après les commentaires dans le fil de discussion github, que la solution ci-dessous fonctionne pour les versions >=2.1.0.
De tensorflow github :
import tensorflow as tf
# Hide GPU from visible devices
tf.config.set_visible_devices([], 'GPU')
Assurez-vous de le faire juste après l'importation avec une nouvelle instance de tensorflow (si vous utilisez jupyter notebook, redémarrez le noyau).
Et pour vérifier que vous fonctionnez bien sur le CPU :
# To find out which devices your operations and tensors are assigned to
tf.debugging.set_log_device_placement(True)
# Create some tensors and perform an operation
a = tf.constant([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]])
b = tf.constant([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]])
c = tf.matmul(a, b)
print(c)
Sortie attendue :
2.3.1
Executing op MatMul in device /job:localhost/replica:0/task:0/device:CPU:0
tf.Tensor(
[[22. 28.]
[49. 64.]], shape=(2, 2), dtype=float32)