You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
LFM3-1.7B on the XPU backend (Intel GPUs, Iris Xe first) #1666
Serve LFM3-1.7B (text, MLX affine 4-bit, group 64) on the XPU backend, so the Intel GPU path has a model that fits small machines. The first target is an Iris Xe laptop (Gen12LP, no DPAS, 16 GB shared RAM). Nemotron 3.5 Lightning 30B-A3B, the only model XPU serves today, does not fit there.
Scope
A new family modulefamilies/lfm3/xpu_*.zig:
the gated short convolution (conv state per stream);
GQA attention with QK norm;
the SwiGLU MLP;
tied embeddings.
Kernels:
existing kernels are reused where they fit: qmv4, attn and glue;
one new OpenCL C kernel for the short convolution, plain sub-group code with no DPAS, so Gen12LP and Xe2 both build it.
Thanks @jschmied. A model that fits an Iris Xe laptop is a good next step for XPU.
The plan and order are right. Kernels with synthetic-weight contract checks first, then the forward against FP64 layer
by layer, then serve and the recipe table. Reusing qmv4, attn and glue where they fit, and one plain sub-group
kernel for the short convolution, is fine.
It stacks on #1513, still a draft, so that decides when it can land. Greedy tokens against CUDA and Metal are a useful
check. Please report them as agreement, since the backends' sums differ.
Activity
jschmied commentedon Oct 30, 2026
/atc claim
ashhart commentedon Oct 31, 2026
Thanks @jschmied. A model that fits an Iris Xe laptop is a good next step for XPU.
The plan and order are right. Kernels with synthetic-weight contract checks first, then the forward against FP64 layer
by layer, then
serveand the recipe table. Reusingqmv4,attnandgluewhere they fit, and one plain sub-groupkernel for the short convolution, is fine.
It stacks on #1513, still a draft, so that decides when it can land. Greedy tokens against CUDA and Metal are a useful
check. Please report them as agreement, since the backends' sums differ.