Treten Sie der SIG TFX-Addons-Community bei und helfen Sie mit, TFX noch besser zu machen! SIG TFX-Addons beitreten
Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Tensorflow :: Portion:: LoaderHarness

#include <loader_harness.h>

LoaderHarness ist ein Widget, mit dem der Manager einen Loader festhält und mit ihm spricht, während er ihm gehört.

Zusammenfassung

Es verfolgt den Gesamtstatus eines Servables, sodass der Manager bestimmen kann, welche Statusübergänge zu welchen Zeiten vorgenommen werden sollen.

Eine Manager-Implementierung kann mit jedem Kabelbaum auch einen zusätzlichen Status hinzufügen. Beispielsweise könnte ein Manager hier ACL- oder Lebenszyklus-Metadaten einfügen. Das Eigentum wird durch das Geschirr aufrechterhalten.

Diese Klasse ist threadsicher.

Konstruktoren und Destruktoren

LoaderHarness (const ServableId & id, std::unique_ptr< Loader > loader, const Options & options)
LoaderHarness (const ServableId & id, std::unique_ptr< Loader > loader, std::unique_ptr< T > additional_state, const Options & options)
Konstruktor zum Erstellen eines Kabelbaums mit zusätzlichem Status, den ein Manager benötigt.
~LoaderHarness ()
Es ist zulässig, den aktuellen Status zu zerstören, wenn kNew, kDisabled oder kError ist.

Öffentliche Typen

State {
kNew ,
kLoadRequested ,
kLoadApproved ,
kLoading ,
kReady ,
kUnloadRequested ,
kQuiescing ,
kQuiesced ,
kUnloading ,
kDisabled ,
kError
}
Aufzählung
Status des zugrunde liegenden Servables aus Sicht des LoaderHarness und zum Zwecke der Kommunikation zwischen ihm und einem Manager .

Öffentliche Funktionen

