EagerSession.ResourceCleanupStrategy

enumeración final estática pública EagerSession.ResourceCleanupStrategy

Controla cómo se limpian los recursos de TensorFlow cuando ya no se necesitan.

Todos los recursos asignados durante una EagerSession se eliminan cuando se cierra la sesión. Para evitar errores de memoria insuficiente, también se recomienda encarecidamente limpiar esos recursos durante la sesión. Por ejemplo, la ejecución de n operaciones en un ciclo de m iteraciones asignará un mínimo de n * m recursos, mientras que en la mayoría de los casos, solo se siguen utilizando los recursos de la última iteración.

EagerSession instancias de EagerSession se pueden notificar de diferentes maneras cuando los objetos de TensorFlow ya no se hacen referencia, para que puedan proceder a la limpieza de los recursos que posean.

Métodos heredados

int final
comparar con (E arg0)
En t
compareTo (Objeto arg0)
booleano final
es igual a (Objeto arg0)
Clase final <E>
getDeclaringClass ()
int final
hashCode ()
cadena final
nombre ()
int final
ordinal ()
Cuerda
toString ()
estática <T extiende Enum <T>> T
valueOf (Clase <T> arg0, String arg1)
booleano
es igual a (Objeto arg0)
Clase final <?>
getClass ()
En t
hashCode ()
vacío final
notificar ()
vacío final
notificar a todos ()
Cuerda
toString ()
vacío final
esperar (largo arg0, int arg1)
vacío final
espera (largo arg0)
vacío final
esperar ()
int abstracto
compareTo (E extiende Enum <E> arg0)

Valores de enumeración

public static final EagerSession.ResourceCleanupStrategy IN_BACKGROUND

Supervise y elimine los recursos no utilizados de un nuevo hilo que se ejecuta en segundo plano.

Este es el enfoque más confiable para limpiar los recursos de TensorFlow, a costa de iniciar y ejecutar un hilo adicional dedicado a esta tarea. Cada instancia de EagerSession tiene su propio hilo, que se detiene solo cuando se cierra la sesión.

Esta estrategia se utiliza de forma predeterminada.

public static final EagerSession.ResourceCleanupStrategy ON_SAFE_POINTS

Supervise y elimine los recursos no utilizados de los subprocesos existentes, antes o después de que completen otra tarea.

Los recursos no utilizados se liberan cuando una llamada a la biblioteca de TensorFlow llega a un punto seguro para la limpieza. Esto se hace de forma sincrónica y puede bloquear durante un corto período de tiempo el hilo que desencadenó esa llamada.

Esta estrategia debe usarse solo si, por alguna razón, no se debe asignar ningún subproceso adicional para la limpieza. De lo contrario, debería preferirse IN_BACKGROUND .

public static final EagerSession.ResourceCleanupStrategy ON_SESSION_CLOSE

Solo elimine recursos cuando la sesión esté cerrada.

Todos los recursos asignados durante la sesión permanecerán en la memoria hasta que la sesión se cierre explícitamente (o mediante la técnica tradicional `try-with-resource`). No se intentará ninguna tarea adicional para la limpieza de recursos.

Esta estrategia puede dar lugar a errores de memoria insuficiente y no se recomienda su uso, a menos que el alcance de la sesión se limite a ejecutar solo una pequeña cantidad de operaciones.