Yun-Fly
9bc3102bea
[mlir][scf] Extend consumer fusion to multiple tilable users (#111955)
Before, consumer fusion expects single usage(or others are terminator
op). This patch supports multiple tilable consumers fusion.
E.g.
```
%0 = scf.for {
...
%p = tiledProducer
...
}
%1 = tilableConsumer1 ins(%0 : ...)
%2 = tilableConsumer2 ins(%0 : ...)
```
===>
```
%0:3 = scf.for {
...
%p = tiledProducer
%1 = tiledConsumer1 ins(%p : ...)
%2 = tiledConsumer2 ins(%p : ...)
...
}
```
The key process is ensuring that the first user of loop
should not dominate any define of consumer operand(s).
2024-11-06 10:03:23 +08:00
..
2024-10-11 21:59:05 +08:00
2024-10-25 11:44:20 -07:00
2024-11-01 23:58:16 +03:00
2024-11-06 10:03:23 +08:00
2024-11-01 08:42:12 -07:00
2024-10-25 07:21:59 -07:00
2023-09-01 20:53:08 -07:00
2024-04-19 15:58:27 +02:00
2024-01-03 20:37:20 -08:00
2024-10-23 07:29:17 -07:00
2022-06-13 20:37:44 +00:00