DoneQuiescing ()
Status
Überträgt den Status in kQuiesced, was bedeutet, dass im Frontend keine Live-Handles mehr für dieses Servable verfügbar sind.
Error (const Status & status)
void
Überträgt den Status in kError und ruft 'options_.error_callback' auf.
Load ()
Status
Übergänge zu kLoading, Delegierungen zu Servable :: Load (), dann Übergänge entweder zu kReady, wenn Load () erfolgreich ist, oder zu kError (und Aufruf von 'options_'.
LoadApproved ()
Status
Übergänge zu kLoadApproved.
LoadRequested ()
Status
Überträgt den Status des Kabelbaums in kLoadRequested, wenn sein aktueller Status kNew ist.
StartQuiescing ()
Status
Überträgt den Status auf kQuiescing, was bedeutet, dass wir diesem Servable keine weiteren Handles mehr geben möchten.
Unload ()
Status
Übergänge zu kUnloading, Delegierungen zu Servable :: Unload () und Übergänge zu kDisabled, wenn Unload () abgeschlossen ist.
UnloadRequested ()
Status
Überträgt den Status des Kabelbaums in kUnloadRequested, wenn sein aktueller Status kReady ist.
additional_state ()
T *
Ruft den zusätzlichen Status ab.
cancel_load_retry ()
bool
id () const
ServableId
Gibt die Kennung des zugrunde liegenden Servable zurück.
loader () const
Gibt einen Zeiger auf den umschlossenen Loader zurück.
loader_state_snapshot ()
ServableStateSnapshot< T >
Gibt den aktuellen Gesamtstatus-Snapshot des zugrunde liegenden Servable zurück.
loader_state_snapshot () const
ServableStateSnapshot< std::nullptr_t >
set_cancel_load_retry (bool value)
void
Bricht den erneuten Versuch ab, die Last des zu wartenden Geräts zu wiederholen.
state ()
Gibt den aktuellen Status des zugrunde liegenden Servable zurück.
status ()
Status
Ob bei diesem Servable etwas schief gelaufen ist.

Öffentliche statische Funktionen

StateDebugString ( State state)
string

Strukturen

Tensorflow :: Serving :: LoaderHarness :: Options

Optionen zum Konfigurieren einer LoaderHarness .

Öffentliche Typen

Zustand

 State

Status des zugrunde liegenden Servables aus Sicht des LoaderHarness und zum Zwecke der Kommunikation zwischen ihm und einem Manager .

Nicht äquivalent zu den semantischen bedienbaren Zuständen in servable_state.h.

Gültige Übergänge: kNew> kLoading> kReady> kQuiescing> kQuiesced> kUnloading> kDisabled sowie: any_state> kError.

Eigenschaften
kDisabled

'loader _-> Unload () ' ist beendet.

kError

Ein Fehler ist entweder während 'loader _-> Load () ' oder außerhalb des Kabelbaums aufgetreten (und wurde dem Kabelbaum über einen Aufruf von Error () gemeldet).

kLoadApproved

Der Servable wurde zum Laden zugelassen, z

Ressourcen wurden dafür bereitgestellt.

kLoadRequested

Der Manager wurde aufgefordert, dieses Servable zu laden.

kLoading

'loader _-> Load () ' wurde aufgerufen.

kNew

Ausgangszustand.

kQuiesced

Das Servable wurde für das Servieren nicht verfügbar gemacht.

kQuiescing

Das Servable wird für das Servieren nicht verfügbar gemacht.

kReady

'loader _-> Load () ' ist erfolgreich.

kUnloadRequested

Der Manager wurde aufgefordert, dieses Servable zu entladen.

kUnloading

'loader _-> Unload () ' wurde aufgerufen.

Öffentliche Funktionen

DoneQuiescing

Status DoneQuiescing()

Überträgt den Status in kQuiesced, was bedeutet, dass im Frontend keine Live-Handles mehr für dieses Servable verfügbar sind.

Zu diesem Zeitpunkt können wir dieses Objekt entladen.

ERFORDERLICH: Der Status ist kQuiescing, wenn er aufgerufen wird. Andernfalls schlägt DCHECK-fehl, wechselt in den Status kError und ruft 'options_.error_callback' auf.

Error

void Error(
  const Status & status
)

Überträgt den Status in kError und ruft 'options_.error_callback' auf.

Belastung

Status Load()

Übergänge zu kLoading, Delegierungen zu Servable :: Load () und Übergänge entweder zu kReady, wenn Load () erfolgreich ist, oder zu kError (und Aufruf von 'options_'.

error_callback ') wenn Load () fehlschlägt. Dieser Anruf kann lange dauern.

Wir versuchen es erneut mit Servable :: Load () gemäß den Optionen, die während der Erstellung dieser Klasse festgelegt wurden. Wir hören auf, es erneut zu versuchen und geben auf, wenn 1. wir max_num_load_retries erreicht haben oder 2. wenn cancel_load () auf true gesetzt ist.

ERFORDERLICH: Der Status ist beim Aufruf kLoadApproved. Andernfalls schlägt DCHECK-fehl, wechselt in den Status kError und ruft 'options_.error_callback' auf.

LoadApproved

Status LoadApproved()

Übergänge zu kLoadApproved.

ERFORDERLICH: Der Status ist beim Aufruf kLoadRequested. Andernfalls schlägt DCHECK-fehl, wechselt in den Status kError und ruft 'options_.error_callback' auf.

LoadRequested

Status LoadRequested()

Überträgt den Status des Kabelbaums in kLoadRequested, wenn sein aktueller Status kNew ist.

Das Testen und Ändern erfolgt transaktional, sodass mit dieser Methode sichergestellt werden kann, dass höchstens eine Load () -Anforderung ausgeführt werden kann.

LoaderHarness

 LoaderHarness(
  const ServableId & id,
  std::unique_ptr< Loader > loader,
  const Options & options
)

LoaderHarness

 LoaderHarness(
  const ServableId & id,
  std::unique_ptr< Loader > loader,
  std::unique_ptr< T > additional_state,
  const Options & options
)

Konstruktor zum Erstellen eines Kabelbaums mit zusätzlichem Status, den ein Manager benötigt.

StartQuiescing

Status StartQuiescing()

Überträgt den Status auf kQuiescing, was bedeutet, dass wir diesem Servable keine weiteren Handles mehr geben möchten.

ERFORDERLICH: Der Status ist kUnloadRequested, wenn er aufgerufen wird. Andernfalls schlägt DCHECK-fehl, wechselt in den Status kError und ruft 'options_.error_callback' auf.

Entladen

Status Unload()

Übergänge zu kUnloading, Delegierungen zu Servable :: Unload () und Übergänge zu kDisabled, wenn Unload () abgeschlossen ist.

ERFORDERLICH: Der Status wird beim Aufruf kQuiesced. Andernfalls schlägt DCHECK-fehl, wechselt in den Status kError und ruft 'options_.error_callback' auf.

UnloadRequested

Status UnloadRequested()

Überträgt den Status des Kabelbaums in kUnloadRequested, wenn sein aktueller Status kReady ist.

Das Testen und Ändern erfolgt transaktional, sodass mit dieser Methode sichergestellt werden kann, dass höchstens eine Load () -Anforderung ausgeführt werden kann.

zusätzlicher_Zustand

T * additional_state()

Ruft den zusätzlichen Status ab.

Gibt nullptr zurück, wenn der Typ nicht übereinstimmt oder nicht festgelegt wurde.

cancel_load_retry

bool cancel_load_retry()

Ich würde

ServableId id() const 

Gibt die Kennung des zugrunde liegenden Servable zurück.

Lader

Loader * loader() const 

Gibt einen Zeiger auf den umschlossenen Loader zurück.

Das Eigentum bleibt bei dieser Klasse.

loader_state_snapshot

ServableStateSnapshot< T > loader_state_snapshot()

Gibt den aktuellen Gesamtstatus-Snapshot des zugrunde liegenden Servable zurück.

loader_state_snapshot

ServableStateSnapshot< std::nullptr_t > loader_state_snapshot() const 

set_cancel_load_retry

void set_cancel_load_retry(
  bool value
)

Bricht den erneuten Versuch ab, die Last des zu wartenden Geräts zu wiederholen.

Dies ist die beste Anstrengung und verhindert nicht, dass Load () bereits ausgeführt wird, sondern nur nachfolgende Aufrufe.

Wenn die Wiederholungsversuche abgebrochen werden, wechselt der Servable in einen Zustand, der von der zuletzt aufgerufenen Load () abhängt. Wenn das letzte Load () erfolgreich war, befindet es sich im Status kReady, andernfalls in kError.

Zustand

State state()

Gibt den aktuellen Status des zugrunde liegenden Servable zurück.

Status

Status status()

Ob bei diesem Servable etwas schief gelaufen ist.

Wenn der Status kError ist, ist dies nicht OK. Wenn dies nicht in Ordnung ist, kann der Fehler in einer Quelle oder einem SourceAdapter , im Loader , im Manager oder anderswo auftreten. Alle Fehler im Zusammenhang mit dem zu wartenden Gerät werden hier unabhängig von der Herkunft gemeldet.

~ LoaderHarness

 ~LoaderHarness()

Es ist zulässig, den aktuellen Status zu zerstören, wenn kNew, kDisabled oder kError ist.

Check-Fail bei Verletzung.

Öffentliche statische Funktionen

StateDebugString

string StateDebugString(
  State state
)