[Mlir-commits] [mlir] [mlir][mesh] Add collective communication operations (PR #71960)
Chengji Yao
llvmlistbot at llvm.org
Wed Nov 15 09:56:28 PST 2023
================
@@ -0,0 +1,72 @@
+// RUN: mlir-opt --canonicalize %s | FileCheck %s
+
+mesh.cluster @mesh0(rank = 2, dim_sizes = [2, 4])
+
+// CHECK-LABEL: func @all_reduce_mesh_axes
+func.func @all_reduce_mesh_axes(
+ %arg0 : tensor<4xf32>) -> tensor<4xf64> {
+// CHECK: mesh_axes = array<i16: 0, 1>
+ %0 = mesh.all_reduce %arg0 {
+ mesh = @mesh0, mesh_axes = array<i16: 1, 0, 0>, reduction = #mesh.partial<sum>
+ } : tensor<4xf32> -> tensor<4xf64>
+ return %0 : tensor<4xf64>
+}
+
+// CHECK-LABEL: func @all_reduce_empty_mesh_axes_and_default_reduction
----------------
yaochengji wrote:
I think so. We can opt out all the ccl ops when it's empty except all_reduce/reduce_scatter's input and output dtypes are different.
https://github.com/llvm/llvm-project/pull/71960
More information about the Mlir-commits
mailing list