Avviso: questa API è obsoleta e verrà rimossa in una versione futura di TensorFlow dopo che la sostituzione sarà stabile.

EagerSession.ResourceCleanupStrategy

public static EagerSession.ResourceCleanupStrategy enum finale

Controlla il modo in cui le risorse TensorFlow vengono ripulite quando non sono più necessarie.

Tutte le risorse assegnate nel corso di un EagerSession vengono eliminati quando la sessione viene chiusa. Per evitare errori di memoria esaurita, si consiglia inoltre vivamente di ripulire tali risorse durante la sessione. Ad esempio, l'esecuzione di n operazioni in un ciclo di m iterazioni allocherà un minimo di n*m risorse, mentre nella maggior parte dei casi vengono ancora utilizzate solo le risorse dell'ultima iterazione.

EagerSession istanze possono essere comunicati in modo diverso quando gli oggetti tensorflow non sono più di cui, in modo che possano procedere alla pulizia di tutte le risorse in loro possesso.

Metodi ereditati

Enumera valori

public static final EagerSession.ResourceCleanupStrategy IN_BACKGROUND

Monitora ed elimina le risorse inutilizzate da un nuovo thread in esecuzione in background.

Questo è l'approccio più affidabile per pulire le risorse TensorFlow, al costo di avviare ed eseguire un thread aggiuntivo dedicato a questa attività. Ogni EagerSession esempio ha il suo filo, che viene arrestata solo quando la sessione viene chiusa.

Questa strategia viene utilizzata per impostazione predefinita.

public static final EagerSession.ResourceCleanupStrategy ON_SAFE_POINTS

Monitora ed elimina le risorse inutilizzate dai thread esistenti, prima o dopo il completamento di un'altra attività.

Le risorse inutilizzate vengono rilasciate quando una chiamata alla libreria TensorFlow raggiunge un punto sicuro per la pulizia. Questa operazione viene eseguita in modo sincrono e potrebbe bloccare per un breve periodo di tempo il thread che ha attivato quella chiamata.

Questa strategia deve essere utilizzata solo se, per qualche motivo, non deve essere allocato alcun thread aggiuntivo per la pulizia. Altrimenti, IN_BACKGROUND dovrebbe essere preferito.

public static final EagerSession.ResourceCleanupStrategy ON_SESSION_CLOSE

Elimina le risorse solo quando la sessione è chiusa.

Tutte le risorse allocate durante la sessione rimarranno in memoria fino alla chiusura esplicita della sessione (o tramite la tradizionale tecnica `try-with-resource`). Non verrà tentata alcuna attività aggiuntiva per la pulizia delle risorse.

Questa strategia può portare a errori di memoria insufficiente e il suo utilizzo non è consigliato, a meno che l'ambito della sessione non sia limitato all'esecuzione solo di una piccola quantità di operazioni.