Lines Matching full:mmt4d
12 /// End-to-end test for computing matrix-multiplication using linalg.mmt4d. In
13 /// particular, demonstrates how the following MLIR sequence (implemented in @mmt4d):
18 /// out_pack = linalg.mmt4d(A_pack, B_pack, C_pack)
45 // Matrix multiplication via linalg.mmt4d
54 %C_mmt4d = func.call @mmt4d(%A, %B, %C) : (tensor<7x16xi32>, tensor<16x13xi32>, tensor<7x13xi32>) -> tensor<7x13xi32>
81 func.func private @mmt4d(%A: tensor<7x16xi32>, %B: tensor<16x13xi32>, %C: tensor<7x13xi32>) -> tensor<7x13xi32> {
93 // MMT4D
94 %mmt4d = linalg.mmt4d ins(%A_pack, %B_pack : tensor<2x16x8x1xi32>, tensor<2x16x8x1xi32>) outs(%C_pack : tensor<2x2x8x8xi32>) -> tensor<2x2x8x8xi32>
98 %C_out_unpack = tensor.unpack %mmt4d outer_dims_perm = [0, 1] inner_dims_pos = [0, 1] inner_tiles = [8, 8] into %C_out_empty : tensor<2x2x8x8xi32> -> tensor<7x13xi32>
105 %mmt4d = transform.collect_matching @match_mmt4d in %module : (!transform.any_op) -> (!transform.any_op)
106 %func = transform.get_parent_op %mmt4d {isolated_from_above} : (!transform.any_op) -> !transform.op<"func.func">
110 %tiled_linalg_op_p, %loops:4 = transform.structured.tile_using_for %mmt4d tile_sizes [1, 1, 0, 8, 8, 0]
121 // Generates a 6-dim vector.contract with the dim matching the original MMT4D Op
168 transform.match.operation_name %entry ["linalg.mmt4d"] : !transform.any_op