このページは Cloud Translation API によって翻訳されました。
Switch to English

MLIR方言

概観

異なるハードウェアとソフトウェアのターゲットを分離するために、MLIRには次のような「方言」があります。

  • TensorFlow IRは、TensorFlowグラフで可能なすべてのものを表します。
  • XLA HLOIR。XLAのコンパイル機能(特にTPUへの出力)を利用するように設計されています。
  • 多面体表現と最適化に焦点を当てた実験的なアフィン方言。
  • LLVM IRは、LLVM自身の表現と1:1でマッピングされており、MLIRがLLVMを介してGPUおよびCPUコードを発行できるようにします。
  • TensorFlow Liteは、モバイルプラットフォームでの実行コードに変換されます。

各方言は、「これは2項演算子であり、入力と出力は同じ型です。

MLIRへの追加

MLIRには、世界的に知られている操作の固定/組み込みリストはありません(「組み込み」はありません)。方言は完全にカスタムタイプを定義できます。これは、MLIRがLLVM IRタイプシステム(ファーストクラスの集約を持つ)、量子化タイプなどのML最適化アクセラレータにとって重要なドメイン抽象化、さらにはSwiftまたはClangタイプシステム(これはSwift / Clang宣言ノードを中心に構築されています)。

新しい低レベルのコンパイラを接続する場合は、新しい方言を作成し、TensorFlow Graph方言と方言の間の低下を作成します。これにより、ハードウェアメーカーとコンパイラメーカーのパスがスムーズになります。同じモデルの異なるレベルで方言をターゲットにすることもできます。上位レベルのオプティマイザは、IRのなじみのない部分を尊重し、下位レベルがそれを処理するのを待ちます。