本頁面由 Cloud Translation API 翻譯而成。
Switch to English

MLIR

總覽

MLIR或多級中間表示形式是編譯器實用程序的表示形式格式和庫,位於模型表示形式和生成特定於硬件的代碼的低級編譯器/執行程序之間。

MLIR本質上是用於現代優化編譯器的靈活基礎架構。這意味著它由中間表示形式(IR)規範和在該表示形式上執行轉換的代碼工具包組成。 (用編譯器的話來說,當您從高級表示轉換為低級表示時,這些轉換可以稱為“降低”)

MLIR受LLVM的影響很大,並且毫不掩飾地重用了它的許多好主意。它具有靈活的類型系統,並允許在同一編譯單元中結合多個抽象級別來表示,分析和轉換圖形。這些抽象包括TensorFlow操作,嵌套的多面循環區域,甚至LLVM指令以及固定的硬件操作和類型。

我們希望MLIR將引起許多團體的關注,其中包括:

  • 希望優化機器學習模型的性能和內存消耗的編譯器研究人員和實施者
  • 硬件製造商正在尋找一種將其硬件連接到TensorFlow的方法,例如TPU,手機中的便攜式神經硬件以及其他定制ASIC。
  • 人們在編寫語言綁定時希望利用優化編譯器和硬件加速的優勢。

TensorFlow生態系統包含許多在軟件和硬件堆棧的多個級別上運行的編譯器和優化器。我們希望逐步採用MLIR可以簡化此堆棧的各個方面。

MLIR概述圖