Closed zasdfgbnm closed 1 year ago
This pass helps View, Transpose, Welford, and Matmul. It does simplification like:
(a * 8 + 7) / 32 --> (a * 8) / 32 (a * 8 + 7) % 32 --> (a * 8) % 32 + 7
For the above example, other passes can further simplify the expr as:
(a * 8) / 32 --> a / 4 (a * 8) % 32 + 7 --> (a % 4) * 8 + 7
Example kernel diff:
FusionReshapeConcreteDomain3_CUDA
FusionScheduleTransposeSimple_CUDA
FusionTranslate1Welford_CUDA
FusionAmpereMatmul_CUDA
FIXME: in https://www.diffchecker.com/0rILZnqM/, why i17526 / i3683 is not simplified?
i17526 / i3683
This pass helps View, Transpose, Welford, and Matmul. It does simplification like:
For the above example, other passes can further simplify the expr as:
Example kernel diff:
FusionReshapeConcreteDomain3_CUDA
: https://www.diffchecker.com/0rILZnqM/FusionScheduleTransposeSimple_CUDA
: https://www.diffchecker.com/tAWiPHIN/FusionTranslate1Welford_CUDA
: https://www.diffchecker.com/WK00RBaP/FusionAmpereMatmul_CUDA
: https://www.diffchecker.com/YjJ990h1/