| Fix some bugs and add FuseBatchMatMul pass.
| 20 天前 |
| Fix some bugs and add FuseBatchMatMul pass.
| 20 天前 |
| refactor(mfusion): move RmsNorm fusion to Torch dialect pipeline
Move RmsNorm fusion from Mfuse Fusion to Torch Fusion before convert-torch-to-mfuse, so decomposed Torch RmsNorm chains can be fused earlier and lowered consistently. Remove legacy Mfuse-side FuseRmsNorm pass and adapt LIT/Python tests to Torch-side fusion semantics.
| 20 天前 |
| feat(mfusion): fuse decomposed BN to aclnn.batch_norm and conv-bn fold
Add mfuse.aclnn.batch_norm, FuseBatchNorm (--fuse-batch-norm) and
FuseConvBatchNorm passes; extend Torch<->Mfuse conversion and lit
coverage for BN and convolution paths.
| 20 天前 |
| feat(mfusion): fuse decomposed BN to aclnn.batch_norm and conv-bn fold
Add mfuse.aclnn.batch_norm, FuseBatchNorm (--fuse-batch-norm) and
FuseConvBatchNorm passes; extend Torch<->Mfuse conversion and lit
coverage for BN and convolution paths.
| 20 天前 |
| feat(mfusion): fuse decomposed BN to aclnn.batch_norm and conv-bn fold
Add mfuse.aclnn.batch_norm, FuseBatchNorm (--fuse-batch-norm) and
FuseConvBatchNorm passes; extend Torch<->Mfuse conversion and lit
coverage for BN and convolution paths.
| 20 天前 |
| feat(mfusion): fuse decomposed BN to aclnn.batch_norm and conv-bn fold
Add mfuse.aclnn.batch_norm, FuseBatchNorm (--fuse-batch-norm) and
FuseConvBatchNorm passes; extend Torch<->Mfuse conversion and lit
coverage for BN and convolution paths.
| 20 天前 |
| Add layernorm fusion pass
| 20 天前 |
| Add some fusion passes.
| 20 天前 |
| Fuse numtotensor and cast or single numtotensor to full
| 20 天前 |
| Add constant mfusetotorch converter
| 20 天前 |
| Add constant mfusetotorch converter
| 20 天前 |
| Refine cast/reduce_sum/broadcast_to meta op interfaces
- Remove the dtype argument from cast meta op and rely on contextual type inference.
- Remove the dtype attribute from reduce_sum meta op to unify type handling.
- Remove the shape parameter from broadcast_to meta op and add interface-level shape validation.
| 20 天前 |
| Add InferSymbolicShape interface and reshape by result type
- Introduce InferSymbolicShapeInterface for ops to infer symbolic result
dimensions from builder/state/result type.
- Change Mfuse ReshapeOp to take only input tensor; output shape is encoded
in result type (semi-static: at most one dynamic dim). ReshapeOp implements
the interface and uses SymbolicBuilderHelper in its builder.
- TorchToMfuse: lower aten.reshape and aten.view to mfuse.reshape(result_type, input);
remove PDLL ConvertAtenReshape.
- MfuseToTorch: derive view shape from reshape result type (static dims as
constants, dynamic as -1).
- Update MatMul fusion passes and tests for the new single-operand reshape.
| 20 天前 |
| Fix some bugs and add FuseBatchMatMul pass.
| 20 天前 |
| rename muse dialect to mfuse
| 20 天前 |
| fix(mfusion): PermuteOp loses symbolic shape encoding on dynamic tensors
When creating PermuteOp with dynamic-shape input, the output tensor
was missing symshape encoding, triggering VerifySymbolicShapeTrait:
'mfuse.permute' op failed symbolic shape verification
Implement InferSymbolicShapeInterface for PermuteOp so that symshape
encoding is automatically inferred from input + perm attribute at
construction time via SymbolicBuilderHelper. Add
SymbolAttrUtils::permuteSymbolicShapeExprs utility and two dynamic-shape
lit test cases.
| 20 天前 |
| fix(mfusion): PermuteOp loses symbolic shape encoding on dynamic tensors
When creating PermuteOp with dynamic-shape input, the output tensor
was missing symshape encoding, triggering VerifySymbolicShapeTrait:
'mfuse.permute' op failed symbolic shape verification
Implement InferSymbolicShapeInterface for PermuteOp so that symshape
encoding is automatically inferred from input + perm attribute at
construction time via SymbolicBuilderHelper. Add
SymbolAttrUtils::permuteSymbolicShapeExprs utility and two dynamic-shape
lit test cases.
| 20 天前 |
| rename muse dialect to mfuse
| 20 天前 |
| feat(mfusion): canonicalize noop broadcast/reshape.
| 20 天前 |
| Remove typepromote for bin ops
| 20 天前 |
| feat(mfusion): canonicalize permute chains and commute cast past permute.
| 20 天前 |
| feat(mfusion): canonicalize permute chains and commute cast past permute.
| 20 天前 |
| fix(mfusion): PermuteOp loses symbolic shape encoding on dynamic tensors
When creating PermuteOp with dynamic-shape input, the output tensor
was missing symshape encoding, triggering VerifySymbolicShapeTrait:
'mfuse.permute' op failed symbolic shape verification
Implement InferSymbolicShapeInterface for PermuteOp so that symshape
encoding is automatically inferred from input + perm attribute at
construction time via SymbolicBuilderHelper. Add
SymbolAttrUtils::permuteSymbolicShapeExprs utility and two dynamic-shape
lit test cases.
| 20 天前 |
| refactor(fusion): canonicalize reciprocal-sqrt and simplify rmsnorm matching.
| 20 天前 |
| Add reshape canonicalize
| 20 天前 |
| refactor(fusion): canonicalize reciprocal-sqrt and simplify rmsnorm matching.
| 20 天前 |
| Add FuseRoPE pass.
| 20 天前 |