Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
tensorflow
GitHub Repository: tensorflow/docs-l10n
Path: blob/master/site/ja/mlir/dialects.md
25115 views

MLIR 方言

概要

さまざまなハードウェアやソフトウェアのターゲットを区別するために、MLIR には、次のような「方言」が含まれています。

  • TensorFlow IR: TensorFlow グラフで可能なことすべてを代表する方言です。

  • XLA HLO IR: XLA のコンパイル機能(特に TPU への出力)を利用するように設計されています。

  • 実験的なアフィン方言: 多面体表現と最適化に焦点が当てられています。

  • LLVM IR: LLVM と LLVM 独自表現が 1 対 1 でマッピングされているため、MLIR は LLVM を介して GPU や CPU コードを発行できます。

  • TensorFlow Lite: モバイルプラットフォームの実行コードに変換します。

各方言は、「これは二項演算子であり、入力と出力の型が同じです」のように、不変式が配置された一連の定義済み演算で構成されています。

MLIR に追加する

MLIR には、グローバルに知られている演算の固定/組み込みリストはありません(「組み込み」はありません)。方言は、完全にカスタムの型を定義できるため、MLIR は、LLVM IR 型システム(第一次集計を持つ)や、量子化型などの ML 最適化アクセラレータで重要なドメインの抽象化、さらに、将来的には Swift や Clang 型システム(Swift/Clang 宣言ノード周りに構築されるシステム)などをモデル化することができます。

新しい低レベルコンパイラを接続する場合は、新しい方言を作成し、TensorFlow Graph 方言と作成した方言間の低下を作成すると良いでしょう。これにより、ハードウェアとコンパイラメーカーのパスが円滑化されます。また、同じモデルで異なるレベルの方言をターゲットすることもできます。より高いレベルのオプティマイザは IR の未知の部分を尊重するため、より低いレベルによって処理されるのを待機します。