manager: measured_vram_gb = FULL model footprint (GPU + offloaded), not the resident slice
Root cause of the persistent ~11 GB VRAM "base" and the big-clip OOMs: the video model's persisted measured_vram_gb was 0.296 GB — the tiny GPU-resident slice of an OFFLOADED load. With force_vram_update it overrode used_vram_gb=24.5, so ensure_vram_for(video) thought the model needed ~0 GB and NEVER evicted the idle Z-Image image model (~15 GB). That left ~11 GB resident; the video forward then needed ~10 GB on top → 21 GB → OOM. (The whole GPU is coderai's — that base was our own un-evicted model.) Fix (per directive): measured_vram_gb now represents the FULL model footprint — GPU-resident weights + the portion offloaded to host RAM + runtime reserve — i.e. placement-independent total memory the model needs. record_vram_delta computes it from the GPU delta PLUS the host-RAM delta (video path now passes ram_before), and force_vram_update persists that full number every run. So eviction/strategy provision for the real need and free room (evict the idle image model) for the forward. Also cleared the stale 0.296 from models.json so it falls back to used_vram_gb=24.5 until re-measured. Co-Authored-By:Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RdMufYvtTbtGDWsiZVoXce
Showing
Please
register
or
sign in
to comment