Skip to content
C.W.K.
Stream
Lesson 05 of 06 · published

Nine Macs, One Household: This Quest's Laboratory

~15 min · map, fleet, laboratory, measurement, privacy

Level 0Spec-Sheet Skimmer
0 XP0/91 lessons0/19 achievements
0/100 XP to next level100 XP to go0% complete
"A benchmark from a machine you cannot name is a rumour. A benchmark from a machine you can ssh into is data."

The Machines

Every measured number in this quest comes from one of nine Macs in one household, read live on 2026-09-15 over ssh. They appear here by role alias — office, server, and so on — with chip, memory and job, and never by hostname, address or owner. That is a privacy rule and a teaching rule at once: what you need to interpret a number is the silicon and the load the machine was carrying, not where it lives.

AliasMachineChipCPUGPU coresMemoryRoleEvidence
officeMac StudioM3 Ultra24P + 8E80512 GBthe engines and the control planes; Pippa's homemeasured 2026-09-15
serverMac StudioM3 Ultra24P + 8E80512 GBthe inference hub: embeddings, reranking, image generation, a chat modelmeasured 2026-09-15
workerMac StudioM2 Ultra16P + 8E76192 GBleased jobs: media scans, transcoding, transcriptionmeasured 2026-09-15
musicMac StudioM2 Ultra16P + 8E76192 GBthe music studiomeasured 2026-09-15
macbookMacBook ProM5 Max6 super + 12 performance40128 GBthe main laptopmeasured 2026-09-15
pro2024MacBook ProM4 Max12P + 4E40128 GBlaptopmeasured 2026-09-15
pro2023MacBook ProM3 Max12P + 4E40128 GBlaptopmeasured 2026-09-15
airMacBook AirM34P + 4E1024 GBthe electronic drum kit's Macmeasured 2026-09-15
miniMac miniM4 Pro10P + 4E2064 GBthe music servermeasured 2026-09-15

All nine run macOS 26.6.2 and report a 16 KB page size. Every one of them ships the rdma_ctl tool, and on every one it reports disabled — which says nothing about whether the machine could use RDMA over Thunderbolt (that is a Thunderbolt 5 question, settled in the big-models track), only that nobody has turned it on.

Which Four Are the Lab, and Why

A measurement is only informative when one variable moves at a time. The plan picks four machines that make that possible:

  • office (M3 Ultra), pro2023 (M3 Max), air (M3) — three tiers of one microarchitecture. Same cores, same memory generation, same operating system; only the bus width, GPU count and capacity change. That is the ladder for "what does bandwidth buy".
  • music (M2 Ultra) — 800 GB/s against office's 819 GB/s, with the GPU one generation older. Nearly the same bandwidth, different GPU: the pair for "what does a GPU generation buy at fixed bandwidth". The other M2 Ultra, worker, would do as well, but it carries production jobs.

And the five that stay out: server is the inference hub the household's apps depend on — a benchmark that starves Pippa's retrieval is the unified-memory lesson learned the expensive way; worker is leasing jobs from the control plane; mini is streaming music; pro2024 would add an M4 point to nothing this quest measures; and macbook is an M5 Max, and the plan's rule is that the M5 generation appears as vendor claims only until it is measured deliberately, as its own evolve, rather than incidentally because it happened to be the machine the session ran on.

Read the Fleet Yourself

The code block is the script that produced the table: it runs the lesson-one card over ssh for each alias and prints one row per machine. Aliases come from your ~/.ssh/config; the script never needs to know a hostname. If you have one Mac, it prints one row — and that row is the first entry on the card you are keeping.

Code

fleet_table.py — one row per Mac, over ssh, by role alias·python
#!/usr/bin/env python3
"""Print a fleet table from ssh aliases. Aliases resolve in ~/.ssh/config;
this script never sees a hostname, and neither should a quest."""
import subprocess
import sys

ALIASES = sys.argv[1:] or ["office", "server", "worker", "music", "macbook",
                           "pro2024", "pro2023", "air", "mini"]

# One line per field. The cluster line reads hw.perflevelN.name for every level that
# exists, because the names move with the generation (M3: Performance + Efficiency;
# M5 Max: Super + Performance) -- a fixed P/E pair would mislabel the newest Mac.
REMOTE = (
    "sysctl -n machdep.cpu.brand_string; "
    "c=''; for n in 0 1 2 3; do name=$(sysctl -n hw.perflevel$n.name 2>/dev/null); "
    "[ -z \"$name\" ] && break; c=\"$c${c:+ + }$(sysctl -n hw.perflevel$n.physicalcpu) $name\"; done; echo \"$c\"; "
    "sysctl -n hw.memsize hw.pagesize; sw_vers -productVersion; "
    "system_profiler SPDisplaysDataType | awk -F': ' '/Total Number of Cores/ {print $2; exit}'"
)

print(f"{'alias':8} {'chip':10} {'CPU clusters':28} {'GPU':>4} {'GB':>4} {'page':>6}  macOS")
for alias in ALIASES:
    try:
        out = subprocess.run(["ssh", "-o", "BatchMode=yes", "-o", "ConnectTimeout=5", alias, REMOTE],
                             capture_output=True, text=True, timeout=30).stdout.split("\n")
        chip, clusters, mem, page, macos, gpu = (out + ["?"] * 6)[:6]
        print(f"{alias:8} {chip.replace('Apple ', ''):10} {clusters:28} {gpu:>4} "
              f"{int(mem) // 2**30 if mem.isdigit() else '?':>4} {page:>6}  {macos}")
    except (subprocess.TimeoutExpired, OSError) as exc:
        print(f"{alias:8} unreachable ({exc.__class__.__name__})")
Is RDMA over Thunderbolt enabled here? (it is a Recovery-mode switch)·bash
rdma_ctl status
# disabled        <- every Mac in this fleet, 2026-09-15
# The tool ships on every Apple silicon Mac, Thunderbolt 4 ones included.
# Its presence says nothing about eligibility; see the big-models track.

External links

Exercise

Open your Mac card for real now: a text file with one row per Mac you can reach, in the columns of the table above plus a "job" column in your own words. Then mark which rows could form a one-variable pair or ladder — same generation across tiers, or same bandwidth across generations — and which could not, and why. If you have exactly one Mac, write down which single published spec you would need a second machine to isolate.
Hint
Two laptops of different generations at the same tier (an M3 Max and an M4 Max, say) change memory technology AND GPU generation at once — an honest pair only if you accept that you cannot tell the two apart. The same tier in the same generation with different memory sizes is a capacity-only pair, and the memory track will want one.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.