[Mlir-commits] [mlir] [mlir][nvgpu] update commit group and wait async ops (PR #130482)
lonely eagle
llvmlistbot at llvm.org
Thu Mar 13 19:46:51 PDT 2025
================
@@ -291,13 +287,22 @@ def NVGPU_DeviceAsyncWaitOp : NVGPU_Op<"device_async_wait", []> {
Example:
```mlir
- nvgpu.device_async_wait %0
+ // copy 1.
+ %cp1 = nvgpu.device_async_copy %A[%c0], %B[%c0], 4 :memref<16xf32> to memref<16xf32, 3>
+ nvgpu.device_async_create_group %cp1
+ // copy 2.
+ %cp2 = nvgpu.device_async_copy %C[%c0], %D[%c0], 4 : memref<16xf32> to memref<16xf32, 3>
+ nvgpu.device_async_create_group %cp2
+ // copy 3.
+ %cp3 = nvgpu.device_async_copy %E[%c0], %F[%c0], 4 : memref<16xf32> to memref<16xf32, 3>
+ nvgpu.device_async_create_group %cp3
+ // after the wait copy 1 and copy 2 are complete.
+ nvgpu.device_async_wait {numGroups = 1 : i32}
```
}];
- let arguments = (ins NVGPU_DeviceAsyncToken:$asyncDependencies,
- OptionalAttr<I32Attr>:$numGroups);
+ let arguments = (ins OptionalAttr<I32Attr>:$numGroups);
let assemblyFormat = [{
- $asyncDependencies attr-dict
+ attr-dict
----------------
linuxlonelyeagle wrote:
Sorry, I'm not exactly sure what you mean, I can only guess your intention based on the documentation (first time using prop-attr, it seems pretty good.
https://github.com/llvm/llvm-project/pull/130482
More information about the Mlir-commits
mailing list