Skip to main content

admits_tp

Function admits_tp 

Source
pub fn admits_tp(spec: &ModelSpec, tp: usize) -> Result<(), TpRefusal>
Expand description

★ A TENSOR-PARALLEL WIDTH IS A FACT ABOUT THE MODEL AS MUCH AS THE CHIPS. Megatron splits attention and the Gated DeltaNet BY HEAD and the FFN and the vocabulary by column, so tp must divide the query heads, both GDN head counts, the FFN width and the vocabulary; the KV heads either split across the chips or replicate over them evenly (kv % tp == 0 or tp % kv == 0). Any other width is refused by the serving stack before a weight loads — vLLM: “Total number of attention heads (24) must be divisible by tensor parallel size (16)”. The widths the author does not yet split a layer over — a latent attention, an expert mixture, an attention with biases or sinks — are refused by its own name for what is missing (author::check_tp).