IMPORTANT: To view this page as Markdown, append `.md` to the URL (e.g. /max/get-started.md). For the complete documentation index, see llms.txt.
Skip to main content
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 module

strategies

Strategy structs that group related ScheduleConfig flags.

ScheduleConfig's flat field list grew to ~20 flags as new emission shapes landed. Many of those flags are tightly correlated (e.g. you never set omit_mma_set_prio=True without also setting minimal_barriers=True); grouping them into named strategy structs documents the relationships and reduces the constructor's argument count at the call site.

These structs are an opt-in alternative to the flat-field ScheduleConfig constructor; existing callers passing flat kwargs continue to work unchanged. Use via:

var sc = ScheduleConfig.from_strategies(
    barrier=BarrierStrategy.minimal_no_set_prio(
        sched_barrier_mask=0xFF,
        wrap_waits=True,
    ),
    wait=WaitStrategy.auto_with_inter_block_drain(),
    load=LoadStrategy.default(),
    scheduling=SchedulingStrategy.IDENTITY,
)

Strategy methods named default() return the framework's default (ping-pong) behaviour β€” passing only scheduling to from_strategies reproduces ScheduleConfig() exactly.

Structs​