J'essaie de comprendre pourquoi chaque itération de train prend environ 1,5 s. J'ai utilisé la méthode de traçage décrite here. Je travaille sur un GPU TitanX Pascal. Mes résultats semblent très étranges, il semble que chaque opération soit relativement rapide et que le système reste inactif la plupart du temps entre les opérations. Comment puis-je comprendre à partir de ce qui limite le système? Il semble toutefois que lorsque je réduis drastiquement la taille du lot, les écarts se referment, comme on peut le voir ici.Tensorflow - Profilage en temps réel - Comprendre ce qui limite le système
Malheureusement, le code est très compliqué et je ne peux pas poster une petite version de ce qui a le même problème
Est-il possible de comprendre le profileur ce qui prend l'espace dans les espaces entre opérations?
Merci!
EDIT:
Sur CPU ony Je ne vois pas ce comportement:
Je dirigeais une
BTW, il n'est pas nécessaire d'utiliser la timeline maintenant. Jetez un oeil à [ma réponse ici] (http://stackoverflow.com/a/43692312/1090562) pour voir comment vous pouvez déboguer votre modèle via tensorboard. –
Merci, mais pour une raison quelconque, je ne vois pas les Stats Node dans mon TB ... – aarbelle
Quelques réflexions: certaines choses pourraient ne pas être reflétées dans la timeline - le temps passé à transférer des données via dict dict, la latence grpc. Avez-vous des lacunes similaires si vous utilisez uniquement le processeur? Est-ce que des choses pourraient être en attente de certaines opérations de déqueue? Vous pouvez également insérer des noeuds tf.Print et regarder les horodatages qui y sont générés. –