Ostrzeżenie: ten interfejs API jest przestarzały i zostanie usunięty w przyszłej wersji TensorFlow, gdy zamiennik będzie stabilny.

EagerSession.ResourceCleanupStrategy

public static final enum EagerSession.ResourceCleanupStrategy

Kontroluje sposób czyszczenia zasobów TensorFlow, gdy nie są już potrzebne.

Wszystkie zasoby przydzielone podczas EagerSession są usuwane po zamknięciu sesji. Aby zapobiec błędom braku pamięci, zdecydowanie zaleca się wyczyszczenie tych zasobów podczas sesji. Na przykład wykonanie n operacji w pętli iteracji przydzieli minimum n*m zasobów, podczas gdy w większości przypadków nadal używane są tylko zasoby z ostatniej iteracji.

EagerSession przypadki mogą być zgłaszane w różny sposób, gdy obiekty TensorFlow nie są już mowa, mogą więc przystąpić do czyszczenia wszelkich posiadanych zasobów oni.

Metody odziedziczone

Wyliczenie wartości

public static final EagerSession.ResourceCleanupStrategy IN_BACKGROUND

Monitoruj i usuwaj nieużywane zasoby z nowego wątku działającego w tle.

Jest to najbardziej niezawodne podejście do czyszczenia zasobów TensorFlow, kosztem uruchomienia i uruchomienia dodatkowego wątku dedykowanego do tego zadania. Każdy EagerSession instancja ma swój własny wątek, który jest zatrzymywany tylko wtedy, gdy sesja jest zamknięta.

Ta strategia jest używana domyślnie.

public static final EagerSession.ResourceCleanupStrategy ON_SAFE_POINTS

Monitoruj i usuwaj nieużywane zasoby z istniejących wątków przed lub po zakończeniu innego zadania.

Niewykorzystane zasoby są zwalniane, gdy wywołanie biblioteki TensorFlow osiągnie bezpieczny punkt do oczyszczenia. Odbywa się to synchronicznie i może blokować na krótki czas wątek, który wyzwolił to wywołanie.

Ta strategia powinna być używana tylko wtedy, gdy z pewnych powodów nie należy przydzielać dodatkowego wątku do czyszczenia. W przeciwnym razie, IN_BACKGROUND powinny być preferowane.

public static final EagerSession.ResourceCleanupStrategy ON_SESSION_CLOSE

Usuwaj zasoby tylko wtedy, gdy sesja jest zamknięta.

Wszystkie zasoby przydzielone podczas sesji pozostaną w pamięci, dopóki sesja nie zostanie jawnie zamknięta (lub za pomocą tradycyjnej techniki „try-with-resource”). Nie zostanie podjęta żadna dodatkowa próba czyszczenia zasobów.

Ta strategia może prowadzić do błędów braku pamięci i jej użycie nie jest zalecane, chyba że zakres sesji jest ograniczony do wykonania tylko niewielkiej liczby operacji.