Commit 734d9f2
authored
[PIPELINER] Implement a loop nest fusion pass (#5550)
This PR adds a `FusedNestedLoopsPass` that analyzes loop nests in the
problem and attempts to fuse them into a single loop. This pass is meant
to work together with the pipeliner to enable pipelining loop nests
without manual fusion on the user's part. Eventually, the logic in this
pass will get spliced into the pipeliner, which will allow fusion and
pipelining of data-dependent inner loop bounds.
The pass is currently written to generate IR amenable to the pipeliner,
but is not currently turned on. It will be placed right before the loop
scheduling pass.1 parent d8ae341 commit 734d9f2
File tree
5 files changed
+1266
-14
lines changed- include/triton/Dialect/TritonGPU/Transforms
- lib
- Conversion/TritonGPUToLLVM
- Dialect/TritonGPU/Transforms
- test/TritonGPU
5 files changed
+1266
-14
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
58 | 74 | | |
59 | 75 | | |
60 | 76 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
| 4 | + | |
9 | 5 | | |
10 | | - | |
11 | | - | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
12 | 13 | | |
13 | | - | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
14 | 17 | | |
15 | 18 | | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | 19 | | |
21 | | - | |
22 | | - | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
5 | 6 | | |
6 | 7 | | |
7 | 8 | | |
| |||
0 commit comments