X discussion: an indie developer compiles an NPU into Qwen3.5-4B weights and runs Karpathy's stories260K, an LLM inside an LLM
A widely discussed experiment on X: on Oct 31 indie developer div (@divagr1925) showed QwenPU, which compiles a 32-bit RISC-V CPU plus a vector unit directly into the weights of Qwen3.5-4B and runs Andrej Karpathy's 260K-parameter stories260K inside the model's own forward passes, matching a reference implementation token for token. None of the added weights are trained; a compiler computes them all. The post drew about 1,540 likes, 163 reposts and 85K views and became an X trending story. It is a personal, self-described work-in-progress project: the checkpoint is 26.7 GB and one story token takes about 16 seconds on an L4. This is a write-up of the discussion, not an official announcement from any company.
Key Takeaways
- Buzz: the @divagr1925 post has about 1,540 likes, 163 reposts, 71 quotes and 85K views (public X metrics as of Nov 1); the earlier Qwenputer post (Oct 28) has about 5,880 likes and was quote-posted by Shopify CEO Tobi Lutke
- Method: 13 compiled computer layers (RV32IM + Zba + a bignum unit + the vector unit) sit in front of Qwen's 32 layers, widening the hidden size from 2560 to 5120 while Qwen's own weights stay unchanged (GitHub README)
- Efficiency: trace tokens per story token drop from 2.43M for plain C to 53K; at about 3,300 trace tokens per second on an L4, one story token takes about 16 seconds (author-reported)
- Verification: the story program runs free on a GPU executor for all 3,184,920 steps, checked against a reference CPU model at every step, which the author says is exact; no independent reproduction has been published yet
- Open source: code is MIT and weights are Apache-2.0 as a modified Qwen3.5-4B, on Hugging Face and ModelScope; the 26.7 GB checkpoint needs a 40 GB or larger GPU
