Управляет очисткой ресурсов TensorFlow, когда они больше не нужны.
Все ресурсы, выделенные во время EagerSession
, удаляются при закрытии сеанса. Чтобы предотвратить ошибки нехватки памяти, также настоятельно рекомендуется очищать эти ресурсы во время сеанса. Например, выполнение n операций в цикле из m итераций выделит минимум n*m ресурсов, тогда как в большинстве случаев по-прежнему используются только ресурсы последней итерации.
Экземпляры EagerSession
могут быть уведомлены разными способами, когда объекты TensorFlow больше не используются, чтобы они могли приступить к очистке любых принадлежащих им ресурсов.
Унаследованные методы
окончательный интервал | сравнить с (E arg0) |
интервал | сравнитьTo (Объект arg0) |
последнее логическое значение | равно (Объект arg0) |
последний класс<E> | getDeclaringClass () |
окончательный интервал | хэш-код () |
последняя строка | имя () |
окончательный интервал | порядковый номер () |
Нить | нанизывать () |
статический <T расширяет Enum<T>> T | valueOf (Класс<T> arg0, String arg1) |
логическое значение | равно (Объект arg0) |
последний класс<?> | получитьКласс () |
интервал | хэш-код () |
окончательная пустота | поставить в известность () |
окончательная пустота | уведомитьВсе () |
Нить | нанизывать () |
окончательная пустота | подождать (длинный arg0, int arg1) |
окончательная пустота | подождите (длинный arg0) |
окончательная пустота | ждать () |
абстрактный int | CompareTo (E расширяет Enum<E> arg0) |
Перечисляемые значения
общедоступный статический финал EagerSession.ResourceCleanupStrategy IN_BACKGROUND
Отслеживайте и удаляйте неиспользуемые ресурсы из нового потока, работающего в фоновом режиме.
Это наиболее надежный подход к очистке ресурсов TensorFlow за счет запуска и выполнения дополнительного потока, предназначенного для этой задачи. Каждый экземпляр EagerSession
имеет собственный поток, который останавливается только при закрытии сеанса.
Эта стратегия используется по умолчанию.
общедоступный статический окончательный EagerSession.ResourceCleanupStrategy ON_SAFE_POINTS
Отслеживайте и удаляйте неиспользуемые ресурсы из существующих потоков до или после того, как они завершат другую задачу.
Неиспользуемые ресурсы освобождаются, когда вызов библиотеки TensorFlow достигает безопасной точки для очистки. Это делается синхронно и может на короткое время заблокировать поток, инициировавший этот вызов.
Эту стратегию следует использовать только в том случае, если по каким-либо причинам не требуется выделять дополнительный поток для очистки. В противном случае предпочтение следует отдать IN_BACKGROUND
.
общедоступный статический финал EagerSession.ResourceCleanupStrategy ON_SESSION_CLOSE
Удаляйте ресурсы только при закрытии сеанса.
Все ресурсы, выделенные во время сеанса, останутся в памяти до тех пор, пока сеанс не будет явно закрыт (или с помощью традиционной техники «попробуй с ресурсом»). Никакие дополнительные задачи по очистке ресурсов выполняться не будут.
Эта стратегия может привести к ошибкам нехватки памяти, и ее использование не рекомендуется, если только объем сеанса не ограничен выполнением лишь небольшого количества операций.