이 페이지는 Cloud Translation API를 통해 번역되었습니다.
Switch to English

MLIR 방언

개요

다른 하드웨어 및 소프트웨어 대상을 분리하기 위해 MLIR에는 다음과 같은 "방언"이 있습니다.

  • TensorFlow 그래프에서 가능한 모든 것을 나타내는 TensorFlow IR.
  • XLA의 컴파일 기능 (특히 TPU에 대한 출력 포함)을 활용하도록 설계된 XLA HLO IR.
  • 다면체 표현 과 최적화에 초점을 맞춘 실험적인 아핀 방언.
  • LLVM IR은 LLVM 자체 표현과 1 : 1 매핑을 가지고있어 MLIR이 LLVM을 통해 GPU 및 CPU 코드를 내보낼 수 있도록합니다.
  • TensorFlow Lite는 모바일 플랫폼에서 코드를 실행하는 것으로 변환됩니다.

각 방언은 "이것은 이항 연산자이며 입력과 출력은 동일한 유형을가집니다."와 같이 불변이 배치 된 정의 된 연산 집합으로 구성됩니다.

MLIR에 추가

MLIR에는 전 세계적으로 알려진 작업의 고정 / 내장 목록이 없습니다 ( "내재"없음). 방언은 완전히 사용자 정의 유형을 정의 할 수 있습니다. 이는 MLIR이 LLVM IR 유형 시스템 (일급 집계 포함), 양자화 된 유형과 같은 ML 최적화 가속기에 중요한 도메인 추상화, 심지어 Swift 또는 Clang 유형 시스템 ( Swift / Clang 선언 노드를 중심으로 구축 됨).

새로운 저수준 컴파일러를 연결하려면 새로운 방언을 만들고 TensorFlow Graph 방언과 방언 사이를 낮추면됩니다. 이것은 하드웨어 및 컴파일러 제작자의 경로를 매끄럽게합니다. 동일한 모델에서 다양한 수준의 방언을 타겟팅 할 수도 있습니다. 상위 수준의 최적화 프로그램은 IR의 익숙하지 않은 부분을 존중하고 하위 수준에서 처리 할 때까지 기다립니다.