TensorFlowに新しいハードウェアを追加していますが、デバイスコンテキストに問題があります。TensorFlowデバイスコンテキスト
コードから目的を理解するだけで、コンピューティンググラフ内のノードのデバイスとデータを管理するように見えます。すなわち、データの入力データと出力のためのデバイスは、Device Contextで指定され、Executorはこれらのデバイス間でTensorsを前後に渡します。すべてのOpKernelContextには、指定されたカーネルの特定の実行を管理するDevice Contextが含まれているように見えます。
現在、私の新しいハードウェアでは、デバイスコンテキストはすべて最終的にセグメンテーションの原因となるnullです。既存のC++のスタイルでは、特定のデバイスタイプ(つまり、GPU、CPU)のデバイスコンテキストを「登録」できるマクロがあると思いますが、これらを見つけることはできません。私の質問は、デバイス用に作成されたOpKernelContextに適切なDevice Contextを追加する方法です。
私は自分のハードウェアに固有のデバイスコンテキストクラスを作成していないことに注意してください。 ThreadPoolDeviceに固有のDeviceContext実装がないようです。これは、基本クラスのDeviceContextがThreadPools用に実装されているためです。
私はDeviceContextについてどんな説明もあります。 2つの目的が
ありがとうございました!だから私は、まずTo-doリストでDeviceContextsにその "不透明なハンドル"を作成することだと思います。あなたが探しているものの詳細を私に教えれば、それに取り掛かることができます。あなたはGitの問題や私が作業を開始することができます何かを開始することができます。 –
https://github.com/tensorflow/tensorflow/issues/4359 – vrv
「register_gpu_gpu_copy」はどこで定義され使用されていますか?私はTensorFlowのどこにもそれを見つけることができません。私はそれが何らかの種類のマクロであると想定していますが、それに一致するようなマクロは見つかりません。正規表現のグロッピングはあまり与えるものではない –