Pour obtenir les meilleures performances d'une machine, modifiez le parallélisme des threads et d'OpenMP comme indiqué ci-dessous pour l'option backend tensorflow (de aquí ):
import tensorflow as tf
#Assume that the number of cores per socket in the machine is denoted as NUM_PARALLEL_EXEC_UNITS
# when NUM_PARALLEL_EXEC_UNITS=0 the system chooses appropriate settings
config = tf.ConfigProto(intra_op_parallelism_threads=NUM_PARALLEL_EXEC_UNITS,
inter_op_parallelism_threads=2,
allow_soft_placement=True,
device_count = {'CPU': NUM_PARALLEL_EXEC_UNITS})
session = tf.Session(config=config)
Réponse au commentaire ci-dessous : [source]
allow_soft_placement=True
Si vous souhaitez que TensorFlow choisisse automatiquement un périphérique existant et pris en charge pour exécuter les opérations au cas où le périphérique spécifié n'existerait pas, vous pouvez définir les paramètres suivants allow_soft_placement
à Vrai dans l'option de configuration lors de la création de la session. En d'autres termes, cela permet l'allocation dynamique de la mémoire du GPU.