web-dev-qa-db-ja.com

TensorFlowにEigenが選ばれたのはなぜですか?

TensorFlowホワイトペーパーでは、Eigenが使用されていると記載されています。 Eigenがどのように選択されたかについての一般的な説明はありますか?それらはTensorFlow C++ opカーネルでEigenを使用する動機ですか?

15
Noah Smith

Eigenを最初に使用した主な機能の1つは、Eigenが独自に高度に最適化された行列積カーネルを備えているのに対し、他のすべての競合製品は一部のBLASライブラリにリンクする必要があるためです。さらに、Eigenの製品カーネルのコードはC++であり、低レベルの内部カーネルに簡単にアクセスできるため、ニーズに合わせて調整および拡張するのは簡単でした。このようにして、Googleは純粋なヘッダーのみの方法で高いCPUパフォーマンスを備えたTensorモジュールを開発することができました。 CUDAのサポートとSyCLを介したOpenCLのサポートは後で登場しました。これらは、最初の選択を促進したEigenの固有の機能ではありません。

14
ggael