A 176 KB C Program Just Ran a 2.78 Trillion Parameter Model on 8 GB of RAM
Someone got a 2.78 trillion parameter model running on a laptop CPU. 8 GB of RAM. Zero GPUs.
Now the catch, because it's a big one: 26 seconds per word.
That's also the entire point. The wall was never speed, it was capacity. K3 is 1.56 TB as shipped, so no consumer machine could run it at any price. Now it runs. Slowly. On hardware you already own.
How it fits:
→ K3 is a mixture of experts. Only 16 of 896 experts fire per layer, so 104B params are active per token out of 2.78T. That's 3.7%
→ The other 96.3% is 1.447 TB of sleeping experts that never enter RAM. They stream off the disk and get multiplied straight out of their packed 4-bit form, never unpacked
→ The dense trunk streams layer by layer instead of sitting resident, which turns the memory requirement from a floor into a dial
Wildest part:
The output is byte-identical from 8 GB to 224 GB. More RAM buys speed and nothing else.
>> 8 GB: 26.5 s/token
>> 32 GB: 24.2 s/token
>> 64 GB: 19.8 s/token
>> 128 GB+: 5.6 s/token
Same prompt. Same answer. Only the clock moves.
No CUDA. No PyTorch. No BLAS. No framework.
The entire engine is a 176 KB binary. Six C files, libm and OpenMP, nothing else. It indexes 497,220 tensors across 96 shards in 0.27 seconds.
A 176 KB binary running a 1.56 TB model.
100% Open Source. Apache 2.0.
Fareed Khan built kimi-k3-in-c, a 176 KB C99 engine that runs Moonshot AI's Kimi K3 — a 2.78 trillion parameter, 1.56 TB open-weights model — on a single CPU with 8 GB of RAM. No GPU, no CUDA, no PyTorch, no BLAS.
The trick exploits how Kimi K3 is built: it's a mixture-of-experts model where only 16 of 896 experts activate per layer, so just ~3.7% of parameters (~104B) are active for any given token. The other 96.3% — 1.447 TB of "sleeping" experts — never enters RAM; they're streamed from disk and multiplied directly in their packed 4-bit form. The dense trunk streams layer by layer rather than sitting fully resident, turning the memory requirement into a dial instead of a fixed floor.
Output is byte-identical regardless of how much RAM you give it — more RAM only improves cache hit rate and speed, never the answer. Reported per-token speed at the minimum 8 GB configuration is roughly 32-33 seconds in most independent write-ups.
Important caveat: this runs the base model only — there's no chat template, so output is raw continuation, not conversational reply. You'll also need about 1.7 TB of free disk space for the checkpoint.