Commit d2e0fdd
authored
[LLVMGPU][DT] Add MaterializeDeviceEncodingPass to LLVMGPU passes behind flag (#19849)
This PR adds the `MaterializeDeviceEncodingPass` to LLVMGPU/Passes.cpp
behind a new flag `iree-llvmgpu-experimental-data-tiling`. The flag's
default value is false, because the codegen for data tiling ops on GPU
is not yet working and performant for all cases. Some of the work is in
flight, but it will likely take some time before data tiling codegen is
ready to be flipped on by default. For now, the flag allows developers
to enable the late materialization codegen path on LLVMGPU.
To effectively use the late materialization path for data-tiling fusion,
some additional non-default flags need to be set:
- `--iree-opt-data-tiling=false` (to turn off the early materialization
data tiling path)
- `--iree-dispatch-creation-experimental-data-tiling=true` (to turn on
the late materialization data tiling path)
- `--iree-dispatch-creation-pad-factor=128` (the current default is
based on CPU materialization)
This PR also includes a small fix to the ROCDLKernelConfig logic for
selecting the root op when there are pack/unpack ops in the dispatch.
The fix avoids selecting pack and unpack ops as root ops if possible.
---------
Signed-off-by: Max Dawkins <[email protected]>1 parent 5492301 commit d2e0fdd
File tree
4 files changed
+52
-1
lines changed- compiler/src/iree/compiler/Codegen/LLVMGPU
- test
4 files changed
+52
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
77 | 83 | | |
78 | 84 | | |
79 | 85 | | |
| |||
1165 | 1171 | | |
1166 | 1172 | | |
1167 | 1173 | | |
| 1174 | + | |
| 1175 | + | |
| 1176 | + | |
| 1177 | + | |
| 1178 | + | |
1168 | 1179 | | |
1169 | 1180 | | |
1170 | 1181 | | |
1171 | 1182 | | |
1172 | | - | |
1173 | 1183 | | |
1174 | 1184 | | |
1175 | 1185 | | |
| |||
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| 38 | + | |
38 | 39 | | |
39 | 40 | | |
40 | 41 | | |
| |||
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
34 | 35 | | |
35 | 36 | | |
36 | 37 | | |
| |||
Lines changed: 39 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
0 commit comments