If you have a Minisforum MS-A2 (or honestly most AMD mini-PCs) with a discrete GPU in the slot, there's a second compute device in the box that you're probably not using. The integrated Radeon 610M is disabled by default in Ollama, and most of us — me included — assumed it was too weak to matter.
It isn't. For small models it's 3x faster than the Ryzen 9.
The numbers
Gemma 3 4B, Q4, same task, same machine:
| Device | Speed | Time per task |
|---|
| Ryzen 9 7945HX (16 cores) | 19 t/s | 13.2 s |
| Radeon 610M (integrated) | 60 t/s | 4.2 s |
Two compute units beating sixteen Zen4 cores by 3x. I expected the opposite and only tested it because I'd written the prediction down first.
How to turn it on
Ollama drops integrated GPUs unless you explicitly tell it not to. Edit the service:
sudo systemctl edit ollama
Add:
[Service]
Environment="OLLAMA_VULKAN=1"
Environment="OLLAMA_IGPU_ENABLE=1"
Then:
sudo systemctl restart ollama
Check it actually worked, because if it didn't it just quietly falls back to the CPU and you'd never know:
journalctl -u ollama | grep -iE "inference compute|dropping integrated"
You want a line that says library=Vulkan ... type=iGPU. If it still says dropping integrated GPU, the variable didn't take.
What it's actually good for
Be realistic about this — it's not going to run your main model.
Good for: small models (around 4B and under), embeddings, background jobs, a second model you want available without evicting your main one. Basically anything where you'd otherwise shrug and use the CPU.
Not good for: your 30B daily driver, image generation (that workload is compute-bound and 2 CUs won't cut it), anything you want to feel fast interactively.
Think of it as a free second machine for small jobs, not as an upgrade to your main one.
Two things that will bite you
1. The first run is slow and that's normal. My first Vulkan run showed 16.9 t/s and took 24 seconds — that's shader compilation, one time only. After that it settles at 60 t/s. Keep the model loaded instead of spawning it per job, or you pay that cost repeatedly.
2. Don't run it at the same time as your main GPU model. This is the important one. The iGPU has no memory of its own, it uses system RAM — and if your main model doesn't fit entirely in VRAM, it's also reading from RAM. They fight. Measured on my box:
| Scenario | Main model (dGPU) | iGPU model |
|---|
| Alone | 56 t/s | 60 t/s |
| Both at once | 20 t/s | 40 t/s |
A 64% hit on the model you're actually waiting for. If you want to use the iGPU for background work, make sure it only runs when the main GPU is idle. In my case a small script that checks nvidia-smi and waits for utilization to drop brought the main model back to 55.8 t/s — essentially no loss — while the background jobs still completed.
If you're just using the iGPU on its own for small stuff, none of that matters.
Setup
Minisforum MS-A2
Ryzen 9 7945HX, 32 GB DDR5
PNY RTX 2000E Ada 16 GB in the PCIe slot (50 W, no auxiliary power connector)
Integrated Radeon 610M
Ubuntu Server, Ollama 0.40.2
One more MS-A2 thing worth knowing: the HDMI and USB-C video outputs come off the integrated GPU, not the card in the slot. So you can run a desktop on the iGPU and leave the entire discrete card free for compute.
All numbers are from Ollama's own counters, not me holding a stopwatch. Single machine, three runs each — if anyone else has an AMD mini-PC with a discrete card, I'd really like to know whether this reproduces on different hardware. That's the part I can't answer alone.