Reddit got excited about a claim that sounds absurd on purpose: Karpathy's tiny MicroGPT, just 4,192 parameters, running at more than 50,000 tokens per second on an FPGA.
The cheap response is that a 4,192-parameter model is a toy, so of course it can go fast. That misses why the thread spread.
The interesting part is not the number by itself. It is that TALOS-V2 turns the whole next-token path into explicit hardware. No PyTorch runtime, no CPU choosing tokens after the fact, no "accelerator" hiding behind a software stack. The project lays out what happens when you stop treating a transformer as a program and start treating it as a circuit.
That is a better story than "small model goes brrr." It is also where the evidence gets more useful, and more complicated.
What actually showed up on Reddit
The post that caught traction in /r/LocalLLaMA was titled "Karpathy's MicroGPT running at 50,000 tps on an FPGA". It linked two primary artifacts:
- the project write-up at v2.talos.wtf
- the GitHub repo at Luthiraa/TALOS-V2
The repo describes TALOS-V2 as a "hardware implementation of transformers running microgpt at 50k+ tkps." The write-up is more detailed, and more interesting. It explains the model is Karpathy's MicroGPT trained on the names dataset, then lowered into RTL blocks for embeddings, attention, normalization, MLP, language-model head, and token sampling.
In other words, this is not a generic FPGA backend for arbitrary models. It is a tightly scoped, model-specific hardware realization of one tiny GPT.
That constraint matters, because it is also what makes the project readable.
What is actually verified
The strongest verified facts are straightforward.
First, the public write-up does directly claim a pure RTL path above 50,000 tokens per second on a DE1-SoC, with a measured checkpoint around 53,000 tokens per second. It also says token sampling happens in hardware and that the host is not choosing tokens for the design.
Second, the implementation details are not hand-wavy. The write-up and repo both expose real hardware choices:
- Q4.12 fixed-point math instead of floating point
- weights exported into ROM-friendly hex files
- a streamed systolic matrix-vector tile reused across projections
- explicit discussion of timing closure, routing pressure, memory locality, and cycle reduction
Third, the repo is not pretending this is a full-scale LLM accelerator. The current public docs describe the MicroGPT topology as vocab_size = 27, block_size = 16, n_embd = 16, n_head = 4, n_layer = 1, and mlp_dim = 64. This is small enough to inspect end to end, which is part of the point.
The repo also includes a useful reality check. Its RTL notes say the design uses fixed-point arithmetic and an RTL-friendly sampler, so it should not be described as a bit-exact copy of Karpathy's Python implementation. That is the right kind of caveat to publish.
The real story is not the speed claim
The headline number got the clicks. The more valuable idea is that TALOS-V2 is trying to answer a hardware question, not a benchmark question.
What happens if you stop assuming a transformer should be executed by a general-purpose runtime?
The write-up's answer is blunt. You stop talking in framework abstractions and start talking about where weights live, what can be streamed, which passes can be folded together, how wide an accumulator should be, and how much parallelism the FPGA can absorb before routing and timing push back.
That is what makes this more than a stunt.
A lot of current AI infrastructure still assumes the model is the software object and the hardware is a broad substrate underneath it. TALOS-V2 leans the other way. It treats the model as something you can compile into a narrow physical datapath with explicit tradeoffs. For a toy GPT, that is educational. For the broader industry, it is a reminder that the software-first stack is not the only shape AI inference can take.
You can see that in the design choices the author calls out.
The fastest path was not "make everything wider." The write-up says throughput only improved when changes still fit the FPGA, closed timing, and removed real work from the token-generation loop. That is a useful corrective to a lot of AI performance discourse, which often treats more parallelism as an automatic win.
Where the public evidence gets messy
This is also where the post gets stronger if you read past the headline.
The live write-up presents the clean version: more than 50,000 tokens per second, with a measured point around 53,000 tokens per second on the DE1-SoC.
The repo's rtl/README.md adds nuance. It says the active core now uses a streamed 16-lane systolic MAC tile and a 56.25 MHz PLL. It also says the current 16-lane RTL "has not been hardware-JTAG sampled in this workspace yet," while a deterministic ModelSim run clears the 50k target at the core-cycle level, around 51,060 tokens per second. In the same README, the previous programmed 4-lane build is reported at about 45,378 tokens per second for a single sample and 46,046 tokens per second over 20 samples.
That does not kill the project. It does change how aggressively the speed headline should be repeated.
The public artifacts support three careful statements:
1. TALOS-V2 is a real open-source RTL implementation of a tiny transformer. 2. The project publicly documents a path to roughly 50k tokens per second and shows the hardware reasoning behind it. 3. The exact boundary between board-measured throughput and simulation-level throughput is not perfectly clean across the current write-up and repo docs.
That last point is not a gotcha. It is the normal shape of fast-moving technical work. But it does matter if people want to turn "50k tokens per second on FPGA" into a larger argument than the evidence can carry.
Why Reddit reacted anyway
The Reddit comments were more thoughtful than the headline suggests.
One early commenter pointed to the real bottleneck immediately: block RAM is fast, but small, so onboard weight storage caps the size of models you can fit without leaning on external memory. Another corrected the picture by noting that higher-end FPGAs can carry far more fast RAM than that, though still nowhere near what you would want for frontier-scale models. Another pushed the conversation toward a practical niche, arguing that aggressive quantization could make medium-sized FPGA-resident models useful for embeddings, classification, or PII detection rather than chatbot theatrics.
That reaction is the reason the thread mattered. People were not just gawking at a toy benchmark. They were arguing about memory locality, batching, quantization, and whether hardware-resident small models might become useful for narrow workloads.
The project also got a little pickup outside Reddit. Hacker News had a submission titled "MicroGPT Running at 50k Tkps on Cyclone V FPGA (Pure Hardware)", though it did not gather much discussion. On X, a public post from @0xLogicrw summarized the project as an undergraduate effort that moved Karpathy's MicroGPT fully into SystemVerilog on an FPGA, with no GPU and no CPU inference loop.
So the public reaction exists, but it is still early. This is closer to an engineer's curiosity spike than a broad industry event.
What is worth taking away
No, this does not mean tiny FPGA GPTs are about to replace GPU inference for serious language models.
Yes, it does point at something real.
The AI stack has spent the past few years normalizing giant, flexible software systems running on equally giant, flexible hardware. TALOS-V2 is a reminder that another path exists: smaller models, narrower goals, tighter hardware coupling, and more willingness to trade generality for determinism, locality, and speed.
That path will not win everywhere. It does not need to.
It only needs to win in the places where the model is stable enough, the workload narrow enough, and the latency or power constraints painful enough that the software stack starts to look bloated.
That is why the Reddit reaction was justified. Not because a 4,192-parameter GPT is useful in its own right, but because the project makes an old idea feel current again.
Sometimes the model is not just software running on the computer.
Sometimes the model starts becoming the computer.
Sources
- Reddit: Karpathy's MicroGPT running at 50,000 tps on an FPGA
- Project write-up: v2.talos.wtf
- GitHub repo: Luthiraa/TALOS-V2
- Repo RTL notes: rtl/README.md
- Hacker News: MicroGPT Running at 50k Tkps on Cyclone V FPGA (Pure Hardware)
- X public signal: @0xLogicrw on TALOS-V2