tilelang.engine.phase ===================== .. py:module:: tilelang.engine.phase Functions --------- .. autoapisummary:: tilelang.engine.phase.allow_warp_specialized tilelang.engine.phase.allow_tma_and_warp_specialized tilelang.engine.phase.allow_fence_proxy tilelang.engine.phase.allow_vectorize tilelang.engine.phase.allow_global_thread_synchronization tilelang.engine.phase.should_enable_aggressive_merge tilelang.engine.phase.should_force_let_inline tilelang.engine.phase.should_enable_layout_visual tilelang.engine.phase.get_layout_visual_formats tilelang.engine.phase.LayoutVisual tilelang.engine.phase.PreLowerSemanticCheck tilelang.engine.phase.LowerAndLegalize tilelang.engine.phase.OptimizeForTarget Module Contents --------------- .. py:function:: allow_warp_specialized(pass_ctx = None, target = None) .. py:function:: allow_tma_and_warp_specialized(pass_ctx = None, target = None) .. py:function:: allow_fence_proxy(target = None) .. py:function:: allow_vectorize(pass_ctx = None) .. py:function:: allow_global_thread_synchronization(pass_ctx = None) .. py:function:: should_enable_aggressive_merge(pass_ctx = None, target = None) .. py:function:: should_force_let_inline(pass_ctx = None) .. py:function:: should_enable_layout_visual(pass_ctx = None) .. py:function:: get_layout_visual_formats(pass_ctx = None) .. py:function:: LayoutVisual(mod) Apply layout visualization pass if enabled. .. py:function:: PreLowerSemanticCheck(mod) Check whether the module is valid before lowering. If not, raise a user-friendly error in Python side instead of letting the error dive into the complicated TVM/C++ stack. Note: This is a validation-only pipeline of passes and does not modify or return the module. .. py:function:: LowerAndLegalize(mod, target) Bind target information and progressively legalize and lower frontend Tile IR into a form suitable for downstream optimization and codegen. This pass pipeline: - Binds the provided target to the module. - Legalizes frontend Tile IR into TVM-compatible constructs. - Simplifies expressions. - Configures reducer layouts and performs layout inference for fragments and shared memory. - Lowers high-level tile operations and L2 persistent maps. - Legalizes vectorized loops and inserts safety checks for memory accesses. - Re-simplifies to remove redundancies introduced by safety checks. - Attempts loop vectorization for dynamic-shaped loops. :param mod: The input IR module containing frontend Tile IR. :type mod: IRModule :param target: Target device information to bind into the module. :type target: Target :returns: The transformed module, ready for target-specific optimization passes. :rtype: IRModule .. py:function:: OptimizeForTarget(mod, target)