[Mlir-commits] [mlir] [mlir][gpu] Improve `gpu-lower-to-nvvm-pipeline` Documentation (PR #77062)

Mehdi Amini llvmlistbot at llvm.org
Fri Jan 5 02:10:18 PST 2024


================
@@ -60,6 +60,38 @@ mlir-translate example-nvvm.mlir        \
   -o example.ll
 ```
 
+### Default NVVM Compilation Pipeline: gpu-lower-to-nvvm-pipeline
+
+The `gpu-lower-to-nvvm-pipeline` compilation pipeline serves as the default way for NVVM target compilation within MLIR. This pipeline operates by lowering primary dialects (arith, linalg, memref, scf, vector, gpu, and nvgpu) to NVVM target. It begins by lowering GPU code region(s) to the specified NVVM compilation target and subsequently handles the host code.
+
+This pipeline specifically requires explicitly parallel IR and doesn't do GPU parallelization. For example, it supports linalg but it gets translated into sequential loops. To incorporate parallelism, necessary transformations must be applied before utilizing this pipeline.
+
+It's designed to provide a generic solution for NVVM targets, generating NVVM and LLVM dialect code compatible with `mlir-cpu-runner` or execution engine.
----------------
joker-eph wrote:

Can you wrap this? `mdformat -wrap 80` should do.

https://github.com/llvm/llvm-project/pull/77062


More information about the Mlir-commits mailing list