docs(dankclaw): record the 64 GiB host swapfile and its safe resize ordering

Raised /swap.img from 8 GiB to 64 GiB on Dankclaw. Host-level state with no
repo file, so it was invisible to the repo until now: fstab line 12 drives the
generated swap.img.swap unit, ext4, fallocated hole-free, swappiness 60,
zswap off. 748 GiB still free on /.

The reusable part is the ordering. The old file held 4 GiB of live pages and
MemAvailable read 73 GiB while only ~5 GiB was genuinely free -- the pinned
model weights are counted as reclaimable page cache, so the headline lies by
the size of the model. Swapping off before the replacement is online would have
pushed those pages into RAM that does not exist. Creating and enabling the new
swap first let them migrate instead: swapoff took 65 s and the host never
wobbled.

New page serverAppConfigs-docs/Dankclaw/Swap Configuration.md, linked from
the index, plus a pointer in the AGENTS.md memory-model section so nobody
reasons about headroom without checking swapon.

Old 8 GiB file staged at dankclaw:~/.AGENTTRASH/20260912-swapfile-8g/
pending approval to purge.
This commit is contained in:
Frank
2026-09-12 22:03:24 -07:00
parent a45edbcc6d
commit 5dfcde6c8b
3 changed files with 145 additions and 0 deletions
+11
View File
@@ -662,6 +662,17 @@ GTT/SVM-backed. Trust rocm-smi and the runtime. Do not use `free` or
`dmidecode` for the GPU budget. They show the CPU-side carve-out. This is
intentional. Do not change it.
Host swap on Dankclaw is a **64 GiB** file at `/swap.img` (raised from 8 GiB
on 2026-09-12), fstab-driven via the generated `swap.img.swap` unit. It is
host-level state with no repo file, so it is invisible to `deploy.sh` — check
`swapon --show` before reasoning about headroom. It protects the co-tenants,
not frank-large: the ~68 GiB of pinned weights are not helped by swap, and
swapping the KV pool would be worse than the OOM it prevents. If you ever
resize it, **create and `swapon` the replacement before `swapoff` of the old
one** — otherwise the live pages must land in RAM, and `MemAvailable` overstates
what is there by the size of the model. Full procedure and caveats:
[[Swap Configuration]] (`serverAppConfigs-docs/Dankclaw/Swap Configuration.md`).
## Why
Direct edits on the remote drift from version control. Future agents will not