pub fn fp8_act_quant_hopper_reject(
requested: bool,
twin_present: bool,
parent_present: bool,
m: u32,
k: u32,
sm_count: u32,
) -> Option<&'static str>Expand description
Why the twin is NOT running — None means it is.
Pure, so the grammar is gradeable without a GPU or the process environment, and it NAMES the guard that refused: a perf path that asks to be enabled and silently is not measures as “no effect”.
parent_present is LOAD-BEARING and not defensive padding. A rejection
hands the launch to Fp8ActQuant::shared, so with no parent to hand it to
there is nothing to decline TO and the twin runs — which is exactly the
pair native_fp8_act_quant_hopper_microtest builds to force each arm at
every M it measures (shared: KernelHandle(0)). Without this branch the
microtest’s Hopper arm would launch handle 0 at the six small-M arms whose
numbers opened this lever.
It is tested ABOVE the lever as well as above the floor, deliberately: an
operator’s ATLAS_FP8_ACT_QUANT_HOPPER=0 means “prefer the parent”, and on
a pair that has none it must not come to mean “launch nothing”.