Mac mini M6 (16 GB): Q2_0 streaming works - measured 11.7->27.2 tok/s + arena fix for sub-32 GB Macs
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 68/100
- Issue type
- Documentation
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- cpp, macos
- Domain
- documentation, performance
Research direction
Start with MAC.md, which the issue says currently describes smaller Macs as untested. Read the section on memory and arena sizing, then add the reported STRATA_METAL_KEEP_FREE_GB=3 and STRATA_METAL_ARENA_GB=8 settings as a first troubleshooting step for Macs under 32 GB. Done when the guidance explains when to try the settings and how to restart with the affected model's run script.
Written by the indexing model from the issue text.
Description
First data point for a sub-32 GB Mac, following up on MAC.md's "smaller Macs are untested".
Machine: Mac mini, Apple M6, 16 GB unified memory, macOS 27.0.1, ~185 GB free disk.
Setup: git clone + HF_ENDPOINT=https://hf-mirror.com ./setup.sh --yes (mainland China network — direct huggingface.co connected but transferred 0 bytes; the mirror fixed it at ~70 MB/s). Selected pack: Q2_0, SSD expert streaming, MTP auto-off, context 32768. Engine built from source with the stock ./setup.sh (Metal).
Result
The server starts and serves, but every inference fails on a 16 GB Mac out of the box:
[strata] the engine reported an error: metal prompt: no arena region for the prompt buffers
Cause: at the moment the arena is sized, vm_stat shows only ~200 MB free, and the default "keep 7 GB for macOS" rule (MAC.md) leaves nothing for the prompt buffers.
Fix
In strata-q2_0.json -> env:
"STRATA_METAL_KEEP_FREE_GB": "3",
"STRATA_METAL_ARENA_GB": "8"
Restart with ./run-q2_0.sh. Everything then works.
Measured (engine's own "done:" lines, Q2_0, 32K ctx)
| Condition | tok/s |
|---|---|
| Cold cache (first request after start) | 11.7 |
| Warmed up (subsequent short requests) | 14.6 – 27.2 |
So a 16 GB M6 is usable — close to the 32 GB M4 mini's documented ~14 tok/s.
Minor note
"enable_thinking": false in the request is ignored (reasoning_content still generated); reasoning_budget_tokens is the working knob, as the server log helpfully says. Could MAC.md mention the KEEP_FREE_GB/ARENA_GB combination as the first thing to try below 32 GB? That would have saved me the debugging.
- Dominant language
- C++
- Stars
- 11.6k
- Forks
- 1k
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Niko1221/Strata
-
Difficulty 1/5 Under an hour Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
tools/strata_bench.py: UnicodeDecodeError reading CMakeLists.txt on non-UTF-8 Windows (GBK/cp932), before any measurementPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 81/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 75/100
Niko1221/Strata#2772 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 1 day
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
Maintainers usually reply within 1 day
-
enhancement question
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
DarkStarSystems/pcons#224 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
LizardByte/Sunshine#5953 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
(S1 - Need confirmation)
Difficulty 2/5 1-3 hours Newbie friendliness 63/100
CleverRaven/Cataclysm-DDA#89133 ·
Maintainers usually reply within 1 day