Memory limits, PERF profiles, and why OOMs don’t retry as-is
FIXES → A render freezing or killing a Mac overnight, or "renders over their memory budget" climbing.
01 Admission control, not observation
A 27.5GB MLX render reports 4.9GB to ps — “check free memory, then launch” is blind to the exact thing it gates on. So every job carries a declared cost and each Mac has a static budget (90% of installed RAM); a worker only claims what it can afford. The free-memory guard still exists, but as a courtesy, not the protection.
02 Leave PERF on auto
PERF=auto picks a profile from installed RAM: full is gated to 64GB Macs, everything smaller runs light (--low-ram, frame tiling, low priority). Heavy jobs simply wait for a Mac that fits.
in farm.conf · the default — leave it
PERF=auto 03 Retune from measurements, not guesses
Every finished render records its real peak. The app shows how many blew their budget — that’s the number to retune farm.conf against. When a job is memory-killed anyway, autopilot asks for a bigger Mac if the farm has one, otherwise re-queues it smaller — retrying an OOM at the same size just dies again.
Done when "Renders over their memory budget" sits at zero across a night, and no Mac gets dragged into swap while someone’s using it.