OCuLink or Thunderbolt for an External GPU? I Measured Both With the Same Card | Mini PC eGPU Part 1
When you hang an external graphics card off a mini PC, there are two ways to connect it: OCuLink and Thunderbolt. Which one you pick decides which dock you buy.
Look it up and you are told OCuLink is faster. The bandwidth is 64Gb/s against 40Gb/s, a 1.6x difference. What nobody wrote down was how much of that difference actually shows up in local LLM speed.
So I measured it: same graphics card, same dock, same OS, swapping only the connection. The result was rather different from what I had pictured.
Measured in July 2026.
- 1. The hardware
- 2. First though: OCuLink is not something you casually unplug
- 3. How much does generation speed actually differ?
- 4. Why doesn’t 1.6x the bandwidth change the speed?
- 5. The difference was in loading the model
- 6. Loading speed did not change with the graphics card
- 7. There is one large condition attached
- 8. Wrap-up: which one to pick
- 9. Sources
- 10. Hardware used
The hardware
| Machine | GMKtec EVO-X2 (Ryzen AI Max+ 395 / 128GB unified memory) |
| Dock | AOOSTAR AG03 (has both OCuLink and Thunderbolt 5) |
| Graphics cards | NVIDIA GeForce RTX 3060 12GB / NVIDIA GeForce RTX 5060 Ti 16GB |
| OS | Windows |
| Measurement | Ollama (API called directly, context length 32,768, generation capped at 256 tokens) |
Because one dock carries both sockets, changing the connection is just changing the cable. No difference between docks gets mixed into the comparison.
A dock, here, is the box that holds the graphics card and feeds it power. This is the one I used.
AOOSTAR AG03 eGPU Dock (OCuLink + Thunderbolt 5)Has both OCuLink and Thunderbolt 5
As an Amazon Associate we earn from qualifying purchases.
First though: OCuLink is not something you casually unplug
Before the speed, there is a difference in how they feel to live with.
OCuLink needs the machine powered off before you connect it. Plugging and unplugging while it runs is not part of the design. Thunderbolt you simply plug in, with the machine still on.
If you want to disconnect it when it is not in use, or move it between machines, that difference bites every day. Even during this measurement I shut down and booted again every time I changed the connection.
So is there enough of a speed gap to pay for that trouble? That is the question.
How much does generation speed actually differ?
I measured three models. The numbers are tokens generated per second (tok/s); bigger is faster.
With the RTX 5060 Ti 16GB
| Model | OCuLink | Thunderbolt | Difference |
|---|---|---|---|
| phi4-mini | 133.21 | 130.32 | 2.2% |
| nemotron-3-nano:4b | 122.86 | 124.03 | -0.9% |
| qwen3:14b | 44.48 | 44.16 | 0.7% |
Almost nothing. With nemotron-3-nano:4b, Thunderbolt even came out ahead. That is what no difference looks like.
With the RTX 3060 12GB
| Model | OCuLink | Thunderbolt | Difference |
|---|---|---|---|
| phi4-mini | 105.74 | 99.76 | 6.0% |
| nemotron-3-nano:4b | 96.71 | 92.70 | 4.3% |
| qwen3:14b | 20.73 | 20.09 | 3.2% |
Here a 3–6% gap shows up. But you cannot take that number at face value.
Partway through, I happened to measure the exact same condition twice (RTX 3060, Thunderbolt, phi4-mini). The results were 99.76 and 103.11 — 3.4% apart. The same size as the 3–6% I was calling a difference between connections.
So the gap on the RTX 3060 was small enough to disappear into measurement noise. Put that together with under 1% on the faster RTX 5060 Ti, and the natural reading is that the connection has almost nothing to do with generation speed.
Why doesn’t 1.6x the bandwidth change the speed?
Once the model is loaded into VRAM, the work stays there. What crosses to the PC is the text you typed and the text that comes back. Very little goes down the cable.
So where does cable thickness show up?
The difference was in loading the model
Pushing a model into VRAM is the moment when a lot of data does go down the cable. I measured that.
| Model | OCuLink | Thunderbolt | How much slower Thunderbolt is |
|---|---|---|---|
| phi4-mini (6.8GB) | 2.24 s | 3.36 s | 1.50x |
| qwen3:8b (9.5GB) | 2.44 s | 3.81 s | 1.56x |
| qwen3:14b (10.3GB) | 3.96 s | 6.83 s | 1.72x |
A gap of 1.5 to 1.7x. And that ratio lines up almost exactly with the bandwidth on the box (64Gb/s ÷ 40Gb/s = 1.6x).
As actual transfer rates, OCuLink came to roughly 3.8GB/s and Thunderbolt roughly 2.4GB/s. Both about half the figure on the box, but the ratio is exactly as advertised.
Loading speed did not change with the graphics card
One more thing I checked: does a faster graphics card load faster?
| Model | RTX 3060 | RTX 5060 Ti | Difference |
|---|---|---|---|
| phi4-mini | 2.24 s | 2.30 s | 2.7% |
| qwen3:8b | 2.44 s | 2.50 s | 2.5% |
Essentially the same. The RTX 5060 Ti generates text about 30% faster than the RTX 3060, but the loading time does not move.
Which lets me say this.
Buying a faster graphics card will not shorten the wait while a model loads. And changing the connection will not make generation faster.
There is one large condition attached
I have been saying Thunderbolt is good enough, but that comes with a premise.
All of this was measured on Windows. Run the same hardware under Linux and the external graphics card is not even detected over Thunderbolt. Over OCuLink it works without trouble.
Working that out took a full day, so I will give it its own article next time. For now, just hold on to the condition: if you choose Thunderbolt, you are choosing Windows.
Wrap-up: which one to pick
- Generation speed barely changes with the connection (under 1% on the faster card; on the slower card, small enough to vanish into measurement noise)
- Only model loading is slower on Thunderbolt, by 1.5 to 1.7x. Exactly the bandwidth ratio on the box
- Loading time does not change with the graphics card. It is set by the connection
- OCuLink needs the machine powered off to connect. Thunderbolt you just plug in
- Thunderbolt means Windows, at least here
If you keep one model loaded and leave it there, taking Thunderbolt for the convenience is a reasonable call. If you switch between models constantly, every load costs 1.5x, and OCuLink is the more comfortable place to be.
One thing matters far more than the connection, though: how much memory the graphics card has. With the same model, fitting into 16GB rather than spilling out of 12GB changed the speed by more than 2x. That is a story for another article.
These numbers are from July 2026 on my setup (GMKtec EVO-X2 + AOOSTAR AG03, Windows, Ollama). Different models or settings will give different results.
Sources
Hardware used
The machine everything was measured on.
GMKtec EVO-X2 (Ryzen AI Max+ 395 / 128GB / 2TB)128GB unified memory mini PC
The graphics cards.
The dock the graphics cards sat in. It has both OCuLink and Thunderbolt 5 sockets, which is what made the swap possible.
AOOSTAR AG03 eGPU Dock (OCuLink + Thunderbolt 5)Has both OCuLink and Thunderbolt 5
There are also docks that take OCuLink and USB4 V2. I have not tried this one, but it is worth listing as an option.
Some machines come with an OCuLink socket already fitted, which saves pulling one out of an M.2 slot (manufacturer specification, checked 1 August 2026. I have not tested these machines myself).







Discussion
New Comments
No comments yet. Be the first one!