Is a Faster Model Actually Faster? Test the Whole Job — Morgan Suo, MiniMax
Read the talk
Is a Faster Model Actually Faster? Test the Whole Job
Morgan Suo uses a financial research task to connect model optimizations to the accuracy, cost and wait time of a report an analyst can actually use.
From a talk by Morgan Suo
At a glance
Ideas worth remembering
Measure time and cost to an acceptable report, including retrieval, retries, failed attempts and human repair.
Sparse attention reduces work by selecting text blocks, so test whether important evidence remains findable at different positions in real documents.
Lower precision can reduce data movement, but near-identical average scores can conceal changes on individual tasks; full-setup comparisons do not isolate their causes.
Test serving load and reasoning effort against the deadline and quality needed for the actual job, rather than relying on throughput or first-token latency alone.
The job is a checkable research report
A research report arrives quickly, but it misses an important source. Someone must find that source and repair the report before using it. Morgan Suo of MiniMax starts with that familiar failure: a faster model response does not necessarily mean a faster finished job.
The example asks whether suppliers of printed circuit boards for AI servers are turning growing demand into cash. An internal review describes work across 14 company reports. The model must find the right reports, compare matching reporting periods, keep separate businesses distinct and explain the numbers. The analyst receiving the result needs to open the sources behind important claims, check calculations and see what evidence might change the conclusion.
Profit and cash flow make the distinction concrete. Sales and reported profit can rise while customers have yet to pay, or while purchased materials remain in storage. A useful report points the analyst to the cash flow statement and relevant disclosures to investigate why. The internal review describes the output; its sources and calculations still need verification, and the same job needs time and cost measurements. The technical tests that follow use separate tasks to expose individual tradeoffs.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Sparse attention must still find the footnote
MiniMax M3.1 Flash has a stated one-million-token context window, but capacity alone does not say whether the model can use the right passage quickly and accurately. Sparse attention reduces work by scoring blocks of text and applying the main attention calculation to a selection, while keeping nearby text in view. The selected blocks can change with the query: a cash-flow question may need a different part of a report from an industry-outlook question.
That selection creates a consequential test. A short footnote may change the conclusion even if many pages of outlook seem relevant. Suo says the model uses sparse attention in its first three layers. In a separate retrieval test that placed facts at different positions in long inputs, one run passed all 39 requests, with the longest inputs around 830,000 tokens. That result covers the cases in that test.
For the analyst's job, repeat the question on real reports while moving the important passage to different positions. Check whether the model finds the cash-flow footnote, uses the right period and notices conflicts between documents. The goal is to save attention work without losing the evidence that decides the answer.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
A smaller KV cache can hide uneven quality changes
The key-value, or KV, cache retains internal information for the model to use later. M3.1 Flash stores its keys and values at 4-bit precision instead of 8-bit, while queries remain at 8-bit. Fewer bits can reduce the data stored and moved, at the cost of representing those values less precisely.
How much does that precision change matter to the answer? In the comparison Suo shows, the average score is nearly unchanged, yet one individual score falls by 6.6 percentage points while others rise. The table compares two full setups, so it does not isolate which change caused each score difference. An average can still conceal a failure important to a particular user: for the research report, check the sources, arithmetic and whether the explanation follows the evidence.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Low-precision experts depend on the calculation order
The model also uses a mixture-of-experts architecture: it selects some computing components, called experts, for each token. The selected experts use 4-bit weights and activations; the shared expert is outside that change. Weights are stored model values, while activations are values calculated as the model runs. Lower precision can reduce data movement and make computation more efficient, but the calculation must scale values, perform the operation and restore the scale in the right order.
The placement of scale restoration matters to the result, so measure the complete implementation as well as its speed. Then rerun the same research questions and check whether their answers still meet the agreed standard.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Speculative decoding saves time only when drafts pay off
Speculative decoding changes how the answer is generated. A faster draft process proposes a short sequence of tokens; the target model checks it. The system keeps the initial portion the target accepts, corrects a rejected token when necessary and continues. The diagram traces the two outcomes after that check.
The opportunity is to obtain several accepted tokens from one target check. The cost includes drafting, checking and work on proposals that cannot be kept. Acceptance by the target model is also separate from checking a financial claim against its source. For the research job, retrieval, tool calls and retries belong in the clock for a usable report.
From draft tokens to the next generation step
Read the diagram as text
- Draft process. Proposes a short token sequence.
- Target model. Checks the proposed tokens.
- Accepted prefix. Keeps the initial tokens the target accepts.
- Correction. Corrects the proposal when needed.
- Continue. Repeat generation from the resulting sequence.
- Draft process → Target model: Proposes tokens.
- Target model → Accepted prefix: Keeps accepted beginning.
- Accepted prefix → Correction: If correction is needed.
- Accepted prefix → Continue: If the draft is accepted.
- Correction → Continue: Continue after correction.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Higher throughput can mean a longer wait
A separate serving test used story generation at low reasoning effort. When concurrent requests rose from 32 to 64, total output per second grew about 1.9 times. At the same time, the P95 wait for a first token rose roughly eightfold from about 1.5 seconds. P95 describes the wait by which 95% of requests had received a first token; Suo contrasts this deterioration with a median that remained acceptable.
More aggregate output does not tell an individual analyst when the report will be ready. The first token may itself be reasoning rather than the finished answer. Set a deadline for the usable report, test at the expected load and choose a serving level that meets it.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Reasoning effort changes both work and accuracy
Reasoning effort controls how many tokens the model uses for thinking. In the setup Suo describes, thinking remains on and leaving effort blank defaults to max. A default can therefore request more work than a user intended.
In one coding test, high reasoning used fewer output tokens than max, but accuracy fell from 80% to 68% on those task items. The comparison shows the price of a smaller budget for that test, not a universal difference between settings.
Compare effort settings on the same company reports: does each find the relevant evidence and support the calculations? A quick first pass and a report ready for review may need different budgets. Record the chosen setting so the comparison can be repeated.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Evaluate the switch on acceptable reports
Start a model comparison with the same question, source reports and information cutoff, and agree in advance on what makes the report acceptable. Suo proposes three checks:
- Trust: Open sources behind important claims, check reporting periods, recalculate financial figures and look for evidence that could change the conclusion.
- Finished-job cost and time: Count retrieval, tool calls, retries, failed attempts and human repair. Test at the expected number of users and measure whether acceptable reports arrive within the promised time.
- Repeatability: Save model and runtime versions, prompt settings and sources, and keep examples of failures. Start with a small rollout and retain a way to switch back.
Suo closes with the analyst's standard: sources that can be opened, numbers that can be checked and a report that arrives when needed. The model's optimizations change where computation is spent; the complete task reveals what those changes mean to the person doing the work.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
Related talks
- How MiniMax M3 Was Built: Sparse Attention and Native Multimodality — Olive Song
Explains the sparse-attention design and its implementation tradeoffs in more depth.
- Same Model, Different Speed: Why Your Inference Provider Matters — FriendliAI
Examines how serving choices affect speed, cost and reliability for real workloads.
Read the complete timestamped transcript
- 0:12
Uh, I'm Morgan from MiniMax. Uh, how many of you knows MiniMax before? Oh, whoa, I like that. Yeah, because, uh, I joined this min, uh, company for three, almost three years. But when we first, like, stepped into the American market, like, uh, almost no one knows us. But at that time, we have the first video generation model, so I will show you something of that at the end of this speech. But first, I will show you, like, about our, the latest large language model, which will be released next week.
- 0:43
So, uh, today, uh, um, I would like to... My topic is the hidden cost of a faster model. So when people are thinking about, like, if you have a AI application, your product built in, in your own pro- workflow. So when a new model arrives, when I say, "Oh, please, we have a new model. Do you want to try it?" It can generate a task faster, but your, I think your question is, should I switch to that model?
- 1:13
So you try a research task, and the report just comes back very soon, and, but it misses a very important source, so someone has to find that source and fix that report. I think this is the thing we did every day, every day. So did the job really get faster with this faster model?
- 1:35
Today, we will look at how we reduce the model computation, and then we will ask how to test the value of those changes of this model. So let me show you the job that we will use to answer this question. So at MiniMax, we build different multimodal models and pro- products that people use. And a quick chat reply and a research report actually have different needs. So the task tells us what good performance means.
- 2:05
Today, I will focus on our latest, uh, large language model, M3.1 Flash, and one research job. So here's the analyst question. As AI server demand is growing, are the companies supplying these circuit boards turning this growth into cash? The PCB there means printed circuit board. I think you guys know that. And unco- it, it connects electronic components that inside devices that, such as the
- 2:35
AI servers. So our research case looks like companies in this supply chain. The internal review describes work across fourteen company reports, and the model has several jobs. It must find the right reports, it must compare the same reporting periods, and it must keep different businesses separate. Then it must explain what the numbers mean. Think about the analyst who receives the report. They need to open the source behind an im-
- 3:05
important claim, and they need to check a calculation. They need to see what evidence could change the conclusion. So a useful report gives the analyst something that they can check, and that is our standard for a finished research job. So one finding shows why those checks matter.
- 3:26
This internal review highlighted a very useful distinction. So profit can grow, but cash flow tells a different story. A company sells more, so its reported pro- profit rises, but customers have not paid yet. Or it has, uh, bought materials that are still in storage. So an ana- uh, the analyst needs to know why. The model should point to the cash flow statement and the relevant its
- 3:56
disclosures. So a report earns trust when its claims can be checked. And the internal review here describes the research output. So we still need to verify its sources and calculations, and also, we also need to measure the time and cost on this same job. But the co- technical tasks ahead use separate tasks, so they help us to understand s- specific trade-offs. With this job clear, so let's look at what changes inside M3.1 Flash.
- 4:28
This table shows the main changes inside M3.1 Flash. So I will connect them to a few simple questions. First, where can we reduce the attention work? And second, where can we store and move less data? And third, how does, uh, the serving setup affect the time a user waits? And fourth, we also control how much reasoning the model does. These
- 4:58
choices affect different parts of the job, and each knows a check against the result we want. So every optimization has to help the finished job. And let's begin with how the model uses a long input.
- 5:15
So nowadays, I think every model says, "Oh, I have a very big context window." Like we said, we have one million. So among this one million, how it can help you to find the output, find your result quickly, faster, and correct.
- 5:31
So some passage, uh, passages, like in this report, that matter just much more than others for this question. So sparse attention itself means, like, we uses a very small selections that first, like the blue, uh, box there. So it scores the b- blocks of the text and the main attention, then calculation, uh, calculate the uses of the selected blocks. And the model also keeps the nearby text in view.
- 6:01
And this selection, actually, they can change with the query. And different questions can also needs different passages of the, the context. And the number on, at the bottom show how much text this published example selects. And the full input can be much longer. For our research job, the goal is to reduce this attention work across many of, uh, these documents. But just within this document, a very short footnote there
- 6:31
may change the entire conclusion. So for a cash flow question, the footnote may matter more than the pages of industry outlook. So we want the model to include that passage too. Less attention work still has to find the important evidence. So the next question is simple: Can we still find the facts we need?
- 6:55
M3.1 Flash also uses like the, the sparse attention in its first, uh, three layers. That makes this retrieval an important check. So this separate task places facts at different op- positions in long inputs. So in one run, the model passes all 39 requests, and the longest inputs were about, uh, 830k, uh, tokens. So re- the result covers the c- cases in this test.
- 7:25
And for our research job, we need tests with real reports. Can the model find the cash flow foot- footnote? Does it use the right reporting period? And can it spot a conflict between different documents? So move this important passage to different places in the input and then ask the same question again. A long input is useful when the model can find a key fact, so finding the evidence is one check too. Next, we look at the numbers we
- 7:55
used inside this model.
- 7:59
So the model keeps the internal information from earlier tasks, which we call this KV cache. And the M3.1 Flash changes its keys and values from 8 bits to 4 bits, but the query still stays at eight bits. And this can reduce the data we store and move. It also changes the position of that internal information. Look at that table. So the average scores actually is almost the same, but the sign score there, it
- 8:28
drops like 6.6 percentage. So some, but some other scores raises. So the average score actually can hide a mistake which your user cares about. The, this compares the two full setups, but it does not tell us which changes caused each score. So for our research job, we should check the output, uh, output again. Are the sources right? Are the calculations right? And does the explanation match the
- 8:58
evidence? So the same ideas applies to another part of the model, its experts. Uh, our model is, uh, the Mo- in MoE architecture. So, uh, it has the computing parts that we call the experts, which is the, uh, M of E, E, experts. So it selects some of them for each token. In M3.1 Flash, these selected experts use 4-bit weights and ac- activations.
- 9:28
The shared expert is outside this change, and weights are stored model, uh, values and activations are values the model calculates. And lower precision can reduce data m- movement and support more efficient computation. But the full calculation has several steps. So we scale the numbers, we run the calculation, and restore the scale. The position of these steps really matters. And the table shows like where scale restore happens.
- 9:58
And getting that order right is the part of getting the answer right. So fast math still has to be correct. And while we check the complete result, we, we measure the complete imple- uh, implementation. And for this research job, we run the same questions again. We inspire whether answers still meet our checks. And now we look at inside. We have already look at inside the model, and now we can look at how it generates an answer for you.
- 10:30
So a serving method called speculative decoding works in two stages. A faster draft process. It can help you to propose a short sequence of tokens and the, then the target model can checks it. And the system keeps this first part that the target accepts and makes a correction when it's needed, and then continues this whole process. And sometimes it keeps several proposed tokens, and sometimes
- 11:00
the draft does work what it cannot ke- keep. So the co- opportunity here is to get several tokens from one target check. And but drafting takes time, checking takes time, rejecting these tokens also takes time. So count the time spent checking the draft too. These checks propose tokens and, but financial claims and sources need their own checks. So for our research job, we should also include the source retrieval, the tool
- 11:30
calls, and retries. The final measure is the time to a report that an analyst can really use in their own, own work. So even when one w- request runs well, many users can change this diff, uh, experience.
- 11:47
Here's a separate serving test. So it's uses the story generation with low reasoning effort. But the concurrent requests now, like we rise from the 32 to 64. So the total output per second grows about 1.9 times. But look at the wait time. Actually, it, uh, the P95 wait for the first token rises. It f- goes from about 1.5 seconds
- 12:18
to [unclear] seconds. So for 95% of this request, the first token arrives by this time, and the wait now is becomes, like, eight times longer. So the median stay l- as, uh, the, the time that we can satisfied, but when we cannot only look at the median time, so it can changed everything that if we only, like, uh, look at that one. So the
- 12:47
users feel the wait, and even when the throughput re- you see like, "Oh, we have throughput, like, more than 300 per second," but still you need to care about the final wait time. So the first token may be reasoning, and we will still need to measure when the usable report arrives. So set a deadline for that report, then we choose a load that meets it. And there's one more setting that change the work we ask the model to do. So this is the first time we, uh, just use this
- 13:17
different, uh, reasoning, uh, uh, control. So, uh, from this part, uh, so this is the default max changes that we, uh, use in the request. And it can controls how many tokens we use for this model thinking. So in the document set up here, so s- thinking stays on, but if we leave the effort blank, the default is max. So default can change the amount of work we request. And
- 13:47
one coding test there shows the trade-off. So high ch- reasoning and the max reasoning. So the high uses fewer op- output tokens than the max, but the accuracy actually fell from 80% to 68%. So the fewer tokens came with lower accuracy on those task items, so give this task the thinking budget it really needs. So for our research job, compare these settings on the same
- 14:17
reports and check whether each setting finds the evidence and the support, the calculations. And the r- quick first pass on the report ready for review may need different budgets. So we need to record this setting, uh, which reasoning control we need to put and th- then used in our later work.
- 14:41
Okay. Then we shape this research workflow with all these, um, new updates we have with this model. First, we can fix this question on the source reports and use the same information cutoff and gr- agree on what makes a report acceptable before running this comparison. And then we can check three things. The first is, can the analyst trust the report and open the resources behind the
- 15:11
important claims and check the reporting periods, recalculate the financial, financial numbers, and look for the evidence that could change the conclusion? And second, what did the finished job cost? How long did they take? And include retrieval, tool calls, and the retries. So if a person must fix the report before use, count that work, too. So include all the failed attempts in the cost of producing, uh, of producing these
- 15:40
acceptable reports.
- 15:44
So tests are the number of these users you expect, and check whether reports arrive within the promised time, and measure the cost of report you can actually use. And the third one is, can we repeat this result? Save th- this model and runtime versions, and also save the prompt settings and sources. So keep these examples of failures, and we can start with a small rollout and keep a way to switch back.
- 16:12
So before we finish, here's a short recap of today's talk. It's created with MiniMax A3, our AI video model, and you can check here.
- 16:38
Okay, so, uh, this is another model that we are working on, and it's opened with, so everyone, uh, who wants to build this, actually it's only, uh, [unclear]. Okay. So let's return to this, uh, our opening question today. Should we switch to a faster model? And look at this finished job that we're talking about for the last, uh, 18 se- minutes. So for our a- analyst, that means a report with resources they can open, and it has numbers
- 17:08
they can check, and it must arrive when they need it. And for our, uh, this M3.1 Flash changes how we spend computation, and the complete task, uh, shows that those changes means for the user. So measure what we cost to finish job, m- and on time. So faster ge- models, uh, I think, like, f- faster mo- models really matter, but what matter most is what we can do with them. Thank you, guys.