web-dev-qa-db-fra.com

Usage GPU à basse nvidia avec Keras et Tensorflow

Je couronne un CNN avec Keras-GPU et Tensorflow-GPU avec une NVIDIA GeForce RTX 2080 TI sous Windows 10. Mon ordinateur dispose d'un processeur Intel Xeon E5-2683 V4 (2,1 GHz). Je gère mon code via Jupyter (Distribution la plus récente Anaconda). La sortie du terminal de commande montre que le GPU est utilisé, mais le script que je suis en cours prend plus de temps que je m'attends à former/à tester sur les données et à l'ouverture du gestionnaire de tâches, on dirait que l'utilisation du GPU est très faible. Voici une image: -enter image description here

Notez que la CPU n'est pas utilisée et que rien d'autre sur le responsable de la tâche ne suggère que tout est entièrement utilisé. Je n'ai pas de connexion Ethernet et je suis connecté au WiFi (ne pensez rien à ce que cela fait quoi que ce soit, mais je ne suis pas sûr de Jupyter puisqu'il traverse les broswers Web). Je m'entraîne sur beaucoup de données (~ 128 Go) qui sont toutes chargées dans RAM (512 Go). Le modèle que je cours est un réseau de neurones entièrement convolutionnels (essentiellement un u- Architecture nette) avec 566 290 paramètres formables. Des choses que j'ai essayées jusqu'à présent: 1. L'augmentation de la taille du lot de 20 à 10 000 (augmente l'utilisation du GPU de ~ 3-4% à environ 6-7%, diminue considérablement le temps de formation comme prévu). 2 Définition de l'utilisation_multiprooking vers un nombre véritable et croissant de travailleurs dans Model.fit (aucun effet).

J'ai suivi les étapes d'installation sur ce site: https://www.pugetsysystems.com/labs/hpc/thewest-way-to-install-tensorflow-with-gpu-support-on-windows-10 -Avoir-installer-installer-cuda-1187/# look-at-the-gun-with-tensorboard

Notez que cette installation spécifiquement n'installe pas Cudnn ou Cuda . J'ai eu des problèmes dans le passé avec Tensorflow-GPu courir avec Cuda (bien que je n'ai pas essayé depuis plus de 2 ans, il est donc plus facile avec les dernières versions), pourquoi j'ai utilisé cette méthode d'installation.

Est-ce très probablement la raison pour laquelle le GPU n'est pas pleinement utilisé (pas de Cudnn/Cuda)? At-il quelque chose à voir avec l'utilisation de la mémoire GPU dédiée étant un goulot d'étranglement? Ou peut-être quelque chose à voir avec l'architecture de réseau que j'utilise (nombre de paramètres, etc.)?

S'il vous plaît laissez-moi savoir si vous avez besoin de plus d'informations sur mon système ou le code/données que je rencontre pour vous aider à diagnostiquer. Merci d'avance!

EDIT: J'ai remarqué quelque chose d'intéressant dans le chef de la tâche. Une époque avec la taille du lot de 10 000 prend environ 200 ans. Pour les dernières 5s de chaque époque, l'utilisation du GPU augmente à environ 15-17% (jusqu'à 6-7% pour les 195 premiers de chaque époque). Je ne sais pas si cela aide ou indique qu'il y a un goulot d'étranglement quelque part en plus du GPU.

7
A. LaBella

Il semble y avoir une modification de la méthode d'installation que vous avez référencée: https: //www.pugetsysystems.com/labs/hpc/the-best-way-a-install-tensorflow-with-gpu-support- On-Windows-10-Sans-Installing-Cuda-1187 C'est maintenant beaucoup plus facile et devrait éliminer les problèmes que vous rencontrez.

IMPORTANT EDIT Vous ne semblez pas regarder le calcul réel du GPU, regardez l'image ci-jointe: enter image description here

0
Elegant Code
0
maddy23