Avertissement: cette API est obsolète et sera supprimée dans une future version de TensorFlow une fois le remplacement stable.

Cette page a été traduite par l'API Cloud Translation.
Switch to English

EagerSession.ResourceCleanupStrategy

public static final enum EagerSession.ResourceCleanupStrategy

Contrôle la façon dont les ressources TensorFlow sont nettoyées lorsqu'elles ne sont plus nécessaires.

Toutes les ressources allouées lors d'une EagerSession sont supprimées à la fermeture de la session. Pour éviter les erreurs de mémoire insuffisante, il est également fortement recommandé de nettoyer ces ressources pendant la session. Par exemple, l'exécution de n opérations dans une boucle de m itérations allouera un minimum de n * m ressources alors que dans la plupart des cas, seules les ressources de la dernière itération sont encore utilisées.

EagerSession instances EagerSession peuvent être notifiées de différentes manières lorsque les objets TensorFlow ne sont plus référencés, afin qu'elles puissent procéder au nettoyage de toutes les ressources qu'elles possédaient.

Méthodes héritées

Valeurs énumérées

public static final EagerSession.ResourceCleanupStrategy IN_BACKGROUND

Surveillez et supprimez les ressources inutilisées d'un nouveau thread s'exécutant en arrière-plan.

Il s'agit de l'approche la plus fiable pour nettoyer les ressources TensorFlow, au prix du démarrage et de l'exécution d'un thread supplémentaire dédié à cette tâche. Chaque instance d' EagerSession possède son propre thread, qui n'est arrêté que lorsque la session est fermée.

Cette stratégie est utilisée par défaut.

public static final EagerSession.ResourceCleanupStrategy ON_SAFE_POINTS

Surveillez et supprimez les ressources inutilisées des threads existants, avant ou après avoir terminé une autre tâche.

Les ressources inutilisées sont libérées lorsqu'un appel à la bibliothèque TensorFlow atteint un point sûr pour le nettoyage. Cela se fait de manière synchrone et peut bloquer pendant une courte période le thread qui a déclenché cet appel.

Cette stratégie ne doit être utilisée que si, pour certaines raisons, aucun thread supplémentaire ne doit être alloué pour le nettoyage. Sinon, IN_BACKGROUND doit être préféré.

public static final EagerSession.ResourceCleanupStrategy ON_SESSION_CLOSE

Ne supprimez les ressources que lorsque la session est fermée.

Toutes les ressources allouées pendant la session resteront en mémoire jusqu'à ce que la session soit explicitement fermée (ou via la technique traditionnelle «try-with-resource»). Aucune tâche supplémentaire de nettoyage des ressources ne sera tentée.

Cette stratégie peut entraîner des erreurs de mémoire insuffisante et son utilisation n'est pas recommandée, à moins que la portée de la session ne soit limitée pour exécuter seulement un petit nombre d'opérations.