Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

MLIR

Gambaran

MLIR, atau Multi-Level Intermediate Representation, adalah format representasi dan pustaka utilitas kompilator yang berada di antara representasi model dan kompiler / pelaksana tingkat rendah yang menghasilkan kode khusus perangkat keras.

Pada intinya, MLIR adalah infrastruktur fleksibel untuk penyusun pengoptimalan modern. Artinya, ini terdiri dari spesifikasi untuk representasi menengah (IR) dan perangkat kode untuk melakukan transformasi pada representasi itu. (Dalam bahasa compiler, saat Anda berpindah dari representasi tingkat yang lebih tinggi ke representasi tingkat yang lebih rendah, transformasi ini dapat disebut "penurunan")

MLIR sangat dipengaruhi oleh LLVM dan tanpa malu-malu menggunakan kembali banyak ide hebat darinya. Ini memiliki sistem tipe yang fleksibel, dan memungkinkan representasi, analisis, dan transformasi grafik yang menggabungkan beberapa level abstraksi dalam unit kompilasi yang sama. Abstraksi ini mencakup operasi TensorFlow, daerah loop polihedral bertingkat, dan bahkan instruksi LLVM serta operasi dan jenis hardware tetap.

Kami berharap MLIR menjadi minat banyak kelompok, termasuk:

  • Peneliti dan pelaksana kompiler yang ingin mengoptimalkan performa dan konsumsi memori model pembelajaran mesin
  • Pembuat hardware mencari cara untuk menghubungkan hardware mereka ke TensorFlow, seperti TPU, hardware neural portabel di ponsel, dan ASIC kustom lainnya
  • Orang yang menulis pengikatan bahasa yang ingin memanfaatkan pengoptimalan kompiler dan akselerasi hardware.

Ekosistem TensorFlow berisi sejumlah compiler dan pengoptimal yang beroperasi di berbagai level tumpukan software dan hardware. Kami mengharapkan adopsi MLIR secara bertahap untuk menyederhanakan setiap aspek tumpukan ini.

Diagram ikhtisar MLIR