тензорный поток :: сервировка :: ServableStateMonitor

#include <servable_state_monitor.h>

Утилита, которая прослушивает EventBus <ServableState> и отслеживает состояние каждого обслуживаемого объекта, упомянутого на шине.

Резюме

Предназначен случай использования для отслеживания состояния servables в диспетчере .

Предлагает интерфейс для запроса доступных состояний. Может быть полезен как основа для дашбордов, а также для тестирования менеджера.

ВАЖНО: Вы должны создать этот монитор перед аранжировать для событий , которые будут опубликованы на автобусе событий, например , давая шину событий в диспетчере .

Конструкторы и деструкторы

ServableStateMonitor (EventBus< ServableState > *bus, const Options & options)
~ServableStateMonitor ()

Публичные типы

BoundedLog с использованием
std::deque< ServableStateAndTime >
NotifyFn с использованием
std::function< void(const ServableState &)>
ServableMap с использованием
std::map< ServableName, VersionMap >
ServableName с использованием
string
ServableSet с использованием
std::set< ServableName >
ServableStateNotifierFn с использованием
std::function< void(bool reached_goal_state, const std::map< ServableId, ServableState::ManagerState > &states_reached)>
Уведомляет, когда все обслуживаемые объекты достигли 'goal_state'.
Version с использованием
int64
VersionMap с использованием
std::map< Version, ServableStateAndTime, std::greater< Version >>

Публичные функции

ForgetUnloadedServableStates ()
void
Удаляет все обслуживаемые версии из ServableMap, состояния которых перешли в kEnd.
GetAllServableStates ()
ServableMap
Возвращает текущие состояния всех отслеживаемых версий всех обслуживаемых объектов.
GetAvailableServableStates ()
ServableSet
GetBoundedLog ()
BoundedLog
Возвращает текущий ограниченный журнал обработанных событий обслуживаемого состояния.
GetLiveServableStates ()
ServableMap
Возвращает текущие состояния всех версий всех обслуживаемых объектов, которые не перешли в состояние ServableState :: ManagerState :: kEnd.
GetState (const ServableId & servable_id)
optional< ServableState >
Возвращает текущее состояние одного обслуживаемого объекта или nullopt, если этот обслуживаемый объект не отслеживается.
GetStateAndTime (const ServableId & servable_id)
optional< ServableStateAndTime >
Возвращает текущее состояние и время одного обслуживаемого объекта или nullopt, если этот обслуживаемый объект не отслеживается.
GetVersionStates (const string & servable_name)
VersionMap
Возвращает текущие состояния всех отслеживаемых версий указанного обслуживаемого объекта, если таковые имеются.
Notify (const NotifyFn & notify_fn)
void
NotifyWhenServablesReachState (const std::vector< ServableRequest > & servables, ServableState::ManagerState goal_state, const ServableStateNotifierFn & notifier_fn)
void
WaitUntilServablesReachState (const std::vector< ServableRequest > & servables, ServableState::ManagerState goal_state, std::map< ServableId, ServableState::ManagerState > *states_reached) TF_MUST_USE_RESULT
bool
Подобно NotifyWhenServablesReachState (...), но вместо уведомления мы ждем, пока не будет достигнуто 'goal_state' или kEnd.

Структуры

tensorflow :: служит :: ServableStateMonitor :: Варианты
tensorflow :: служит :: ServableStateMonitor :: ServableStateAndTime

Публичные типы

BoundedLog

std::deque< ServableStateAndTime > BoundedLog

NotifyFn

std::function< void(const ServableState &)> NotifyFn

ServableMap

std::map< ServableName, VersionMap > ServableMap

ServableName

string ServableName

ServableSet

std::set< ServableName > ServableSet

ServableStateNotifierFn

std::function< void(bool reached_goal_state, const std::map< ServableId, ServableState::ManagerState > &states_reached)> ServableStateNotifierFn

