EagerSession.ResourceCleanupStrategy

enumerazione finale statica pubblica EagerSession.ResourceCleanupStrategy

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

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

Le istanze EagerSession possono essere avvisate in diversi modi quando gli oggetti TensorFlow non vengono più indirizzati, in modo che possano procedere alla pulizia di tutte le risorse di loro proprietà.

Metodi ereditati

Valori di enumerazione

pubblico statico finale 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 istanza EagerSession ha il proprio thread, che viene interrotto solo quando la sessione viene chiusa.

Questa strategia viene utilizzata per impostazione predefinita.

pubblico statico finale EagerSession.ResourceCleanupStrategy ON_SAFE_POINTS

Monitora ed elimina le risorse inutilizzate dai thread esistenti, prima o dopo aver completato un'altra attività.

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

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

pubblico statico finale 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.