2016-11-20 1 views
0

J'ai quatre cartes GPU et le processeur ne rend pas le prétraitement de l'image assez rapide pour chacun d'entre eux. Les files d'attente sont épuisées rapidement et la plupart des cartes de temps sont inactives. Existe-t-il un moyen de placer QueueRunner sur l'une de ces quatre cartes GPU de sorte qu'une carte effectue le prétraitement et forme la file d'attente alors que trois autres entraînent réellement le modèle?TensorFlow: prétraitement d'image sur le GPU

Répondre

0

Oui, cela devrait être possible. Vous pouvez envelopper la fonction python de prétraitement dans tf.py_func, en créant une opération TF et en l'affectant à l'unité gpu demandée en utilisant with tf.device("gpu:0"):, en créant une file d'attente et en utilisant l'opération dequeue sur l'autre unité.

+0

Etes-vous sûr que cela fonctionne? Je pense que la fonction python fonctionnera toujours sur le CPU, non? –