For the complete documentation index, see llms.txt. Markdown versions of all pages are available by appending .md to any URL (e.g. /max/get-started.md).
Mojo function
build_double_buffer_program
def build_double_buffer_program(body: LoopBody, order: List[Int], config: PipelineConfig, sched: ScheduleConfig = ScheduleConfig(scheduling=SchedulingStrategy.IDENTITY, sched_barrier_mask=Int(85), auto_waits=True, drain_lgkm_mask=Int(0), auto_drain=False, lds_contention_penalty=Int(0), wait_lgkm_first=Int(8), wait_vm_last=Int(6), lgkm_per_load_a=Int(0), lgkm_per_load_b=Int(0), lgkm_after_last=False, minimal_barriers=False, omit_mma_set_prio=False, max_vgpr=Int(999999), global_before_frag=False, barrier_before_pre_ops=False, inter_block_lgkm_drain=False, partial_prologue_drain=False, wrap_waits_with_sched_barrier=False)) -> PipelineProgram
Build PipelineProgram from LDG ops in the given execution order.
Two-phase construction:
- Group ops into MMA-centered blocks with structural flags.
- Redistribute global loads for uniform distribution.
Returns:
Was this page helpful?
Thank you! We'll create more content like this.
Thank you for helping us improve!