[PATCH] D137923: [X86][AMX] Fix the shape dependency issue.

LuoYuanke via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 15 00:42:12 PST 2022


LuoYuanke added a comment.

In D137923#3926372 <https://reviews.llvm.org/D137923#3926372>, @xiangzhangllvm wrote:

>   static __inline__ void __tile_dpbsud(__tile1024i *dst, __tile1024i src0,
>                                        __tile1024i src1) {
>     short m = src0.row;
>     short n = src1.col;
>     short k = src0.col;
>     func_use(m, n, k, ...);  // set it as a scheduler boundary and emit nothing for this special variable parameter func. ?
>     dst->tile = _tile_dpbsud_internal(m, n, k, dst->tile,
>                                       src0.tile, src1.tile);
>   }

I did an experiment on your proposal. The result is the same to memory barrier. It can't prevent reordering for shape load and tile load.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D137923/new/

https://reviews.llvm.org/D137923



More information about the llvm-commits mailing list