MLIRについて基礎を学んだところで、実際に動かしてみたい。以下のページを読みながら少しチュートリアルを触ってみよう。
https://mlir.llvm.org/getting_started/
ビルドのためのリポジトリはLLVMのものと同じで良いらしい。
git clone https://github.com/llvm/llvm-project.git mkdir llvm-project/build cd llvm-project/build cmake -G Ninja ../llvm \ -DLLVM_ENABLE_PROJECTS=mlir \ -DLLVM_BUILD_EXAMPLES=ON \ -DLLVM_TARGETS_TO_BUILD="X86;NVPTX;AMDGPU" \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_ENABLE_ASSERTIONS=ON \ # -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DLLVM_ENABLE_LLD=ON cmake --build . --target check-mlir
ターゲットとしてはX86
, NVPTX
, AMDGPU
としており、 Releaseビルドで実行している。Releaseなのでさして時間はかからない。放っておけば終了する。
ビルドディレクトリに生成されたのは以下のファイルだ。toy
のファイルがいくつか含まれているな。これを見ながら勉強しろ、ということなんだろうか。
$ ls -1 build/bin FileCheck count llvm-lit llvm-tblgen mlir-cpu-runner mlir-edsc-builder-api-test mlir-opt mlir-sdbm-api-test mlir-tblgen mlir-translate not toyc-ch1 toyc-ch2 toyc-ch3 toyc-ch4 toyc-ch5 toyc-ch6 toyc-ch7