「TensorFlow XLA」の版間の差分
ナビゲーションに移動
検索に移動
(ページの作成:「'''XLA''' (Accelerated Linear Algebra)とは、TensorFlow 1.0に実験搭載された中間コードコンパイラである。 == 概要 == 旧来のTensorFlowで...」) |
(→概要) |
||
2行目: | 2行目: | ||
== 概要 == | == 概要 == | ||
− | 旧来の[[TensorFlow]]では実行環境の[[CPU]]や[[GPU]]を変更するたびに常に最速で動くよう[[ソースコード]] | + | 旧来の[[TensorFlow]]では実行環境の[[CPU]]や[[GPU]]を変更するたびに常に最速で動くよう[[ソースコード]]からリビルドするのが普通であった。このため「TensorFlowの環境をCPU版で作ってみたが遅すぎるのでGPU版を[[インストール]]しなおした」などという馬鹿げたことをやっていた。 |
− | + | XLAの登場によりこのような手間が全自動化([[JITコンパイル]])される。ほとんどの環境ではXLA自体によるパフォーマンスの大きな変化は見られないが、実行環境のPC構成を変えた際に大きく手間が省かれる。 | |
== 利点 == | == 利点 == |
2017年6月10日 (土) 04:19時点における最新版
XLA (Accelerated Linear Algebra)とは、TensorFlow 1.0に実験搭載された中間コードコンパイラである。
概要[編集 | ソースを編集]
旧来のTensorFlowでは実行環境のCPUやGPUを変更するたびに常に最速で動くようソースコードからリビルドするのが普通であった。このため「TensorFlowの環境をCPU版で作ってみたが遅すぎるのでGPU版をインストールしなおした」などという馬鹿げたことをやっていた。
XLAの登場によりこのような手間が全自動化(JITコンパイル)される。ほとんどの環境ではXLA自体によるパフォーマンスの大きな変化は見られないが、実行環境のPC構成を変えた際に大きく手間が省かれる。
利点[編集 | ソースを編集]
実行速度の改善[編集 | ソースを編集]
従来はプログラマの書いたものが素直に実行されているが、将来的にはXLAに最適化が搭載される予定となっている。 なお、現状ではほとんどの環境でXLA自体によるパフォーマンスの大きな変化は見られない。
現状で影響が大きいのはXLAのJITコンパイル機構により実行環境を変えた際の手間が大きく省かれる点である。従来は実行環境のSSEやAVX、GPUの有無などにあわせTensorFlowをソースコードからリビルドしていたが、そんな馬鹿げた作業がなくなった。そのためMacやUbuntuなどではTensorFlowのパッケージを入れれば環境構築完了となる。
メモリ使用量の改善[編集 | ソースを編集]
メモリ使用量を監視して最適化する機構がついたらしい。 とくに変化は見られない。
移植性の向上[編集 | ソースを編集]
一部のアルゴリズムでは特定のハードウェアに依存した命令を使って記述されたものがあったが、それらを排除する目的もあるらしい。かつてOpenGLがやらかした依存命令の排除である。
その他[編集 | ソースを編集]
公式サイトを見よう。