SPB Git

Repository Public

node-selection.md 1.8 KB

# Node selection

Decision: M5M36 (Mac Studio, M5 Max, 18 cores, 36 GB, 301 GB free).

# Criteria and evidence

Criterion M5M36 Why the alternatives lost
Always on Desktop Mac Studio, never sleeps, restarts after power loss, auto-login; 20 days uptime MacBooks (M4BP48, M4BP36, M3BA*) can leave the LAN or close their lid
No competing workload 0 PM2 processes, load ≈ 1.1 M3U96a (17 apps, load 11), M2U64 (load 23), M4M64a/b (10–11 apps), M3U96b (research compute + 87 GB disk left)
Does not disturb production nothing else to disturb every other large Studio hosts public sites
Capacity for ~12 concurrent Claude sessions + builds 18 fast cores, 24 GB free, 301 GB disk. A Claude Code session is ~0.3–0.6 GB resident; the heavy work it launches (LaTeX, Python, builds) is what consumes cores 16 GB minis are too tight once Postgres, the app and a few builds run; 8 GB minis are out
Network path already a WireGuard peer of the public gateway m4mc/m4ma/m4mb/m2m16 are not on the tunnel and lack runtimes
Runtimes Node 26, pnpm, PM2, git, Python, uv present —
Not the cluster gateway — M1M32 hosts no apps by policy

# Known trade-offs

  • 36 GB is the smallest memory among the Mac Studios. Heavy computation should be sent to bigger nodes through tasks (remote execution) rather than run locally; CR_MAX_SESSIONS defaults to 12.
  • Single host: if M5M36 is down, Claude Remote is down. Metadata is backed up nightly (see backup-recovery.md); moving to another node is an mld move plus re-authentication of Claude Code on the new node.
  • Storage is the internal SSD only; large research datasets stay where they are (e.g. the FinData lake on M3U96a) and are reached over SSH/HTTP from tasks, not copied.
Files main
Menu

Theme