tensorflow ::サービング::ソース
これは抽象クラスです。#include <source.h>
ロードするサーバブルを調達する、またはより正確には、それらのサーバブルをロードするために使用できるデータを処理するモジュールの抽象化。
概要
このようなデータハンドルの例は次のとおりです。
Aソースは新しいservablesおよび/またはservablesの新バージョンおよび/またはサービス提供可能なバージョンをアンロードする必要性について調べるために、いくつかの外部リソース(例えば、ファイルシステム、RPCコール)を監視します。これは、ターゲット・モジュール(例えば、指示するために設けられてコールバックを使用しAspiredVersionsManager負荷に)バージョン(S)指定されたサービス提供可能にします。さらに、ターゲットモジュールのセマンティクスに応じて、ソースは、暗黙的にこれらのservablesを省略してアンロードするものを、それを指示します。
一般的なケースは、ということであるソースは正確に一つのサービス提供可能なためバージョンを発します。さらに単純なケースは、サーバブルがサーバーの存続期間中、単一の静的バージョンを持っている場合です。
ソースは、複数の放出されたサーバブル間で共有される状態を格納できます。
- 複数のサーバブルが使用する共有スレッドプールまたはその他のリソース。
- 各servableインスタンスでデータ構造を複製する時間とスペースのオーバーヘッドを回避するために、複数のservableが使用する共有の読み取り専用データ構造。初期化の時間とサイズがごくわずかな共有状態(スレッドプールなど)は、ソースによって熱心に作成できます。ソースは、出力された各ServableDataアイテムにそのポインターを埋め込みます。高価または大型の共有状態の作成は、最初の適用を延期しなければならないローダ::ロード()マネージャーによって管理呼び出し、すなわち。対称的には、ローダ::アンロード()高価/大容量の共有状態を使用して、最終的なサービス提供可能なへの呼び出しは、それを取り壊す必要があります。
コンストラクタとデストラクタ | |
---|---|
~Source () |
パブリックタイプ | |
---|---|
AspiredVersionsCallback | を使用してstd::function< void(const StringPiece servable_name, std::vector< ServableData< T >> versions)> コールバックのためのソースターゲットに配信可能なの供給バージョン(複数可)には、ロードされます。 |
公の行事 | |
---|---|
SetAspiredVersionsCallback ( AspiredVersionsCallback callback)=0 | virtual void 使用するAspiredVersionsCallbackを提供します。せいぜい一度だけ呼び出すことができます。 |
パブリックタイプ
AspiredVersionsCallback
std::function< void(const StringPiece servable_name, std::vector< ServableData< T >> versions)> AspiredVersionsCallback
コールバックのためのソースターゲットに配信可能なの供給バージョン(複数可)には、ロードされます。
コールバックの1回の呼び出しは、単一のservableストリーム( 'servable_name'で指定)に関係します。呼び出しで提供されるすべてのバージョンは、「servable_name」で識別されるservable用である必要があります。異なるサービス可能なストリームでの呼び出しは、互いに直交しています。
複数の呼び出しにより、同じID(つまり、同じサービス可能な名前とバージョン)を持つservable-dataオブジェクトが提供される場合があります。このようなservable-dataオブジェクトは、意味的に同等として扱われます。受信者は最終的に1つを保持し、残りを破棄します。
サーブ可能なバージョンVが最初の呼び出しで提供され、その後2番目の呼び出しから省略された場合、Vを省略した場合の意味は、コールバックのターゲットのセマンティクスによって異なります。特定のターゲットは、Vの省略を、Vをアンロードするための暗黙の命令として解釈します。各ターゲットは、この点でそのセマンティクスを文書化する必要があります。
公の行事
SetAspiredVersionsCallback
virtual void SetAspiredVersionsCallback( AspiredVersionsCallback callback )=0
使用するAspiredVersionsCallbackを提供します。せいぜい一度だけ呼び出すことができます。
〜出典
virtual ~Source()=default