Skip to content

Commit 3ecb49e

Browse files
bump-llvm[bot]github-actions[bot]makslevental
authored
[LLVM] Bump to 75aa01b89 (#257)
Bump LLVM to llvm/llvm-project@75aa01b89 --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Maksim Levental <[email protected]>
1 parent c272020 commit 3ecb49e

File tree

3 files changed

+17
-17
lines changed

3 files changed

+17
-17
lines changed

projects/eudsl-python-extras/examples/cuda_matmul_opt.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -415,7 +415,7 @@ def sgemm_shared_mem_1d_block_tiling[
415415
inner_row_B = tid / BN
416416

417417
thread_results = memref.alloca((TM,), dtype)
418-
linalg.fill(0, thread_results)
418+
linalg.fill(0.0, thread_results)
419419

420420
for bk_idx in range_(0, K, BK):
421421
# Move blocktile to beginning of A's row and B's column
@@ -483,13 +483,13 @@ def sgemm_shared_mem_2d_block_tiling[
483483
stride_B = num_threads_blocktile // BN
484484

485485
thread_results = memref.alloca((TM, TN), dtype)
486-
linalg.fill(0, thread_results)
486+
linalg.fill(0.0, thread_results)
487487

488488
reg_M = memref.alloca((TM,), dtype)
489-
linalg.fill(0, reg_M)
489+
linalg.fill(0.0, reg_M)
490490

491491
reg_N = memref.alloca((TN,), dtype)
492-
linalg.fill(0, reg_N)
492+
linalg.fill(0.0, reg_N)
493493

494494
for bk_idx in range_(0, K, BK):
495495
A_ = A[c_row : c_row + BM, bk_idx : bk_idx + BK]
@@ -579,13 +579,13 @@ def sgemm_shared_mem_2d_block_tiling_vectorize[
579579
inner_row_B = tid / (BN // VECTOR_WIDTH)
580580

581581
thread_results = memref.alloca((TM, TN), dtype)
582-
linalg.fill(0, thread_results)
582+
linalg.fill(0.0, thread_results)
583583

584584
reg_M = memref.alloca((TM,), dtype)
585-
linalg.fill(0, reg_M)
585+
linalg.fill(0.0, reg_M)
586586

587587
reg_N = memref.alloca((TN,), dtype)
588-
linalg.fill(0, reg_N)
588+
linalg.fill(0.0, reg_N)
589589

590590
for bk_idx in range_(0, K, BK):
591591
A_ = A[c_row : c_row + BM, bk_idx : bk_idx + BK]
@@ -708,13 +708,13 @@ def sgemm_warp_tiling[
708708

709709
# allocate thread-local cache for results in registerfile
710710
thread_results = memref.alloca((WMITER * TM, WNITER * TN), dtype)
711-
linalg.fill(0, thread_results)
711+
linalg.fill(0.0, thread_results)
712712

713713
reg_M = memref.alloca((WMITER, TM), dtype)
714-
linalg.fill(0, reg_M)
714+
linalg.fill(0.0, reg_M)
715715

716716
reg_N = memref.alloca((WNITER, TN), dtype)
717-
linalg.fill(0, reg_N)
717+
linalg.fill(0.0, reg_N)
718718

719719
for bk_idx in range_(0, K, BK):
720720
A_ = A[c_row : c_row + BM, bk_idx : bk_idx + BK]

projects/eudsl-python-extras/tests/dialect/test_transform.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -702,7 +702,7 @@ def matmul_i8_i8(
702702
B: T.tensor(K, N, T.i8()),
703703
):
704704
empty = tensor.empty(M, N, T.i8())
705-
filled = linalg_dialect.fill(arith.constant(0), outs=[empty])
705+
filled = linalg_dialect.fill(arith.constant(0, type=T.i8()), outs=[empty])
706706
return linalg.matmul(A, B, filled)
707707

708708
@module(attrs={"transform.target_tag": StringAttr.get("payload")})
@@ -856,8 +856,8 @@ def main(variant_op: any_op_t()):
856856
module attributes {transform.target_tag = "payload"} {
857857
func.func @matmul_i8_i8(%arg0: tensor<16x256xi8>, %arg1: tensor<256x256xi8>) -> tensor<16x256xi8> {
858858
%0 = tensor.empty() : tensor<16x256xi8>
859-
%c0_i32 = arith.constant 0 : i32
860-
%1 = linalg.fill ins(%c0_i32 : i32) outs(%0 : tensor<16x256xi8>) -> tensor<16x256xi8>
859+
%c0_i8 = arith.constant 0 : i8
860+
%1 = linalg.fill ins(%c0_i8 : i8) outs(%0 : tensor<16x256xi8>) -> tensor<16x256xi8>
861861
%2 = linalg.matmul {cast = #linalg.type_fn<cast_signed>} ins(%arg0, %arg1 : tensor<16x256xi8>, tensor<256x256xi8>) outs(%1 : tensor<16x256xi8>) -> tensor<16x256xi8>
862862
return %2 : tensor<16x256xi8>
863863
}
@@ -924,7 +924,7 @@ def matmul_i8_i8(
924924
B: T.tensor(K, N, T.i8()),
925925
):
926926
empty = tensor.empty(M, N, T.i8())
927-
filled = linalg_dialect.fill(arith.constant(0), outs=[empty])
927+
filled = linalg_dialect.fill(arith.constant(0, type=T.i8()), outs=[empty])
928928
return linalg.matmul(A, B, filled)
929929

930930
@module(attrs={"transform.target_tag": StringAttr.get("payload")})
@@ -997,13 +997,13 @@ def main(variant_op: any_op_t()):
997997
module {
998998
module attributes {transform.target_tag = "payload"} {
999999
func.func @matmul_i8_i8(%arg0: tensor<16x256xi8>, %arg1: tensor<256x256xi8>) -> tensor<16x256xi8> {
1000-
%c0_i32 = arith.constant 0 : i32
1000+
%c0_i8 = arith.constant 0 : i8
10011001
%0 = tensor.empty() : tensor<16x256xi8>
10021002
%1 = tensor.empty() : tensor<1x4x16x64xi8>
10031003
%pack = linalg.pack %arg0 inner_dims_pos = [0, 1] inner_tiles = [16, 64] into %1 : tensor<16x256xi8> -> tensor<1x4x16x64xi8>
10041004
%2 = tensor.empty() : tensor<4x1x64x64xi8>
10051005
%3 = tensor.empty() : tensor<1x1x16x64xi8>
1006-
%4 = linalg.fill ins(%c0_i32 : i32) outs(%3 : tensor<1x1x16x64xi8>) -> tensor<1x1x16x64xi8>
1006+
%4 = linalg.fill ins(%c0_i8 : i8) outs(%3 : tensor<1x1x16x64xi8>) -> tensor<1x1x16x64xi8>
10071007
%5 = scf.forall (%arg2, %arg3) in (1, 4) shared_outs(%arg4 = %0) -> (tensor<16x256xi8>) {
10081008
%6 = affine.apply #map(%arg3)
10091009
%extracted_slice = tensor.extract_slice %arg1[0, %6] [256, 64] [1, 1] : tensor<256x256xi8> to tensor<256x64xi8>

third_party/llvm-project

Submodule llvm-project updated 44 files

0 commit comments

Comments
 (0)