This looks very interesting. Possible to get those rates without exotic hardware.<p>But I have to say that the comparison is not really fair. Comparison is done with a 2 B model vs frontier models that are likely 100s of times larger. Also taalas with their 15000 tok/s inference are suspiciously missing from the comparison.<p>We need to see the comparison with this framework and useful models, which at present seems to mean ~30 B.
Great points.<p>We strived to be fair as possible in the benchmark, but it's indeed not perfect.
Taalas should have been added in the dedicated hardware section, even though they use 3-bit quantization when we are on FP16 (to be fair in both directions) and they burn the model directly on the card.<p>Our tech preview is about the speed (hence the small dense model, it was easier to implement).<p>The math checks out though to allow support for large frontier MoE models at similar speeds:
- At batch size 1, GPT-OSS-120B has 5.1B active parameters - in FP8, it's in the same size ballpark than our 2B model in FP16 (5.1 GB vs 4GB).
- DeepSeek V4 Flash has 13B in mixed FP4/FP8, so let's say ballpark around 3x bigger than 4GB - so in theory we could reach >1,000 tok/s on it with MI300X/H200 and up to 4k on next generation GPUs.<p>Check out the math at the end of our blog post:<p><a href="https://blog.kog.ai/real-time-llm-inference-on-standard-gpus-3-000-tokens-s-per-request/" rel="nofollow">https://blog.kog.ai/real-time-llm-inference-on-standard-gpus...</a>
Your playground/write-up is very interesting and I would be really interested when you can have something like Deepseek V4 Flash model (49B) running as you are suggesting.<p>I haven't read the article at the moment and I will try to read them hopefully but I wish to ask a question regarding, can this approach be done for say trillion or large parameter models as well or is there some wall which gets hit that makes it valuable for only smaller parameter model.<p>That being said, its still really incredible because in future, because these small models are really getting good for many use cases and speed becomes their bottleneck, with greater speeds at consumer hardware, I think its gonna be amazing work!
Consumer inference scenarios tend to be highly bespoke so it's difficult to apply a monokernel approach based on deep manual optimization. I suppose this could become applicable to rare scenarios where both the model and the hardware are fixed and self-contained, e.g. I'm running Apple's AI model on the latest Apple Silicon hardware. Then this becomes a viable approach even for 'consumer' use.<p>The authors' approach also encompasses multi-node approaches that won't apply easily to consumer inference since consumer GPUs have very low-performance interconnects, hence why layer parallelism is usually favored. (But that doesn't work very well with the monokernel approach, since it involves running distinct logic on each separate GPU. It also doesn't speed up <i>single</i> inference, though you can get that throughput back by pipelining small minibatches.)
<i>scenarios where both the model and the hardware are fixed and self-contained</i><p>That's basically antirez's DS4 and it works pretty well because there are few leading models and few hardware platforms (Apple, GB10, Strix Halo) that are worth using.
Thanks for the comment and the question!<p>The last section of the article lays out the scaling laws that apply when porting this approach to another model. In a nutshell, DeepSeek V4 Pro with 49B active params is close to the upper bound.<p>Also worth noting that our results are currently for standard <i>datacenter</i> GPUs. On consumer hardware, though the same low-level optimization approach applies, the bandwidth limitations will cap the achievable speed.
They got 1K tok/s with Deepseek v4 Pro. That's kinda cool..
Fallacies look interesting ? Like if we aren't getting dubious claims every day ?
likely the small model makes whatever fuzzer they designed to poke the gpus much faster optimizations.<p>they seem to think it scales up because theyre shortening the stack.
For me it's 3.4k tok/s of pure nonsense, the model is bad, you tell it it's wrong, it acknowledge it's wrong and repeats the same nonsense. It reminds me my nephew though. Ask it something like: "I want to play the guitar on the surface of the Moon. What speakers do you suggest." and then "But Moon has no atmosphere, how the sound will travel?".
Follow-up reading the most technical and research people here:<p>Monokernel deep dive (GPU Engineering): <a href="http://blog.kog.ai/building-a-single-kernel-latency-optimized-llm-inference-engine-on-amd-mi300x-gpus" rel="nofollow">http://blog.kog.ai/building-a-single-kernel-latency-optimize...</a><p>Delayed Tensor Parallelism (research): <a href="http://blog.kog.ai/delayed-tensor-parallelism-for-faster-transformer-inference" rel="nofollow">http://blog.kog.ai/delayed-tensor-parallelism-for-faster-tra...</a><p>To try the speed on the playground: <a href="http://playground.kog.ai" rel="nofollow">http://playground.kog.ai</a>
This is <i>very</i> cool.<p>I have been lamenting for a while that the memory-bandwidth <-> tps relationship was pretty much working for small models on consumer cards, but not at all on datacenter hardware.<p>It's great to see that with proper care on the inference engine implementation the relationship can be restored.
Do you think the work will still apply to speculative/alternative decoding methods like MTP and block diffusion, which are making batch=1 decoding less memory bound? Kernel launch overhead and memory transfer become less and less significant as a % of time when computing multiple tokens at once.
Why not, it's one way to look at it!
Although I have yet to see other work with speculative decoding higher than ~1,000 tokens/s., because the other bottlenecks start to matter at that point, and they need to be solved to go further.<p>Our view is that MTP / speculative decoding could help getting a X multiplier (X = 2 to 6) on the tokens per second speed we currently achieve.<p>We are a bit greedy, we want to stack optimizations on top of each other to get the maximum speed possible.<p>It involves additional compute to verify the predicted tokens during the forward pass (it's like a small batch), which should be totally doable for dense models, and will be more tricky for MoEs because it could mean activating more experts and thus more active parameters.
When I read "Standard GPUs" in the title I got excited for a second then I read the article itself..
Yeah, it should have been "Datacenter GPUs" or "Nvidia and AMD GPUs".
what did you have in mind when you read "Standard GPUs"?
The GPU in my desktop. (A normal-ish decent gaming machine that runs LLMs and txt2img well enough.)<p>In contrast, <i>not</i> enterprise GPUs that cost as much as a car.
I guessed you thought about consumer GPUs.
We are about standard <i>datacenter</i> GPUs indeed.
How would you classify a datacenter GPU as standard/non-standard? That doesn't seem to be a meaningful distinction. It's click bait.
What a lot of use on here are salivating for is the ability to run these on prosumer hardware at home. So we tend to jump to the conclusion that "standard" means "consumer-grade" because that's what we want to see.
Still, very cool work!
You know, Radeon 9800 pro ago
> Standard GPUs<p>> 8× NVIDIA H200
as not custom chips like Grog and Cerebras. Did you expect a single GPU chip to reach 3k tps?
I think many would assume "not enterprise" or "not datacenter grade" when someone says "Standard GPUs", but maybe that specific phrase have a specific meaning I'm not familiar with.<p>Edit: I just tried a 4B model on a RTX Pro 6000, getting ~500 tok/s with llama.cpp not even trying to optimize or change anything, just default settings. I'm sure with vLLM it'd be a lot faster already, still before manually tuning configs. I wouldn't call that card "Standard GPU" either FWIW, but it makes the claimed performance numbers feel not as exciting, especially given the hardware they were using.
> Did you expect a single GPU chip to reach 3k tps?<p>Did the article headline not say Standard GPU?
so what would be the above-standard GPUs then that they are excluding? Cerebras is not GPU
Everyone beholden to a data center or subject to the installation on the corner of your property of course. Keep up with the times... /s
Don't miss trying their demo: <a href="https://playground.kog.ai/" rel="nofollow">https://playground.kog.ai/</a><p>Feels like a preview of the future
You can get something pretty fast right now with a Cerebras Coder subscription, sadly I think the best model they had last I checked was the somewhat dated GLM 4.7: <a href="https://inference-docs.cerebras.ai/models/overview" rel="nofollow">https://inference-docs.cerebras.ai/models/overview</a><p>I feel like if they got DeepSeek V4 Flash and Pro running on their hardware, even if at less than 1000 tok/s, they’d still be crushing it with any subscription they’d provide, given how generous their token limits were.
As for the demo it's fast and extremely dumb like expected for 2B. I asked how to stop drinking habit and in just one follow-up message it recommended trying 8% ABV. Hilarious.
<a href="https://chatjimmy.ai/" rel="nofollow">https://chatjimmy.ai/</a> from Taalas also feels like that.
H200 isn't a standard GPU at all
Huh, interesting. Some parts of this do generalize even to an RTX 6000 Pro Blackwell, I imagine, though we're going to be solidly bottlenecked then on inter-card throughput through the PCIe interface.
Congrats gaeld and team<p>The demo is very impressive!<p>disclaimer: I've known the founder for a while, as legitimate as it gets in deep tech, real years of research and engineering behind this, not vaporware
Looks super promising! A couple of questions:<p>For new open weights models, will you need to adapt model code and optimization for your inference engine by hand?<p>It's true that BS=1 is king when it comes to agentic workflows, however these kinds of system serve multiple requests concurrently with dynamic batching. Do you think it will scale as well ?<p>Any plans to release it open source?<p>Congratz again for the release
Thanks a lot! Much appreciated.<p>To answer your questions:<p>- yes, we rewrite the whole model code (while keeping the same logic) in CUDA/HIP and assembly, in order to optimize by hand for each GPU type. It's quite tedious for sure, but I guess this is the price to pay to get this kind of results.<p>- the batching question is a great one. In agentic systems, there is probably a trade-off between sequential thinking/iterations vs parallel exploration of multiple solutions. Also, there could just be multiple independent tasks running in parallel, depending on the use case.<p>We plan to support a small amount of batching, but it quickly becomes a trade-off vs speed. Pick one for your use case, I guess.<p>Also to consider: because we answer requests much faster, we are also able to process lots of them without needing high batches - and scaling on multiple nodes is possible.<p>- open sourcing: maybe, maybe not. I'm still undecided on this. We are a small startup and I'm told that giving our IP away might be shooting ourselves in the feet. On the other side, I think it could be of great benefit to the community and for us... we'll see
Could be amazing, but it's hard to judge if it will really work with say a 27 B model or larger. We can already get pretty good speed with a 2B model.
>This preview runs a 2B model<p>I guess with 1B or 500M model inference would be even faster?
An article with a title saying tokens per second throughput without any qualifier e.g. what size the model is should immediately be classified as spam.
Making these claims on a 2B parameter model seems a bit like seeing linear scalability from 1 to 4 cores and then assuming 256 cores will give you a 256x speedup. Or demonstrating massive improvement on datasets that fit in cache and then assuming the same improvements will be present on problem sizes that span the memory of multiple machines. Something tells me that scaling to larger models will be more difficult than assumed.
Yeah, I agree: I'm actually not expecting it to be easy, and there will certainly be several unknown unknowns we'll discover along the way.<p>Our process has been, and will continue to be, a sequence of (tedious) R&D experiments where the GPU never behaves as expected when pushed to its limits in ways no-one really tested before (I still have nightmares of the L3 cache cross-IOD bottlenecks on MI300X).<p>IMHO, we did solve the multi-GPU memory bandwidth scaling problem, and thus the linear scaling of the size of the model towards infinity.
But the main difficulties will come from keeping the speed, with steady and continuous memory streaming, while implementing the much more complex architecture of modern frontier MoEs (attention compression tricks, hash layers, routing logic, etc.)
I have a naive question here - first, the token speed is very impressive. but why this is the highlight? I would prefer the actual performance.
Token generation speed matters for sequential agentic workflows, like software engineering / vibe coding, where a lot of reasoning tokens, code generation, refactoring, testing, etc. happen in a loop before an actual outcome is served to the user.<p>About model performance, we plan to support the latest frontier models (this tech preview is about the speed of the engine)
I had to test it myself to believe this unreal inference speed.<p>each time getting 3300+ tps.
I can think of real time video, shader generation, real time worldbuilding type problems could require such a high token throughput.<p>For instant code generatio, 400-500 tok/s should be sufficient, though most frontier models give us closer to 70 tok/s.
That sounds a little bit like the 64kb memory is enough, then someone invented electron ;P<p>But joke aside, I think we don't even know yet what is possible if you hit very fast very high token / second numbers if your whole ecosystem behind it can handle it.<p>You could literaly implement the same solution 100x and benchmark all of them and get only the best result.<p>You could build and architecture a whole stack in parallel.<p>You could do massive thinking token / chain of thought.<p>You could let the LLM analyse everything around you while you type. Like it could tell you that this might create a bug in a different file and why.<p>We could start doing some type of monte-carlo search with this.
Is this the new gateway to a "Model On a Chip"? Is it possible to etch the weights on silicon and get a very efficient way to use a LLM?
Title is pure bait. Where is Datacenter GPU gone?
NVIDIA H200 Is not a standard GPU. 8 of them in a box with a cpu and ram costs close to the same as a house.<p>I am 100% all about using local models instead of sending someone else all my data and paying for the privilege of doing so, this article is misleading.<p>I can get a 27b model to kick out 40 tok/s on 16 gb vram. This is the area ripe for development.<p>If you can’t connect a monitor, it isn’t a standard GPU, at least not in the way people have spoken about GPUs until a few years ago.
I feel the comparison to Groq is unfair. They're running much larger models (orders of magnitude) and still reaching competitive speeds.
Fair point - this tech preview is about the speed (hence the small dense model, it was easier to implement).<p>The math checks out though to allow support for large frontier MoE models at similar speeds.<p>At batch size 1, GPT-OSS-120B has 5.1B active parameters - in FP8, it's in the same size ballpark than our 2B model in FP16 (5.1 GB vs 4GB).<p>DeepSeek V4 Flash has 13B in mixed FP4/FP8.<p>Check out the math at the end of our blog post: <a href="https://blog.kog.ai/real-time-llm-inference-on-standard-gpus-3-000-tokens-s-per-request/" rel="nofollow">https://blog.kog.ai/real-time-llm-inference-on-standard-gpus...</a>
[dead]
[dead]
[flagged]
That's really nice of them.<p>That means Jensen can add another 30 times faster when comparing Rubin to Blackwell without having to actually do anything.<p>Hopefully that means he won't have any problem to make another 150 billion in profit in the next year.<p>Sorry for the sarcasm. Looks like interesting work.