The hardware roster · one identity

the mini PC

Minisforum·whole machine·14 figures · 4 exhibits

a fanless-class mini desktop, CPU-only inference, 32 GB of memory and no discrete GPU — the machine of the two-hour battery test

It holdsIntel Core i5-12600H.

Narrow by model The rail is CSS and nothing else — no script runs on this page. Two things it therefore cannot do, said rather than discovered: a chosen filter is not part of the address, so a narrowed view cannot be linked or bookmarked; and it cannot tell you when nothing matches, which is why the count rides on every control and why a band whose rows are all filtered out keeps its heading and empties.

Language — decode, prefill and first token

Sorted by model, then by power cap ascending — alphabetical and numeric, never by value. Every condition the page states is printed; a condition it does not state reads not stated, which is a third thing and not an uncapped card. The columns a narrow screen cannot hold are printed under the row rather than scrolled to.

valuewhat was measuredmodelpower capruntimemeasurement window
~12 tokens/second for about two hours on battery — and sit ready to answer for seven and a halfdecode on battery, and how long it lastsa 26-billion-parameter modelnot statedOllama · version not stated2026-08-31, 02:38:31–03:05:02Z
a 26-billion-parameter modelnot statedOllama · version not stated2026-08-31, 02:38:31–03:05:02Z
4-bit32 K context pinnednot statednot statedtwo-hours-on-battery · two-hours-at-12-tok-s-the-test-that-named-the-page · carried by hand, proved against that page’s own row · identity from the same section
6.0 tok/sdecode, median of five scored runsgemma4:12bnot statedOllama · 0.32.152026-08-25 (UTC)
gemma4:12bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token contextOllama's own default of 4 threadsnot statedtwo-hours-on-battery · the-one-table-to-remember · carried by hand, proved against that page’s own row · identity from the same page
25.6 stime to first token, median of five cold-prefix runsgemma4:12bnot statedOllama · 0.32.152026-08-25 (UTC)
gemma4:12bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token context536 prompt tokens, Ollama's own default of 4 threadsnot statedtwo-hours-on-battery · the-wait-prefill-is-the-real-cpu-tax · carried by hand, proved against that page’s own row · identity from the same page
12.7 tok/sdecode, median of five scored runsgemma4:26bnot statedOllama · 0.32.152026-08-25 (UTC)
gemma4:26bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token contextOllama's own default of 4 threadsnot statedtwo-hours-on-battery · the-one-table-to-remember · carried by hand, proved against that page’s own row · identity from the same page
11.4 stime to first token, median of five cold-prefix runsgemma4:26b (MoE)not statedOllama · 0.32.152026-08-25 (UTC)
gemma4:26b (MoE)not statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token context536 prompt tokens, Ollama's own default of 4 threadsnot statedtwo-hours-on-battery · the-wait-prefill-is-the-real-cpu-tax · carried by hand, proved against that page’s own row · identity from the same page
3.3 tok/sdecode, median of five scored runsmistral-small3.2:24bnot statedOllama · 0.32.152026-08-25 (UTC)
mistral-small3.2:24bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token contextOllama's own default of 4 threadsnot statedtwo-hours-on-battery · the-one-table-to-remember · carried by hand, proved against that page’s own row · identity from the same page
97.7 stime to first token, median of five cold-prefix runsmistral-small3.2:24bnot statedOllama · 0.32.152026-08-25 (UTC)
mistral-small3.2:24bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token context1,023 prompt tokens, Ollama's own default of 4 threadsnot statedtwo-hours-on-battery · the-wait-prefill-is-the-real-cpu-tax · carried by hand, proved against that page’s own row · identity from the same page
14.6 tok/sdecode, median of five scored runsnemotron-3.5-lightning:30b-a3bnot statedOllama · 0.32.152026-08-25 (UTC)
nemotron-3.5-lightning:30b-a3bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token contextOllama's own default of 4 threadsnot statedtwo-hours-on-battery · the-one-table-to-remember · carried by hand, proved against that page’s own row · identity from the same page
14.1 stime to first token, median of five cold-prefix runsnemotron-3.5-lightning:30b-a3b (MoE)not statedOllama · 0.32.152026-08-25 (UTC)
nemotron-3.5-lightning:30b-a3b (MoE)not statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token context532 prompt tokens, Ollama's own default of 4 threadsnot statedtwo-hours-on-battery · the-wait-prefill-is-the-real-cpu-tax · carried by hand, proved against that page’s own row · identity from the same page
5.2 tok/sdecode, median of five scored runsphi4:14bnot statedOllama · 0.32.152026-08-25 (UTC)
phi4:14bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token contextOllama's own default of 4 threadsnot statedtwo-hours-on-battery · the-one-table-to-remember · carried by hand, proved against that page’s own row · identity from the same page
35.4 stime to first token, median of five cold-prefix runsphi4:14bnot statedOllama · 0.32.152026-08-25 (UTC)
phi4:14bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token context505 prompt tokens, Ollama's own default of 4 threadsnot statedtwo-hours-on-battery · the-wait-prefill-is-the-real-cpu-tax · carried by hand, proved against that page’s own row · identity from the same page
9.1 tok/sdecode, median of five scored runsqwen3.5:9bnot statedOllama · 0.32.152026-08-25 (UTC)
qwen3.5:9bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token contextOllama's own default of 4 threadsnot statedtwo-hours-on-battery · the-one-table-to-remember · carried by hand, proved against that page’s own row · identity from the same page
16.0 stime to first token, median of five cold-prefix runsqwen3.5:9bnot statedOllama · 0.32.152026-08-25 (UTC)
qwen3.5:9bnot statedOllama · 0.32.152026-08-25 (UTC)
Q4_K_Ma 4,096-token context537 prompt tokens, Ollama's own default of 4 threadsnot statedtwo-hours-on-battery · the-wait-prefill-is-the-real-cpu-tax · carried by hand, proved against that page’s own row · identity from the same page

Power, temperature, and what it costs

1 row — same rule as above.

valuewhat was measuredmodelpower capruntimemeasurement window
51.1 GB/smemory bandwidth, best triadnot statednot stateda STREAM triad, gcc -O3 -march=native -fopenmp · version not stated2026-08-25 (UTC), 17:57–19:46Z
not statednot stateda STREAM triad, gcc -O3 -march=native -fopenmp · version not stated2026-08-25 (UTC), 17:57–19:46Z
not statednot stateda 2,289 MiB working set, best of 9 timed repsnot statedtwo-hours-on-battery · read-this-before-the-table-cpu-speed-is-a-memory-bandwidth · carried by hand, proved against that page’s own row · identity from the row itself

Where it appears

Every released exhibit that names this identity, in the shelf’s own order. A count beside an exhibit is how many of its figures are carried above — and it links them, because a number with no way back to what it counts is the thing this shelf exists against.

How this one is named here

The canonical name above is the full product name. Everything below is a spelling a published page or kit has actually used for it, kept so a reader who searches an older page’s words lands on this row. The set is closed and historical: no page cut after 2026-09-17 writes a memory class where it can write a card.

  • [mini PC that ran the two-hour battery test]
  • a Minisforum MS-01 mini PC
  • a mini PC with 32G RAM and a 12-core Intel processor
  • a mini PC with 32G RAM: 16 logical CPUs - 4 performance cores with hyperthreading (8 performance logical CPUs) plus 8 efficiency cores; hybrid Intel part; no discrete GPU at all
  • cpu-mini
  • the mini
  • the mini (32G)
  • this bench's mini rig
  • this bench's own mini PC

elsewhere in the workshop

a strata→signal property · hello@strata2signal.com · say hello