Résoudre les problèmes liés à votre workflow Cloud TPU
Une fois votre charge de travail d'entraînement ou d'inférence exécutée sur des TPU, l'étape suivante consiste à vous assurer qu'elle fonctionne comme prévu. Cloud TPU génère des métriques et des journaux qui vous permettent de rechercher et de déboguer les VM TPU qui ne se comportent pas comme prévu. Dans cette documentation, ces VM seront nommées anomalies.
Le processus général de dépannage est le suivant :
- Afficher les métriques Cloud TPU pour rechercher les VM TPU présentant des anomalies
- Afficher les journaux Cloud TPU pour les VM TPU présentant des anomalies
- Profiler votre charge de travail
Vous pouvez afficher les métriques et les journaux dans l'explorateur de métriques et l'explorateur de journaux de la console Google Cloud. Vous pouvez également utiliser des tableaux de bord de surveillance et de journalisation pour collecter toutes les métriques et tous les journaux liés aux Cloud TPU dans des tableaux de bord individuels.
Métriques des VM Cloud TPU
Cloud Monitoring collecte automatiquement des métriques à partir de vos TPU et de leurs VM Compute Engine hôtes. Les métriques suivent des quantités numériques au fil du temps (par exemple, l'utilisation du processeur, l'utilisation du réseau ou la durée d'inactivité des TensorCores). Pour en savoir plus sur les métriques Cloud TPU, consultez Surveiller les VM TPU.
Journaux Cloud TPU
Cloud Logging collecte automatiquement les journaux issus de vos TPU et de leurs VM Compute Engine hôtes. Cloud Logging suit les événements générés par Cloud TPU. Vous pouvez également instrumenter votre code pour générer des journaux. Cloud TPU génère deux types de journaux :
- Journaux des nœuds de calcul TPU
- Journaux des ressources auditées
Les journaux des nœuds de calcul TPU contiennent des informations sur un nœud de calcul TPU spécifique dans une zone spécifique, par exemple la quantité de mémoire disponible sur le nœud de calcul TPU (system_available_memory_GiB).
Les journaux des ressources auditées contiennent des informations sur le moment où une API Cloud TPU spécifique a été appelée et sur l'auteur de l'appel. Par exemple : CreateNode, UpdateNode et DeleteNode.
Vous pouvez également utiliser le package PyPi cloud-tpu-diagnostics pour écrire des traces de la pile dans les journaux. Pour en savoir plus, consultez Déboguer les VM TPU.
Pour en savoir plus sur les journaux, consultez Journalisation.
Tableaux de bord de surveillance et de journalisation
N'avoir qu'une seule page dans la console Google Cloud peut faciliter l'affichage et l'interprétation des métriques et des journaux liés aux Cloud TPU. Le dépôt GitHub sur la surveillance et le débogage contient un ensemble de scripts et de fichiers de configuration qui utilisent Terraform pour déployer automatiquement des tableaux de bord contenant toutes les métriques et tous les journaux liés aux Cloud TPU. Pour configurer ces tableaux de bord dans votre projet Google Cloud , consultez Tableaux de bord de surveillance et de journalisation.
Profiler vos charges de travail sur des VM TPU
Le profilage vous permet d'optimiser les performances d'entraînement de votre modèle sur les VM TPU. Vous utilisez TensorBoard et le plug-in TensorBoard TPU pour profiler votre modèle. Pour en savoir plus sur le profilage de votre charge de travail, consultez Profiler votre modèle sur des VM TPU.
Pour en savoir plus sur l'utilisation de TensorBoard avec l'un des frameworks compatibles, consultez les documents suivants :