Skip to main content

Module kernel_config

Module kernel_config 

Source
Expand description

Compile-time kernel-config tables (plan #14).

Borrowed from MAX’s internal_utils/nvidia_configs.mojo / amd_configs.mojo pattern: tile sizes, kernel-selection thresholds, etc. as compile-time data structures kernels query instead of scattered match-arms.

Today the values live as consts here and are surfaced through kernel_config_for. The goal is one source of truth — when we want to tune for a new arch (M5 Apple Silicon, x86 Zen5, etc.) we add a row to the table, not a new match arm in 12 files.

Structs§

KernelConfig
Settings the dispatch logic asks for. All in elements unless noted otherwise.

Enums§

CpuArch
Coarse target classification — refined as new SoCs emerge.
OpClass
Op category that a kernel config is keyed against. Coarse — refines as we learn which thresholds actually want per-shape tuning.

Functions§

current_config
Convenience: defaults for the running target.
kernel_config_for
Look up the canonical kernel config for (arch, op_class). The table is const-evaluated so callers pay no lookup cost.