Уведомляет, когда все обслуживаемые объекты достигли 'goal_state'.

Servables можно указать двумя способами:

  1. Как конкретные версии имени обслуживаемого потока. В этом случае мы проверяем, достигла ли конкретная версия "goal_state" или kEnd.
  2. В качестве последних версий, и в этом случае любая версия для имени обслуживаемого потока будет сопоставляться с 'goal_state' или kEnd.

Мы вызываем notifier_fn, когда выполняются оба условия -

  1. Все конкретные обслуживаемые запросы достигли значения 'goal_state' или kEnd.
  2. Все последние обслуживаемые запросы достигли target_state или kEnd. Notifier_fn будет вызываться только один раз, а не повторно.

Аргумент «достигнутое_цели_состояния» устанавливается как истина, если и только если все конкретные сервабельные объекты достигли «состояния_цели». Таким образом, вызывающие абоненты должны проверить, что «selected_goal_state» истинно в «notifier_fn».

Аргумент 'States_reached' заполняется идентификатором обслуживаемого объекта и состоянием, которого он достиг. Состояние будет 'goal_state', если 'completed_goal_state' истинно, иначе оно будет содержать один или несколько обслуживаемых объектов в состоянии kEnd. Для последних обслуживаемых запросов обслуживаемый идентификатор будет идентификатором обслуживаемого в потоке, достигшего состояния.

Версия

int64 Version

VersionMap

std::map< Version, ServableStateAndTime, std::greater< Version >> VersionMap

Публичные функции

ForgetUnloadedServableStates

void ForgetUnloadedServableStates()

Удаляет все обслуживаемые версии из ServableMap, состояния которых перешли в kEnd.

GetAllServableStates

ServableMap GetAllServableStates()

Возвращает текущие состояния всех отслеживаемых версий всех обслуживаемых объектов.

GetAvailableServableStates

ServableSet GetAvailableServableStates()

GetBoundedLog

BoundedLog GetBoundedLog()

Возвращает текущий ограниченный журнал обработанных событий обслуживаемого состояния.

GetLiveServableStates

ServableMap GetLiveServableStates()

Возвращает текущие состояния всех версий всех обслуживаемых объектов, которые не перешли в состояние ServableState :: ManagerState :: kEnd.

GetState

optional< ServableState > GetState(
  const ServableId & servable_id
)

Возвращает текущее состояние одного обслуживаемого объекта или nullopt, если этот обслуживаемый объект не отслеживается.

GetStateAndTime

optional< ServableStateAndTime > GetStateAndTime(
  const ServableId & servable_id
)

Возвращает текущее состояние и время одного обслуживаемого объекта или nullopt, если этот обслуживаемый объект не отслеживается.

GetVersionStates

VersionMap GetVersionStates(
  const string & servable_name
)

Возвращает текущие состояния всех отслеживаемых версий указанного обслуживаемого объекта, если таковые имеются.

Уведомлять

void Notify(
  const NotifyFn & notify_fn
)

NotifyWhenServablesReachState

void NotifyWhenServablesReachState(
  const std::vector< ServableRequest > & servables,
  ServableState::ManagerState goal_state,
  const ServableStateNotifierFn & notifier_fn
)

ServableStateMonitor

 ServableStateMonitor(
  EventBus< ServableState > *bus,
  const Options & options
)

WaitUntilServablesReachState

bool WaitUntilServablesReachState(
  const std::vector< ServableRequest > & servables,
  ServableState::ManagerState goal_state,
  std::map< ServableId, ServableState::ManagerState > *states_reached
) TF_MUST_USE_RESULT

Подобно NotifyWhenServablesReachState (...), но вместо уведомления мы ждем, пока не будет достигнуто 'goal_state' или kEnd.

Чтобы понять возвращаемое значение и параметр возврата «states_reached», прочтите документацию по NotifyWhenServablesReachState (...).

~ ServableStateMonitor

virtual  ~ServableStateMonitor()