• Lei Wang's avatar
    [Bugfix] Do not force inline let stmt (#947) · f8ae600c
    Lei Wang authored
    * remove debug print
    
    * Remove inline let expressions from the LowerAndLegalize function in phase.py
    
    * add test
    
    * Update sparse MLA examples to support SKV adjustment and correctness checks
    
    - Changed SKV parameter from 32768 to 8192 in sparse MLA backward and forward tests.
    - Added check_correctness parameter to test functions for validation of outputs.
    - Updated test cases to reflect new SKV values and correctness checks.
    
    * reduce test shape
    
    * Update documentation structure and refactor main function parameters in example_fusedmoe_tilelang.py
    
    - Added a new section for compiler internals in the documentation.
    - Refactored the main function in example_fusedmoe_tilelang.py to accept parameters for hidden dimensions, expert configurations, and batch/sequence sizes, improving flexibility and readability.
    
    * Update buffer access checks in merge_shared_memory_allocations.cc
    
    - Changed the condition for buffer access from less than (<) to less than or equal to (<=) to allow access at the same scope level.
    - Adjusted the logic for determining the access level when touching buffers to ensure correct handling of scope levels.
    
    * lint fix
    
    * Support pipeline with LetStmt
    
    * lint fix
    
    * • Fix LowerTileOp let handling to avoid LetInline dependency
    
      - inline let-bound BufferLoad nodes via resolver helpers and structured return
      - remap layouts/buffers using original data vars and only rewrite when needed
      - update pipeline planner to understand let-bound address_of buffers
      - document the new inline behaviour in docs/let_inline_fix.md
    
    * fix for wgmma pipeline with let binding
    
    * lint fix
    
    * test fix
    
    * reduce smem usage.
    
    * let binding enhancement
    
    * fix for dpgm
    
    * fix simplify
    
    * lint fix
    
    * use tilelang.Simplify instead of tir.Simplify
    
    * • Add TL_FORCE_LET_INLINE pass config and gate eager LetInline usage
    
      - register the new config in builtin headers/registration
      - add helper to pipeline enabling LetInline based on pass context
      - document LetStmt inlining controls and usage
    f8ae600c
multi_version_buffer_rewriter.cc 16.5 KB